fact: Fixpoint fol_subst σ (A : 𝔽) := match A with | ⊥ => ⊥ | fol_atom _ v => fol_atom _ (vec_map (fo_term_subst σ) v) | fol_bin c A B => fol_bin c (A⦃σ⦄) (B⦃σ⦄) | fol_quant q A => fol_quant q (A⦃⇡σ⦄) end where "A ⦃ σ ⦄" := (fol_subst σ A).
imports: List Arith Lia Undecidability.Shared.Libs.DLW.Utils(utils_tac utils_list utils_nat finite) Undecidability.Shared.Libs.DLW.Vec(pos vec) Undecidability.FOL.TRAKHTENBROT(notations utils fol_ops fo_sig fo_terms) Undecidability.Shared.ListAutomation