✨ ベストアンサー ✨
仮定法「過去」とか「過去完了」という言葉には語弊がすごくあって、それに頼るとあたまぐちゃぐちゃになるので、その考え方はやめた方が良いですよ。
if S had 過去完了〜,S would have 過去完了〜.
これがまず間違っていて
if S had 過去分詞〜,S would have 過去分詞〜.
なら正しいです。
had +過去分詞 が過去完了の形なので、
助動詞 have 過去分詞は過去完了ではないのです。
だから「仮定法過去完了」という名前には語弊があるのです。
助動詞が前にあるからhaveで、なければhadになる
という考えについてですが、この形の仮定法では必ず助動詞がつきます。
助動詞がない場合は、ということがありえないことなのです。
おっしゃる通り「助動詞が前にあるからhaveで、なければhadになる」と覚えておけば、
例えばwould had 過去分詞 としてしまうミスは防げそうなので、そのように頭に入れること自体は否定しません。
ですが、
その考え方は事実には沿っていない、ということも同時に頭に入れるべきだと思います。
助動詞 have 過去分詞 で、過去のことを現在の立場から推量するような表現になるんです。
全ての助動詞が使えるわけではありませんが。
例えば
I may have made a mistake if you think so.
「あなたがそう考えるのなら、私は間違いをしたのかもしれない」
過去にやったことに対して、いま推量しています。
これは仮定法ではありません。
これを仮定法にすると、助動詞が過去形になるんです。
I might have been killed without your quick thinking.
「あなたが機転をきかせなければ、私は殺されていたかもしれない」
これは仮定法の文です。
過去のことを現在の立場から推量しているので、
助動詞 + have 過去分詞
仮定法なので助動詞が過去形になっています。
何が言いたいのかというと、
仮定法過去完了は、had + 過去分詞 に助動詞がついたから、助動詞 + have + 過去分詞 になったものではないということが言いたいのです。