仮定法過去|例文や時制・直説法との違いも解説

仮定法」とは、事実に反することや、実現する可能性が低いことを表す動詞の形のことです。

例えば、仮定法では「現在の事実に反すること」を動詞の過去形で表しますが、このように時制を過去にずらすことで「現実との距離感」が生まれ、「現実の話ではない」ことを相手に伝えることができます。

この記事では、「現在の事実に反すること」を表す「仮定法過去」について詳しく見ていきます。

仮定法と直説法

仮定法が「事実に反すること」や「実現する可能性が低いこと」を表すのに対し、「現実」や「現実にあり得ること」を表す表現法を「直説法」といいます。

両者の違いを次の例で見てみましょう。

(1) I have time, so I can watch TV.
私は時間があるので、テレビを見ることができる。

(2) If you have time, you can watch TV.
もし時間があれば、テレビを見てもいいよ。

(3) If I had time, I could watch TV.
もし時間があれば、テレビを見られるのに。
(→ 実際には時間がないので、テレビを見られない)

(1)は「現実」、(2)は「現実にあり得ること」を述べた文なので、直説法である現在形 (have, can) が使われています。

一方、(3)は事実に反する仮定を表した文なので、仮定法である過去形 (had, could) が使われています。

(2)のように、if を使った文でも直説法になる場合があるので注意してください。

仮定法の基本形

上の例文(3)のように、仮定法の文は基本的に「if節」と「主節」から構成されます。

下の表は、それぞれの節における動詞・助動詞の形を示したものです。

if節の動詞 主節の助動詞 + 動詞
仮定法過去 過去形
(be動詞は were)
助動詞の過去形* + 動詞の原形
仮定法過去完了 過去完了形 助動詞の過去形 + have + 過去分詞
仮定法未来 were to + 動詞の原形 /
should + 動詞の原形
助動詞の過去形 + 動詞の原形 /
will + 動詞の原形 /
命令文

*「助動詞の過去形」は would, could, might を指します。(「仮定法過去」では should が使われることもあります。)

if を使わない仮定法については、こちらの記事で詳しく解説しています。

仮定法過去

仮定法過去は「現在の事実に反すること」や「現時点で実現する可能性が低いこと」を表します。〈if節 + 主節〉という形の場合、「もし〜ならば … だろうに」という意味を表します。

上の表で示したように、if節では動詞の過去形を使い、主節では〈助動詞の過去形 + 動詞の原形〉を使います。

(4) If he were here, he would help us.
もし彼がここにいれば、私たちを手伝ってくれるだろうに。
(→ 実際にはここにいないので、手伝ってくれない)

(5) If I had enough money, I would travel around the world.
もし十分なお金があれば、世界旅行をするのに。
(→ 実際にはお金がないので、世界旅行をすることはない)

(4)の if節では、主語が he であるにもかかわらず be動詞の were が使われていますが、これは「仮定法過去では be動詞は were を用いる」という原則のためです。(ただし、口語では was が使われることもあります。)

主節で使われる助動詞の過去形については、通常は「~だろうに」を意味する would が使われますが、「~できるのに」という意味の場合は could、「~かもしれないのに」という意味の場合は might が使われます。

(6) If I were a bird, I could fly to you.
もし私が鳥なら、あなたの元へ飛んでいけるのに。

(7) If she tried harder, she might be successful.
彼女はもっと努力すれば、成功するかもしれないのに。

イギリス英語では、主語が1人称 (I / we) の時に would の代わりに should を使うことがあります。

(8) If I were you, I should get another lawyer.
もし私があなたなら、別の弁護士を雇うのに。

直説法への書き換え

仮定法過去の文の内容は、次のように直説法で表すことができます。

仮定法過去 → 直説法
  • If I had time, I could go to the movies.
    もし時間があれば、映画を観に行けるのに。

    Because I don’t have time, I cannot go to the movies.
    = I don’t have time, so I cannot go to the movies.
    私は時間がないので、映画を観に行けない。


  • If it weren’t raining, we could play tennis.
    もし雨が降っていなければ、私たちはテニスができるのに。

    Because it is raining, we cannot play tennis.
    = It is raining, so we cannot play tennis.
    雨が降っているので、私たちはテニスができない。

