split_ifs
v u x : VarName
phi : Formula
phi_ih : ∀ (binders : Finset VarName), Rec.fastAdmitsAux v u binders phi → IsSub phi v u (Rec.fastReplaceFree v u phi)
binders : Finset VarName
h1 : v = x
⊢ IsSub (exists_ x phi) v u (if v = x then exists_ x phi else exists_ x (Rec.fastReplaceFree v u phi))
case pos
v u x : VarName
phi : Formula
phi_ih : ∀ (binders : Finset VarName), Rec.fastAdmitsAux v u binders phi → IsSub phi v u (Rec.fastReplaceFree v u phi)
binders : Finset VarName
h1 h✝ : v = x
⊢ IsSub (exists_ x phi) v u (exists_ x phi)

case neg
v u x : VarName
phi : Formula
phi_ih : ∀ (binders : Finset VarName), Rec.fastAdmitsAux v u binders phi → IsSub phi v u (Rec.fastReplaceFree v u phi)
binders : Finset VarName
h1 : v = x
h✝ : ¬v = x
⊢ IsSub (exists_ x phi) v u (exists_ x phi)