apply Holds_coincide_Var
case h
D : Type
I : Interpretation D
E : Env
v t : VarName
F F' : Formula
h1_x : VarName
h1_phi : Formula
h1_v h1_t : VarName
V : VarAssignment D
h1_1 : ¬h1_v = h1_x → ¬isFreeIn h1_v h1_phi
d : D
⊢ Holds D I (Function.updateITE (Function.updateITE V h1_v (V h1_t)) h1_x d) E h1_phi ↔
    Holds D I (Function.updateITE V h1_x d) E h1_phi
case h.h1
D : Type
I : Interpretation D
E : Env
v t : VarName
F F' : Formula
h1_x : VarName
h1_phi : Formula
h1_v h1_t : VarName
V : VarAssignment D
h1_1 : ¬h1_v = h1_x → ¬isFreeIn h1_v h1_phi
d : D
⊢ ∀ (v : VarName),
    isFreeIn v h1_phi → Function.updateITE (Function.updateITE V h1_v (V h1_t)) h1_x d v = Function.updateITE V h1_x d v