仮定法過去の文を直説法に書き換える場合は、次の2点に注意してください。

① 肯定の表現を否定に、否定の表現を肯定に変える。
② 直説法の文では、動詞・助動詞の現在形を用いる。

if節と主節で時制が異なる仮定法

(9) If I had met her then, we might be married now.
もしその時彼女に会っていたら、現在私たちは結婚しているかもしれない。
(→ 実際にはその時彼女に会っていなかったので、現在彼女とは結婚していない)

(10) If I liked her, I would have driven her home.
もし彼女のことが好きだったら、(あの時)車で家まで送っていただろう。
(→ 実際には彼女のことが好きではないので、車で家まで送らなかった)

(9)では、if節で「過去の事実に反すること」、主節で「現在の事実に反すること」が述べられています。このような場合、if節では「仮定法過去完了」を、主節では「仮定法過去」を用います。

(10)では、if節で「現在の事実に反すること」、主節で「過去の事実に反すること」が述べられています。このような場合は、if節で「仮定法過去」を、主節で「仮定法過去完了」を用います。

なお、仮定法過去完了についての詳しい解説は、こちらの記事をご覧ください。

仮定法過去を使った慣用表現

wish + 仮定法過去

wish + 仮定法過去〉は「現在の事実に反する願望」を表します。

(11) I wish he were here.
彼がここにいればなあ。
(→ 実際は彼がいなくて残念)

(12) I wish I could buy a car.
車が買えればなあ。
(→ 実際は車が買えなくて残念)

wish を使った仮定法については、こちらの記事で詳しく解説しています。

as if + 仮定法過去 / as though + 仮定法過去

as if [though] + 仮定法過去〉は「(実際はそうではないのに)まるで~であるかのように」という意味を表します。

(13) He talks as if [though] he knew everything.
彼は(実際はそうではないのに)まるで何でも知っているかのように話す。

as if を使った仮定法については、こちらの記事で詳しく解説しています。

would rather + 仮定法過去

would rather + 仮定法過去〉 は「むしろ~であればいいのだが」という意味を表します。仮定法を使うことで、希望を控えめに伝えることができます。

(14) I’d [I would] rather he went out today.
今日は彼が出かけてくれればいいんだが。

if only + 仮定法過去

if only + 仮定法過去〉は「現在の事実に反する願望」を表します。「~でありさえすればなあ」という意味で、 “I wish ~” よりも強い願望表現になります。

(15) If only I could buy a car.
= If I could only buy a car.
車が買えさえすればなあ。
(→ 実際は車が買えなくて残念)

it’s time + 仮定法過去

it’s time + 仮定法過去〉は「もう~してもよいころだ」という意味を表します。仮定法を使うことによって、「本来すべきことをまだしていない」というニュアンスになります。

なお、time の前に high をつけると「とっくに~する時間だ」、about をつけると「そろそろ~する時間だ」という意味になります。

(16) It’s high time you were in bed.
もうとっくに寝る時間ですよ。

if it were not for ~

if it were not for ~” は「もし~がなければ」という意味で、「現在の事実に反する仮定」を表します。

なお、この表現は without / but for で書き換えることができます。

(17) If it were not for [Without / But for] your help, he would not be able to succeed.
もしあなたの援助がなければ、彼は成功できないだろう。
(→ 実際は援助があるので成功できるだろう)

なお、if it were not for ~ では if を省略することができ、その場合は倒置が起こります。

(17’) Were it not for your help, he would not be able to succeed.

練習問題

最後に練習問題を解いてみましょう。

練習問題

次の文を仮定法を用いて書き換えなさい。

1.Because I don’t have a camera, I cannot take a picture of this flower.

2.I am asking because I don’t understand what you are saying.

3.Because I didn’t catch that plane, I am alive now.

解答

1.If I had a camera, I could take a picture of this flower.

2.I wouldn’t be asking if I understood what you are saying.

3.If I had caught that plane, I wouldn’t be alive now.

「仮定法過去」という名前については、if節で動詞の「過去形」を使い、主節で助動詞の「過去形」を使う文型と理解してください。