プロが教えるわが家の防犯対策術!

He left just now, so he cannot have gone so far .

cannot have gone の部分をwould have goneとしてはいけない理由なんですが、
would have goneにすると、仮定法過去完了となってしまい、「行ってなかっただろう」と
なるから使えないのでしょうか?
使えない理由がいまいちよくわかりません。
また、would~や would have 過去完了 は仮定法でしか用いない表現なのでしょうか?

A 回答 (7件)

ivalloです。


推量のwouldで引っ掛かっているんですね。

wouldはたしかに、日本語訳にすると「~だろう」となる時があります。
ですが、同じ「~だろう」であっても、canとでは、違った意味で使っているのです。たとえば、

It will be rainy tomorrow.
明日は雨だろう。
これは、「未来」において雨になると推量しているわけです。

それがwouldでは
I believed it would be rainy next day.
次の日は雨だろうと信じていた。
「過去のとある時点において」「未来」に雨になると推量しているわけです。

これがcanやmustの推量では違った感じになります。
The baby can be hungry.
赤ちゃんはお腹がすいているのだろう(かも知れない)。
The baby must be hungry.
赤ちゃんはお腹がすいているのだろう(に違いない)。
これは、「現在」における推量です。will,wouldでは現在における推量ができません。ここが大きく違います。

では、問題文の場合はどうかといえば、
He left just now, so he xxx not have gone so far .
He has not goneというのは、彼は現在、遠くに行っているかいないのかと推量しているわけです。

あくまでも、willは未来の推量、wouldは過去における未来の推量と覚えて下さい。

ちなみに、下の方がいわれている控えめな推量は、(受験英語では覚える必要はないですが、)条件節の意味がどこかに隠されている場合に使われます。仮定法の変種みたいなものです。
How much would you take for this?
=How much would you take for this if I bought it from you.
これはどのくらいするでしょうか?

Anyone would have thought that.
=Anyone would have thought that if they stayed there.
誰でもみなそう思ったでしょう。

It would be a shame to stay at home on such a fine day.
=It would be a shame if you stayed at home on such a fine day.
こんな天気のいい日に家にいるなんて恥ずかしいでしょう。
    • good
    • 0
この回答へのお礼

ご回答をありがとうございます。

>推量のwouldで引っ掛かっているんですね。

そうなんです・・・困り果ててました。
しかし、具体的な文章や用法で示していただき、おかげさまで感覚もわかるようになりました。

お礼日時:2003/11/26 10:26

#5です。



問題集の文が何か不自然な気がします。

wouldn't have goneはどうでしょうかね?wouldは過去の視点から未来を表す時に使います。この場合は現在の視点ですので must have goneでしょう。
過去未来は wouldで表され、未来完了はWill have+過去分詞 で表されます。それに 過去未来完了形はあまり見ない表現です。
    • good
    • 0
この回答へのお礼

ご回答をありがとうございます。
>この場合は現在の視点ですので must have goneでしょう。

この文が現在の視点だということがよくわかってなかったのもあり、悩んでましたが、
wouldの用法も合わせて考えるとmust have goneとなるのも頷けますね。
なるほど~。

お礼日時:2003/11/26 10:31

この文は He left just now, so he wasn't able to


go so far. という方が普通ではないでしょうか?
would have goneは過去未来完了形になり、過去の時点で ある動作が完了しているだろうという推測になりますから He left just nowとは意味的にかみ合わなくなります。

この回答への補足

ご回答をありがとうございます。
>この文は He left just now, so he wasn't able to
go so far. という方が普通ではないでしょうか?

問題集の問題と答えをそのまま載せただけですので、わかりません。
しかし、なぜそう考えられるのか知りたいです。


あと、例えば「行ってないだろう」woudn't have goneはどうでしょう?
こうすれば意味も通じるし、用いることができるような気もするんですが。

補足日時:2003/11/21 18:56
    • good
    • 0

He left just now>(彼はついさっき出発した)


so >(なので)
he >(彼は)
????>(?)
so far.>(そんなに遠くに)

