質問. "if I do~" と "if I did~" の違いを教えて!
回答. "if I do~" と "if I did~" の違いは、単なる条件節か仮定法過去かです。
1. if I do~
"if I do~" は単なる条件節で、「もし私が~をするなら」という意味です。
"if I do~" は「これから私がやるかどうか分からないけど」という感じで、やるかやらないかが未定の状況に使用される表現です。
2. if I did~
"if I did~" も条件節ですが、それだけでなく仮定法の一種「仮定法過去」でもあります。 "if I did~" は「もし仮に私が~をしたら」という意味です。
"if I did~" は例えば、「私がやらないことが(一応は)もう決まってる(決めてる)けど、仮にやるとすれば」という感じで、やらないことが(ほぼ)決まっている現実に反する仮定(反実仮想)の状況を言い表します。
「仮定法過去」は名称に「過去」と入りますが、これは動詞が過去形だからそう呼ばれるだけで、扱うのは現在の事柄です。
「仮定法現在」というのも存在しますが「単なる条件節」とは別物です。「仮定法現在」は「仮定法過去」と違って、あまり用いられません。 学校で習う英語で言えば、例えば「祈願文(~しますように)」が「仮定法現在」です(例. God save you. 神があなたを救いますように)。
3. 例文
以下は、"if I do~" と "if I did~" を比較する例文です。
If I do it, I will be cursed.
もし私がそれをすれば、私は呪われるだろう。
# 「私」は「それ」をするかどうかを、まだ決めていません。
If I did it, I would be cursed.
もし仮に私がそれをやれば、私は呪われるだろう。
# 仮定法過去です。 仮定法過去では一般的に、帰結節(主節)で "will" に代わって "would" が用いられます。
こちらの文では、「私」は「それ」をやらないことを既に決心しています。 「(絶対そんなことしないけど)もしも仮にそれをやったとすれば」というのが仮定法過去です。