仮定法過去は現在の事実、仮定法過去完了は過去の事実とは異なること、起こりそうにないことを述べるときに使われます。
ifを使った基本的な仮定法過去と過去完了の英文の作り方を確認し、問題を解いてみましょう。
仮定法(過去・過去完了)と直説法の違い
まず下の2つの文を見てみましょう。
・If it rains tomorrow, I’ll stay at home all day.(明日雨なら、1日中家にいるつもりだ。)
・If I were a bird, I would fly to you.(私がもし鳥なら、あなたのところまで飛んでゆくのに。)
上の文は直説法で下の文は仮定法と呼ばれています。上の文は if 節で現在形になり、下の文では過去形を使っています。(主語が I なのに were を使っているのは仮定法独特の表現です)
直説法では「明日雨ならば」という実際にあり得るような条件を述べていますが、仮定法では実際にはありえないことが現在起こったらと仮定で述べています。
・雨が降る → あり得ることだから直説法
・鳥になる → あり得ないこと、事実に反することだから仮定法
仮定法では現在のことを述べたいときに仮定法過去を使い、過去のことを述べたければ仮定法過去完了を使います。
仮定法過去【基本】
「もし~なら」と現在の事実と反することを仮定で述べるときに仮定法過去が使われます。
仮定法過去形では if節は過去形、主節は助動詞の過去形が使われます。
If+主語+過去形, 主語+助動詞過去形+動詞原形~
※主節 + if節 の順でも良いです。
仮定法では主語にかかわらずbe動詞は were がよく使われます。
主節の助動詞(過去形)には would, could, might などが使われます。
仮定法過去の例文を見てみましょう。
・If he were rich, I would be happy.(もし彼がお金持ちなら、私は幸せだろう。)
・If I had much money, I could buy a Chanel bag.(お金がもっとあれば、シャネルのバッグが買えるのに。)
仮定法過去完了【基本】
「もし~だったら」と過去の事実と反することを仮定で述べるときに仮定法過去完了が使われます。
仮定法過去形では if節は過去完了形、主節は助動詞過去形+have+過去分詞が使われます。
If+主語+過去完了形, 主語+助動詞過去形+have+過去分詞~
※主節 + if節 の順でも良いです。
主節の助動詞(過去形)には 仮定法過去同様、would, could, might などが使われます。
仮定法過去完了の例文を見てみましょう。
・If you had got up early, you wouldn’t have been late.(早起きしていれば、遅刻しなかっただろう。)
・If I had studied harder, I could have passed the entrance exam.(もっと一生懸命勉強していれば、入試に受かることができだろうに。)
・If I had had time, I might have visited the temple.(時間があったら、その寺を訪れたかもしれない。)
if 節の had につられて、主節の方まで had を使わないようにしましょう。
仮定法過去完了と仮定法過去の混合型
if節が仮定法過去完了(過去のこと)、主節が過去(現在のこと)になることもあります。
・If I had finished the report yesterday, I would be free now.(もし昨日そのレポートを仕上げていれば、今ひまだろう。)
仮定法過去と過去完了の使い分け
仮定法を使って英文を作るとき、慣れるまでは過去と過去完了どちらにすれば良いか、迷うかもしれません。現在の事実に反した仮定なのか、過去の事実に反しての仮定なのか、時制に気をつければ良いです。
次の日本語の文を if を使って英文にしてみましょう。
もし私が十分なお金があれば、家を買うのに。
現在の事実に反した仮定ですので、仮定法過去を使います。
If I had enough money, I would buy a house.
次の日本語の文も、 if を使って英文にしてみましょう。
もっと早く駅に着いていたら、終電に間に合っただろうに。
実際には間に合わなかったことがうかがえますね。過去の事実と反することを述べているので、仮定法過去完了を使って文を作ります。
If I had arrived at the station earlier, I would have caught the last train.
【問題編】仮定法過去・過去完了の基本
問1 日本文に合うように、( )内に適切な英語を入れましょう。
(1) もし私が君なら、彼女に電話するだろう。
If I( )you, I would call her.
(2) もし私がお金持ちなら、スポーツカーを買えるのに。
If I were you, I ( )( )a sports car.
(3) もし彼女がその事実を知っていたら、そこには行かなかっただろう。
If she ( )( )the fact, she ( )( )( ) there.
(4) もし君が僕のアドバイスを聞き入れていたら、君は成功していただろうに。
If you ( )( )my advice, you ( )( )( ).
※~のアドバイスを聞き入れる take someon’s advice
(5) もし学生時代英語をもっと一生懸命勉強していれば、今ごろこんなに苦労していないだろうに。
If I( )( )English harder in college, I ( )( )such a difficulty in English now.
問2 次の日本文に合うように、[ ]内の英語を並べ替えましょう。
(1) 彼女の電話番号を知っていれば、彼女に電話するのに。
[her, I, if, I, call, knew, would, phone number, her]
(2) もし彼がそこにいたなら、手伝ってくれたろうに。
[would, had, helped, if, he, he, have, been, you, there]
まとめ
if を使った仮定法過去・過去完了の基本について確認してきましたが、いかがでしたでしょうか。
現在の事実に反した仮定が仮定法過去、過去の事実に反した仮定が仮定法過去完了になります。
仮定法過去では if 節が過去形、主節が過去の助動詞+動詞の原形、仮定法過去完了では if 節が過去完了で、主節が過去の助動詞+have+過去完了、という基本の形をまずは覚えておきましょう。
関連記事:願望の仮定法まとめと問題