に vs で again: 前に vs 後で


Following the current trend of pitting the particles に and で against each
other, here is another question that does the same but from another type of
usage and perspective.

When we want to say "do X before Y", we use "Y 前に X":

> 食べる前に「いただきます」と言う。

On the other hand, when we want to say "do X after Y", we use "Y 後で X":

> 食べた後で「ごちそうさまでした」と言う。

What is the simplest explanation to explain the differences between 前 and 後
that make 前 goes with に while 後 goes with で in the two situations above?




`で` derives from `に＋て`, and `て` roughly corresponds to the present/past
participles (-ing, -en) in Western languages. [Kuno
(1973)](http://wals.info/refdb/record/Kuno-1973) notices that `て` implies
temporal order. So when you have

> 走ってころんだ  
>  '(By) running, I fell',

running has to precede falling; it cannot be the other way around. This much
is the general consensus.

Notice that the usage of `で` in the question involves temporal notions rather
than locations. Now, I found an interesting explanation [here:
Q14](http://nhg.pro.tok2.com/qa/joshi-2.htm) that connects the facts mentioned
above. According to this, when you have an expression

> A [temporal noun] で B,

the `て` that is included in `で` obeys the temporal restriction mentioned
above; that is, what is expressed by `A [temporal noun]` has to precede `B`.
Going in the other temporal order is not allowed. Therefore, expressions like

> 食べた後で「いただきます」と言う。 [Temporal order: 食べた => 言う]

are grammatical but

> × 食べる前で「いただきます」と言う。 [Temporal order: 食べる <= 言う]  
>  × 食べるよりも先で「いただきます」と言う。 [Temporal order: 食べる <= 言う]

are not. `に` can be used by all the examples above:

> 食べた後に「いただきます」と言う。  
>  食べる前に「いただきます」と言う。  
>  食べるよりも先に「いただきます」と言う。

If there is preference of `食べた後で「いただきます」と言う` over `食べた後に「いただきます」と言う`, then
some kind of slight difference in meaning like what phirru mentions in the
comment may be playing a role here.




`で` derives from `に＋て`, and `て` roughly corresponds to the present/past
participles (-ing, -en) in Western languages. [Kuno
(1973)](http://wals.info/refdb/record/Kuno-1973) notices that `て` implies
temporal order. So when you have

> 走ってころんだ  
>  '(By) running, I fell',

running has to precede falling; it cannot be the other way around. This much
is the general consensus.

Notice that the usage of `で` in the question involves temporal notions rather
than locations. Now, I found an interesting explanation [here:
Q14](http://nhg.pro.tok2.com/qa/joshi-2.htm) that connects the facts mentioned
above. According to this, when you have an expression

> A [temporal noun] で B,

the `て` that is included in `で` obeys the temporal restriction mentioned
above; that is, what is expressed by `A [temporal noun]` has to precede `B`.
Going in the other temporal order is not allowed. Therefore, expressions like

> 食べた後で「いただきます」と言う。 [Temporal order: 食べた => 言う]

are grammatical but

> × 食べる前で「いただきます」と言う。 [Temporal order: 食べる <= 言う]  
>  × 食べるよりも先で「いただきます」と言う。 [Temporal order: 食べる <= 言う]

are not. `に` can be used by all the examples above:

> 食べた後に「いただきます」と言う。  
>  食べる前に「いただきます」と言う。  
>  食べるよりも先に「いただきます」と言う。

If there is preference of `食べた後で「いただきます」と言う` over `食べた後に「いただきます」と言う`, then
some kind of slight difference in meaning like what phirru mentions in the
comment may be playing a role here.

