高校生で習う分野の中でも「仮定法」は最大クラスの単元だと言えます。

「ifがあるから仮定法」と考えると足元をすくわれてしまいますね。

直接法と仮定法

仮定法について語るには、直接法と仮定法の違いについて述べるのが良いでしょう。

直接法例文①:If she listens to her parents,she won’t get into trouble.

訳文:もし彼女が両親の言うことを聞けば彼女はトラブルに巻き込まれずに済むだろう。

仮定法例文②:If he was at home,he would help me with my homework.

訳:もし彼が家にいたら、彼は私の宿題を手伝ってくれただろうに。

①と②の違いがお分かりになるでしょうか?

簡単に言えば①は実現可能ですが②は実現不可能です。

①の例文では彼女は両親の言うことを聞くのが可能となっているのに対し、②の例文では彼は家にいないので宿題を手伝ってくれることはありません。

「仮定法」とは実現不可能なことについて述べる文字通り仮定の話を表す文法なのです。

ですので、ifがあるからと言って必ずしも仮定法になるとは限りません。

ifがなくても仮定法は成立しますし、むしろif節の後に使われる助動詞の過去形の方が重要であったりします。

仮定法過去

 

例文:If I were a cat,I would spend all day sleeping.

訳文:私が猫だったら1日中寝て過ごすのになぁ。

 

英文法は名前がややこしい文法事項が多々あるのですが、仮定法過去はその最たるものですね。

「仮定法過去」という名前ですが、時制は現在です。

そしてそこがポイントです。

「仮定法」というのは前述の通りあり得ないことを表す言葉なので、時制をおかしくしている訳です。

本来現在形で表すべきところに過去形をあえて使うことで「仮定の話」だということを強調している訳ですね。

なのでもう1度言いますが「仮定法過去」は現在の話です。

仮定法では時制を1つ前にずらすのだということを覚えておけば理解が早まります。

 

仮定法過去完了

 

例文:If I had had more time,I could have checked my report again.

訳文:もし私にもっと時間があったら、もう一度レポートをチェックすることが出来たのに。

 

「仮定法」は実際の時制よりも1つ前の時制を表すということを前述いたしましたが、過去のことを表したい場合は1つ前の時制である「大過去」を表すために過去完了形を利用します。

例文では「had had」という気持ちの悪い形が出来ていますね。

後半の文章も助動詞+have+過去分詞形という所謂「助動詞の過去形」を使っており、この辺りは注意が必要です。

 

wishを使った仮定法

 

例文①:I wish my father hadn’t sold his car.

訳文:私は父が車を売らなければよかったのにと思う。

例文②:He wishes she lived next door to him.

訳文:彼女が隣に住んでいればと彼は思っている。

 

このあたりは少々難しいです。

「wish」を使った文章は「~ならなぁ、~だったらなぁ」という実現不可能な願望を表します。

注意すべきは「wish」のあとの時制です。

例文①では「過去」のことを表しているので「仮定法過去完了」を使います。

例文②では「現在」のことを表しているので「仮定法過去」を使います。

あくまで「wish」とそれに続く文章との時制の差が重要になります。

 

例文③:He wished he had bought those shoes the day before.

訳文:彼は前日それらの靴を買っておけばよかったと思った。

 

このように「wish」が過去で続く文がさらに過去の場合は例文③のような文章になります。

as ifを使った仮定法

 

例文①:She looked as if she had eaten nothing all day.

訳文:彼女はまるで1日中何も食べていないように見えた。

例文②:He talks as if he knew everything.

訳文:彼はまるですべてを知っているかのように話す。

 

基本的な原理は「wish」の時と同じです。

as ifよりも前の文章と後の文章の時制によって文章が決まります。

例文①のように前が過去なら後ろは大過去に、例文②のように前が現在形なら後ろは過去形になります。

仮定法は本来の文法の用法と異なる使い方をすることによってあり得ないということを表す文法事項です。

 

未来のことを表す仮定法

 

例文①:If you were to die tomorrow,what would you eat for your last dinner?

訳文:もしあなたが明日死ぬとしたら、最後に何が食べたいですか?

例文②:If the volcano should erupt,our town would be covered in ash.

訳文:もし万が一火山が噴火したら、私たちの街は灰に包まれるであろう。

 

未来のことを仮定する場合は

 

① 「were to」を使う

② 「should」を使う

 

という2種類の用法があります。

①は必ずしも実現不可能という訳ではない時に、②はかなり実現の可能性が低い場合に使います。

文の後半では他の仮定法と同様助動詞の過去形を使っていることに注意です。

 

ifを使わない仮定法

ifを使わないと言っても、大体が省略されている形です。

 

例文①:Were I you,I would tell her my feelings.

訳文:もし私があなただったら、彼女に自分の気持ちを打ち明けるけどな。

 

「If I were you」と言う部分を「Were I you」という形に省略したものになります。

他にも「If I had~」を「Had I~」などifを省略した形が存在しています。

他にもifではなく代わりの語句が使われることがあります。

 

例文②:Without the money,I couldn’t have paid rent.

訳文:もしお金がなかったら、私は家賃を払うことができなかっただろう。

 

ifの代わりに以下の文言を使うことが出来ます。

 

・without~(but for~) 「もし~がなかったら」

・with~ 「もし~があったなら」

・otherwise~ 「もしそうでなければ」

・It is time~ 「もう~しても良い頃だ」

・If only~ 「~でありさえすれば」

 

いずれの場合も仮定法過去および仮定法過去完了のルールが適用されます。