eigo21ホームページ     

英文法の質問箱もくじへ

英文法の質問箱
助動詞+have+pp
質問:

大※です。
またまた申し訳ありませんが、助動詞+have+pp をなぜ使うのか。
またなぜ助動詞の過去形を使わないのか〜教えてください!


質問者: バ※
学年・年齢: 高1
性別: 男性
回答:

今回は説明が長いので頭で整理しながら読んでください。


完了形は大きく「述語動詞」が完了形になった場合と「準動詞」が完了形になった場合があります。
前者は「現在完了」,「過去完了」,「未来完了」で
後者は「to不定詞の完了形(to+have+pp)」 と「原形不定詞の完了形(have+pp)」と「動名詞・現在分詞の完了形(having+pp)」です。


今回は後者の完了形です。


==============================================


この準動詞が完了形になったものは「述語動詞よりも時制が1つ過去であること」を表します。
具体的には述語動詞が現在形なら過去または現在完了を, 述語動詞が過去なら過去完了を表します。


したがって質問の[助動詞の現在形+原形不定詞の完了形(have+pp)]は have+ pp の部分が過去であることを表します。


具体的には 
(1)  must(ちがいない)  may(かもしれない)  can't(はずがない)should(はずだ) ought to (はずだ)の推量の助動詞に have+pp がつくと「過去のことについて現在推量している」ことを表します。


The road is wet; it must have rained last night.
道路が濡れている。 昨夜雨が降ったに違いない。
He can't have left this town.  I've just seen him.
彼がこの町を出たはずがない。 今あったところだから。


(比較) 
The sky has got dark: it must rain before long.
空が暗くなってきた。 まもなく雨が降るに違いない。 (未来の推量)
He can't be home.  I've seen him in town.
 彼が家にいるはずがない。 今町で見たのだから。(現在の推量)


もう1つのグループ
(2) should (すべきだ)ought to (すべきだ)need not (する必要はない)had better (した方がいい)などの必要・不必要の助動詞に have pp がつくと「過去にある行為をしたりしなかったりしたことに対して現在非難または後悔している」ことを表します。


You should have handed in your assignment earlier.
もっと早く課題を提出すべきだったのに。(過去不履行だったことの非難)
I need not have brought my umbrella with me.
傘を持ってくる必要がなかったのに。(過去してしまったことへの後悔)


(比較)
You should hand in your assignment by next Monday.
今度の月曜日までに宿題を提出すべきです。 (未来の忠告)
I need not bring my umbrella.  I'm sure it will never rain today.
傘を持って行く必要はない。 今日は絶対に雨は降らないから。


==============================================


では助動詞を過去形にしたら,大過去のことを過去推量したり, 非難・後悔したりするかというとそうではありません。 [助動詞の過去形+have pp] は「仮定法過去完了」というまた別の文法事項になってしまうのです。


具体的には could have pp 「〜できただろうに」 might have pp 「〜したかもしれないのに」 should have pp 「〜しただろうに」(この場合は「すべきだったのに」と区別がつきません。 ただしこの形を仮定法過去完了で使うのは学校英文法では例が少ないと見ていいでしょう。 )


==============================================
手短にまとめると
(1) 準動詞の完了形は述語動詞より前の時制を表す。
(2) 助動詞の過去形+have+pp は仮定法過去完了という別の文法事項になってしまう。
ということです。


なお助動詞+完了形は助動詞の中で最も入試で出題される項目なのでそのつもりでしっかり頭に入れておくこと。

上の回答に対する質問者からのレスポンス:
ありがとうございます! 仮定法と区別するんですね!! またお願いします!