仮定法
時制を1つ過去にずらす = 事実とちがうこと・ありえないことを仮定する
1仮定法とは
仮定法は、事実とちがうことや実際には起こりそうもないことを仮定して話す形です。動詞の時制を1つ過去にずらすことで、「現実ではない」ことを表します。ふつうの条件の文(直説法)とくらべてみましょう。
If it rains tomorrow, I will stay home.
明日雨が降ったら、家にいます。
If I were a bird, I would fly to you.
もし私が鳥なら、あなたのところへ飛んでいくのに。

仮定法過去では、be動詞は主語に関係なく were を使うのが基本です(話し言葉では I / he / she などに was も使われます)。
2仮定法過去:今の事実の反対
〈If + 主語 + 過去形, 主語 + would / could / might + 原形〉で、「(今)もし〜なら、…だろうに」と、今の事実とちがうことを表します。
If I knew her number, I would call her.
彼女の番号を知っていれば、電話するのに。(実際は知らない)
If I had more time, I could travel abroad.
もっと時間があれば、海外旅行ができるのに。
If I were you, I would accept the offer.
私があなたなら、その申し出を受けるでしょう。
What would you do if you won a million yen?
もし100万円が当たったら、あなたはどうしますか。

3仮定法過去完了:過去の事実の反対
〈If + 主語 + had + 過去分詞, 主語 + would / could / might have + 過去分詞〉で、「(あの時)もし〜だったら、…だっただろうに」と、過去の事実とちがうことを表します。
| if の節 | 主節 | 意味 | |
|---|---|---|---|
| 仮定法過去(今の反対) | If + 過去形 | would + 原形 | もし〜なら、…だろうに |
| 仮定法過去完了(過去の反対) | If + had + 過去分詞 | would have + 過去分詞 | もし〜だったら、…だっただろうに |

If I had left earlier, I would have caught the train.
もっと早く出ていたら、電車に間に合ったのに。
If it hadn't rained, we could have played outside.
雨が降っていなかったら、外で遊べたのに。
If you had told me, I might have helped you.
言ってくれていたら、手伝ってあげたかもしれないのに。
4過去と今を組み合わせた形
「(あの時)もし〜していたら、(今)…だろうに」のように、if の節は過去の事実の反対、主節は今の事実の反対、という組み合わせもあります。
If I had taken the medicine, I would feel better now.
あの時薬を飲んでいたら、今ごろ気分がよくなっているだろうに。
If he had studied harder, he would be a college student now.
もっと勉強していたら、彼は今ごろ大学生だろうに。

5I wish / as if / It's time
I wish は「〜ならいいのに」、as if は「まるで〜のように」、It's time + 過去形 は「もう〜する時間だ(まだしていない)」です。どれも仮定法の時制を使います。
| 表現 | 今のこと | 過去のこと |
|---|---|---|
| I wish | I wish + 過去形(〜ならいいのに) | I wish + had + 過去分詞(〜だったらよかったのに) |
| as if | as if + 過去形(まるで〜であるかのように) | as if + had + 過去分詞(まるで〜だったかのように) |

I wish I could speak French.
フランス語が話せたらいいのに。
I wish I had studied harder.
もっと勉強しておけばよかった。
He talks as if he knew everything.
彼はまるで何でも知っているかのように話す。
She looked as if she had seen a ghost.
彼女はまるでゆうれいでも見たかのような顔をしていた。
It's time you went to bed.
もう寝る時間ですよ。
6if を使わない仮定法
if の節のかわりに、Without 〜(〜がなければ)や If it were not for 〜 を使ったり、if を省いて語順を入れかえたり(倒置)することもあります。倒置は書き言葉でよく使われます。
Without your help, I couldn't finish this work.
あなたの助けがなければ、この仕事は終えられないだろう。
If it were not for water, no living things could survive.
もし水がなければ、どんな生き物も生きられないだろう。
Without the new seawall, the town would have been flooded.
新しい防潮堤がなかったら、町は浸水していただろう。
Had I known the truth, I would have told you.
本当のことを知っていたら、あなたに話したのに。(= If I had known …)
If you should have any questions, please call us.
万一ご質問がありましたら、お電話ください。
- without 〜 / but for 〜(〜がなければ・〜がなかったら)
- if it were not for 〜((今)〜がなければ)
- if it had not been for 〜((あの時)〜がなかったら)
- otherwise(そうでなければ)
7よくある間違い
| × | ○ | ポイント |
|---|---|---|
| If I would have time, I would go. | If I had time, I would go. | if の節に would は使わない |
| If I had known, I would come.(過去のこと) | If I had known, I would have come. | 過去の反対は would have + 過去分詞 |
| I wish I can swim. | I wish I could swim. | I wish のあとは過去形 |
| If it is not for water, … | If it were not for water, … | 仮定法なので were |
| It's time you go to bed. | It's time you went to bed. | It's time のあとは過去形 |
ニュースでは、Officials said the damage could have been much worse if residents had not evacuated early.(住民が早めに避難していなければ、被害ははるかに大きくなっていたかもしれないと当局は述べた)のように、仮定法過去完了で「もし〜していなかったら」を伝えることがあります。
8確認問題
( )の動詞を適切な形にしなさい。If I( have )a car, I would drive you home.
答えを見る
had
今の事実の反対なので過去形です。
( )に入る語句を選びなさい。If you had come to the party, you( would enjoy / would have enjoyed )it.
答えを見る
would have enjoyed
過去の事実の反対なので would have + 過去分詞です。
( )の動詞を適切な形にしなさい。I wish I( be )taller.
答えを見る
were
I wish のあとは仮定法過去で、be動詞は were が基本です。
ほぼ同じ意味になるように書きかえなさい。If I had known his address, I would have written to him. → ( )I( )his address, I would have written to him.
答えを見る
Had / known
if を省いて Had を主語の前に出す倒置の形です。
英語にしなさい。「あなたの助けがなければ、私は試験に合格できなかっただろう。」(Without で始めて)
答えを見る
Without your help, I couldn't have passed the exam.
過去のことなので couldn't have + 過去分詞です。
9ニュースで出てきた仮定法
この単元に関係する英文がニュースに出てきたら、ここに自動で追加されます。