?は”行った”ではなくて
”行っていない。”
”行けるはずない。”
という助動詞の問題のように思えます。
    • good
    • 0
この回答へのお礼

ご回答をありがとうございます。
例えば「行ってないだろう」woudn't have gone でも通じないですか?

お礼日時:2003/11/21 18:55

>He left just now, so he cannot have gone so far .


>cannot have gone の部分をwould have goneとしてはいけない理由なんですが、
>would~や would have 過去完了 は仮定法でしか用いない表現なのでしょうか?

would have 過去分詞 ですが仮定法の他、未来完了としての意味もあります。

will have 過去分詞

I will have finished my homework by the evening.
[夜までには宿題を終えているだろう]

He said "I will have finished...."
→He said that he would have finished...
となります。

We will have lived here for ten years by next month.
[来月で私たちはここに10年住んでいる事になります]

would have goneだけでは仮定法で過去の事実と違う仮定を表します。
(意志を含んで)...しただろうに、(意志を含まず)....だったろうに、となります。

He would have gone so far.
[彼はそんなに遠くに行かなかっただろうに]
となって、He left just now.の文章と合いません。

また、ifがなく、条件節を伴わない場合でも

Who would have thought a thing like that?
[誰がその様な事を考えていただろうか?]
の様な用法はあります。
....だったろうに、.....だろうか、と云う意味になり
文脈から明らかな場合、裏に含まれた条件を推定出来る場合は条件節を省略する事があります。


また、wouldは控えめな推定・意向を表す用法もあります。

It would seem to be wrong.
[どうもそれは間違っている様です]

She would have been about 80 when she died.
[彼女が亡くなった時、多分80歳位だったでしょう]

この用法を使えないか、との事ですね。

He left just now,so he cannot have gone so far.
[彼はたった今出かけた。だから、そんなに遠くに行っていないはずだ]

He left just now,so he would have gone so far.
[彼はたった今出かけた。だから、多分そんなに遠くに行かなかったでしょう]

He left just now.[彼はたった今出かけた]という事実から今現在の事を推量していますので、文章的に合わないと思います。意味が通じるのは[だからそんなに遠くに行っていないはずだ]という可能性・推量を表す助動詞canが適切だと思います。

この回答への補足

ご回答をありがとうございます。
例えば、cannot have gone ではなく、wouldn't have goneでもダメですか?
wouldn't have gone「(そんな遠くへは)行ってないだろう」と日本語で訳してもおかしくはない
と思うのですが・・・。

補足日時:2003/11/21 18:48
    • good
    • 0

he cannot have gone so far


の部分ですが、これは推量のcanですね。

さて、この文は、
He left..という過去の状況に基づいて
現在(I think) he cannot have gone so far.
と、推量しているわけです。

would(will)には推量の意味がありませんので、全く使えません。未来の推量で使う文には可能性はありますけど、この例文ではダメですね。
I will have cooked dinner by 6 o'clock.
(6時までには晩ご飯ができますよ。)
I thought I would have finished my homework by Friday.
(金曜日までには宿題が終わると思った。)
のように、未来・過去の話の中の未来における完了で使います。

それから、仮定法はあくまでも、if~の部分があってからですね。
If he left Kyoto yesterday, he would arrive home now.
If he left Kyoto two days ago, he would have arrived home yesterday.
というように使います。

この回答への補足

ご回答をありがとうございます。
wouldは~だろうですよね?推量の意味には入らないのでしょうか?

補足日時:2003/11/21 18:46
    • good
    • 0

こんばんは。



意味的におかしくなるからではないでしょうか。
問題文は、
「彼はたった今出発した、だから彼はそんなに遠くに行ってしまってるはずがない。」
という意味の文で、
もしwould have goneだったら、
「彼はたった今出発した、だから彼はそんなに遠くに行ってしまっただろう。」
となって、意味として前後が通じなくなるのではないかな。
    • good
    • 0
この回答へのお礼

ご回答をありがとうございます。
日本語で考えたらほんと、おかしいですよね。
それに気づいてませんでした。

お礼日時:2003/11/21 18:46

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!