case nil.def_ X xs =>
  simp only [replace]
  simp only [E_ref]
  simp only [Holds]
D : Type
I : Interpretation D
V' : VarAssignment D
P : PredName
zs : List VarName
H : Formula
E_ref : Env := []
X : DefName
xs : List VarName
V : VarAssignment D
binders : Finset VarName
h1 : admitsAux P zs H binders (def_ X xs)
h2 : ∀ x ∉ binders, V x = V' x
⊢ Holds D (I' D I V' E_ref P zs H) V E_ref (def_ X xs) ↔ Holds D I V E_ref (replace P zs H (def_ X xs))
no goals