に防ぐ or が防ぐ Which one is correct?


The one who just attacked is Lancer and not [髑髏]{されこうべ}.

防御と反撃。 動作は一呼吸、まったくの同時に行われた。 **それを、自分から飛びかかった髑髏に防げる筈がない。**

> Defense and counter-attack.  
>  Those actions happened in the same moment.  
>  Against that, for the skull who leaped by his own will, it should be
> impossible to defend.

Shouldn't it be:  
それを、自分から飛びかかった髑髏 **が** 防げる筈がない。




防ぐ is a transitive verb, so it needs a object like 私が彼の攻撃を防ぐ(I deter his
attack). And に防ぐ is incorrect.

防げる is a potential verb of 防ぐ, so both が防げる and に防げる are correct. For example,
ドクロが彼の攻撃を防げる、ドクロに彼の攻撃が防げる(The skull can deter his attack).




Note 防げる (can defend) is an adnominal on [筈]{はず}(supposition), together
meaning "there cannot be any ways for the skeleton to defend [against the
attack]"

I cannot explain why, but it sounds more natural to replace が with に for a
potential verb (できる etc.,) _especially in an adnominal clause._ This _is_ the
reason, if you ever call it a reason.

> 髑髏 **が** 防げるはずがない

is also OK, but because of [lack of] the above idiomatic structure, not to
mention to the repeated が, it sounds a bit awkward. No novelist would choose
this option.

Linguists may have tried to explain the reason, but they are probably
afterthoughts.

> 君はこの問題が解けるか？  
>  君にこの問題が解けるか？  
>  Can you solve this question?

The latter may sound like a challenge or a rhetorical question implying "I
guess you cannot!" The former sounds more like a genuine question.

> 君がこの問題が解けるか？

is ungrammatical.

> 私に言えるのはここまで。  
>  This is all I can [am allowed] to say.

On the other hand,

> 私は言えるのはここまで。

is ungrammatical.

> 私が言えるのはここまで。

is acceptable but non-standard.

