← 文法解説一覧に戻る

仮定法過去

現在の事実と違うことを「もし〜なら」と想像する言い方です。動詞を1つ過去にずらすことで、現実ではないという合図を送ります。

仮定法の正体は「時制をわざとずらすこと」です。現在の話をしているのに過去形を使うことで、「これは現実ではありません」という合図を送っています。日本語には同じ仕組みがないため、時制のズレを意識的に読み取る必要があります。

なぜ過去形を使うのか

過去形は「今から遠い」ことを表します。時間的に遠い(過去)から転じて、現実から遠い(ありえない)ことを表すのに使われます。距離を表す道具だと考えてください。

1つずらすのが仮定法過去

現在の話 → 過去形にずらす。これが仮定法過去です。「今もし〜なら」という現在の想像を表します。

if節と主節で形が決まっている

if節は過去形、主節は would/could/might + 動詞の原形。この組み合わせが崩れると仮定法になりません。セットで覚えてください。

If + S + 動詞の過去形 〜, S + would/could/might + 動詞の原形

見分け方

同じ if でも、仮定法と単なる条件文はまったく別物です。見分ける手順はこうです。

1. if節の動詞が過去形か

現在の話をしているのに過去形なら、時制がずれています。仮定法の可能性が高いと判断できます。

2. 主節に would / could / might があるか

仮定法過去の主節は必ず助動詞の過去形を伴います。will や can なら仮定法ではありません。

3. 内容が事実に反しているか

「今そうではない」ことを言っているかを確かめます。事実と違えば仮定法で確定です。

正体判断の根拠
If it rains tomorrow, we will stay home.条件文(直説法)現在形 rains + will。実際に雨が降る可能性があり、事実に反していない。
If I had money, I would buy a car.仮定法過去過去形 had + would。「今お金がない」という現在の事実に反している。
If I had had money, I would have bought a car.仮定法過去完了過去完了 had had + would have。「あのときお金がなかった」という過去の事実に反している。
If you finished the report, please send it.条件文(直説法)過去形だが、実際に終わったかを問う条件。主節に would がなく、事実に反してもいない。

用法別の例文

仮定法過去は if 文以外にもいくつかの形で現れます。形ごとに代表例を押さえてください。

基本形(If 〜 would)

現在の事実と違うことを想像する、最も基本的な形です。

If I had more time, I would learn another language.

もっと時間があれば、別の言語を学ぶのだが。

実際は時間がない。

If she were here, she would know what to do.

彼女がここにいれば、どうすべきか分かるだろうに。

実際は彼女はいない。 be動詞は主語が I や he でも were を使うのが原則です。

If I knew his address, I could write to him.

彼の住所を知っていれば、手紙を書けるのに。

実際は住所を知らない。

I wish(〜ならいいのに)

if を使わずに、実現しない願望を表します。wish の後ろが過去形になります。

I wish I could speak French.

フランス語が話せたらいいのに。

実際は話せない。

I wish it were Friday today.

今日が金曜だったらいいのに。

実際は金曜ではない。

as if / as though(まるで〜のように)

事実に反するたとえを表します。後ろが過去形になります。

He talks as if he knew everything.

彼はまるで何でも知っているかのように話す。

実際は知らない。

She acts as if she were the boss.

彼女はまるで自分が責任者であるかのように振る舞う。

実際は責任者ではない。

if を使わない形

書き言葉やビジネス文書で頻出します。if がなくても仮定法だと見抜けるようにしてください。

Without your help, I would fail.

あなたの助けがなければ、私は失敗するだろう。

If it were not for your help, ... Without / But for は「〜がなければ」を表します。

Were I in your position, I would accept the offer.

私があなたの立場なら、その申し出を受けるだろう。

If I were in your position, ... if を省略すると were が文頭に出て倒置します。

A wise person would not say such a thing.

賢い人ならそんなことは言わないだろう。

If he were a wise person, ... 主語そのものが条件を含んでいます。

