fact: Definition ψ (φ' ψ' : valuation) : valuation := fun x => match of_nat x with | (x, 0) => substitute embed_var (ψ' x) | (x, 1) => substitute embed_var (φ' x) | (x, 2) => substitute embed_var (tgt (φ' x)) | (x, 3) => substitute embed_var (src (φ' x)) | _ => atom x end.
imports: List Undecidability.SemiUnification.SemiU Undecidability.SemiUnification.Util(Enumerable) ssreflect ssrfun ssrbool