「直接法」、「仮定法過去」、「仮定法過去完了」の基本をまとめました。仮定法は、日本語でも「~だったら」と過去を連想させる「た」を用いて表現します(文法的には過去形ではありませんが)。そう考えると、英語の仮定法も、現在のことだけど、過去形を使う感覚が身近なものに感じられるかもしれません。
英語圏の英文法書では、仮定法を Conditional という条件文として、Zero/First/Second/Third Conditional と4つの条件文に分類しています。これらも合わせて見てみると理解が深まると思います。
もし、なにかが起こった場合、あることが確実に起こる、または、起こると信じていることを、表す場合に使います。
仮定法現在形という if + 原型 を使う形もありますが、現在では慣用句や格式張った文章を除いて、直接法 if + 現在形 を使うのが一般的です。
if + 現在形 …, 現在形 …
一般常識や科学的な事実など、広く認識されている事柄に使います。英文法では Zero Conditional と呼ばれています。
If it rains, the road gets wet.
もし、雨が降れば、道は濡れる
If ice is heated, it melts.
もし、氷を温めると、溶ける
もし、将来 if 節のことが起こった場合、話し手が信じていることが起こる、また、なにか行う意思があることを表します。英文法では First Conditional と呼ばれています。
if + 現在形 … , will (can, shall, may) + 現在形 …
If it rains tomorrow, we won’t go to the beach.
もし、明日 雨が降れば、ビーチにはいかない
If I win the lottery, I will buy a house.
もし、宝くじにあたっらた、家を買うでしょう
文法書には、主節に will, can を使うと記載されていますが、丁寧、婉曲的な表現として、would, could を使うこともあります。特に口語ではよく使われています。
If it rains, I would go tomorrow.
もし、明日 雨が降れば、私は行かないでしょう
If the article is totally false, it wouldn’t be first time.
もし、記事が完全に間違っていたとしても、それは初めてのことではないでしょう
もし、現在の事実と違うことが起これば、こうなるだろうという仮定する場合に使います。話し手は、if 節で仮定していることが起こることは、あり得ない、もしくは、可能性は低いと思っています。英文法では Second Conditional と呼ばれています。
if + 過去形 … , would (could, should might) + 現在形 …
起こり得ないことが起こったら、という願望の話をするときに使います。話し手は、完全な架空の話であると考えています。
If I were a bird, I would fly to you.
もし鳥だったら、あなたのところに飛んでいくのに
(鳥でないので、飛んでいけない)
If I were president of the United States, I would change the world.
もしアメリカの大統領だったら、世界を変えれるのに
(大統領でないので、変えれない)
今の状況と違うことが起これば、という仮定の話をするときに使います。現実には、if 節のことが起こる可能性は少ないので、仮定の話が起こることが、ほとんどないと、話し手は考えています。
If I knew her address, I would visit her.
もし、彼女の住所を知っていたら、彼女を訪問するのだが
(知らないので、今はできない)
If Sara was a good girl, she would not eat a donut hidden in the shelf.
もし、サラが良い子なら、棚の中に隠したドーナッツを食べないだろう
(サラは良い子でないので、食べてしまう)
I could pass the exam if I studied.
勉強すれば、試験に受かるだろう
(勉強しないので、受からない)
条件文と 仮定法過去 の文と比較
最初の条件文 は、実際に「時間がある」ことが起こることを想定しています。それに対して、次の仮定法過去 は、ほとんど「時間がある」可能性はなく、もし仮に起来たときのことを仮定しています。
If I have enough time, I will help my mother.
もし、十分な時間があれば、母を手伝う
(時間があるときには、手伝う)
If I had enough time, I would help my mother.
もし、十分な時間があったなら、母を手伝うでしょう
(時間がないがないので、母を手伝うことができない)
最初の条件文 は、楽観的に「宝くじが当たる」ことを5分5分くらいに想像しています。それに対して、仮定法過去は、当たることはないけど、万が一「宝くじが当たった」ときのことを仮定しています。
If I win the lottery, I will buy a house.
もし、宝くじにあたったらた、家を買います
(宝くじに当たったら、家を買う)
If I won the lottery, I would buy a house.
もし、宝くじにあたったとしたら、家を買うのだが
(宝くじに当たる可能性は少ないので、家は買えない)
過去の事実の逆や願望が実現した場合、こうなったであろうという推定や願望を述べる場合に使います。仮定法過去完了と呼ばれている文法です。英文法では Third Conditional と呼ばれています。
if + 過去完了… , would (could, should might) 過去分詞 …
過去の事実と違うことが起こったとすれば、違う結果になっていたという仮定の話をするときに使います。
If I had known her address, I would have visited her.
もし、彼女の住所を知っていたら、彼女を訪問したのだが
(知らなかったので、できなかった)
If he had gotten up early, he would have arrived in time.
もし、彼が早く起きていたら、間に合っていただろう
(起きなかったので、間に合わなかった)
If Sara had been a good girl, she would have not eaten a donut hidden in the shelf.
もし、サラが良い子なら、棚の中に隠したドーナッツを食べなかっただろう
(サラは良い子ではなかったので、食べてしまった)
過去の状況と違うことが起こったとすれば、今、こうなっているだろう、という仮定の話をするときに使います。過去の結果が今に影響していることを強調しています。if 節 が 仮定法完了形で、帰結節が 仮定法過去形 を組み合わせた形を取ります。
if + 過去完了… , would (could, should might) + 現在形 …
If I had worked hard, I would be successful now.
もし、一生懸命働いていたら、成功していただろう
(一生懸命働いてないので、成功していない)
If I had studied English harder then, I would be able to speak English now.
もし、一生懸命英語を勉強していたら、英語を喋れるようになっていただろう
(一生懸命働いていないので、喋れない)
Villagers would still be using lamps, had they waited for the government to bring them electricity.
もし、政府が電気を通すのを待っていたら、多くの村人は未だにランプを使っていただろう
(政府を待たなかったので、電気が通っている)