演習問題(ステップ解説)

例題1: 仮定法か条件文かを見分ける

If I were you, I would apologize immediately.

  1. if節の動詞が were と過去形になっています。しかし話しているのは現在のことです。時制がずれています。
  2. 主節に would があります。will ではなく would です。
  3. 「私はあなたではない」という現在の事実に反しています。
  4. 以上3つがそろったので仮定法過去です。「私があなたなら、すぐ謝るだろう」という意味になります。

if節が過去形、主節が would、内容が事実に反する。この3つがそろえば仮定法過去です。

例題2: 空所に入る形を決める

If I ( ) rich, I would travel around the world.

  1. 主節に would + 動詞の原形があります。よって仮定法過去だと分かります。
  2. 仮定法過去の if節は動詞の過去形です。be動詞なので was か were が候補になります。
  3. 仮定法では主語が I でも were を使うのが原則です。
  4. 答えは were です。会話では was も使われますが、試験では were が求められます。

仮定法の be動詞は主語を問わず were。これは大原則として覚えてください。

日本人が間違えやすいポイント

主節の助動詞を will にしてしまう誤りが最も多く出ます。× If I had money, I will buy a car. → ○ I would buy a car. if節を過去形にしたら、主節も必ず助動詞の過去形にそろえてください。片方だけずらしても仮定法にはなりません。

よく出るひっかけ問題

be動詞は主語を問わず were

If I were / If he were のように、主語が単数でも were を使います。会話では was も使われますが、試験や書き言葉では were が正しい形とされます。

if節が過去形でも仮定法とは限らない

If you finished the report, please send it. のように、実際に起きたかどうかを問う条件文もあります。主節に would がなければ仮定法ではありません。

if が省略されると倒置が起きる

Were I you, ... / Had I known, ... のように、if を省略すると were や had が文頭に出ます。文頭に were や had があったら仮定法を疑ってください。

I wish の後ろは常に1つ前の時制

今のことを願うなら過去形(I wish I had a car)、過去のことを悔やむなら過去完了(I wish I had studied)です。願う時点より1つ前にずらします。

would と could で意味が変わる

would は「〜するだろう」、could は「〜できるだろう」、might は「〜かもしれない」です。単に would を選べばよいわけではありません。

練習問題

3つの判定基準を思い出しながら解いてください。

問1 If I ( ) you, I would take the job.

1. am

2. was

3. were

4. will be

答: 3 主節に would があるので仮定法過去です。仮定法の be動詞は主語が I でも were を使います。会話では was も見られますが、試験では were が求められます。

問2 If I had a car, I ( ) drive you home.

1. will

2. would

3. have

4. had

答: 2 if節が過去形 had なので仮定法過去です。主節は助動詞の過去形 would + 原形にします。will にすると仮定法になりません。

問3 I wish I ( ) how to swim.

1. know

2. knew

3. will know

4. have known

答: 2 I wish の後ろは1つ前の時制にずらします。今泳げないことを願っているので過去形 knew です。

問4 ( ) I in your position, I would refuse.

1. If

2. Were

3. Was

4. Had

答: 2 If I were in your position の if を省略すると、were が文頭に出て倒置します。Was にはなりません。

問5 次のうち文法的に正しくないものはどれですか。

1. If I were taller, I could reach the top shelf.

2. If she will study harder, she would pass the exam.

3. I wish I had more free time.

4. If it were not for water, nothing could live.

答: 2 答えは2です。仮定法過去では if 節の動詞を過去形にするので、will study ではなく studied としなければなりません。帰結節に would があるのに if 節が未来形のままなので、時制がそろっていない誤りです。1は if 節が過去形 were、帰結節が could + 原形で正しい形です。3は wish の後ろを過去形にして現在の願望を表す正しい形です。4は if it were not for 〜(〜がなければ)という仮定法過去の定型表現で正しい形です。

アプリで演習問題を解く・保存する →