proposition: Theorem FULL_MONADIC_discernable_dec_FSAT_dec_equiv Σ r : ar_rels Σ r = 1 -> (forall s, ar_syms Σ s <= 1) -> (forall r, ar_rels Σ r <= 1) -> ( (forall u v : syms Σ, decidable (u ≢ v)) * (forall u v : rels Σ, decidable (u ≢ v)) ) ≋ forall A, decidable (FSAT Σ A).
proof: Proof. intros Hr H1 H2. split. + intros (? & ?); apply FSAT_FULL_MONADIC_discernable; auto. + intros H3; split. * apply FSAT_dec_implies_discernable_syms_dec with r; auto. * apply FSAT_dec_implies_discernable_rels_dec; auto. Qed.
imports: List Arith Undecidability.Synthetic(Definitions ReducibilityFacts InformativeDefinitions InformativeReducibilityFacts) Undecidability.Shared.Libs.DLW.Utils(utils_tac utils_list finite) Undecidability.Shared.Libs.DLW.Vec(pos vec) Undecidability.FOL.TRAKHTENBROT(notations utils decidable discernable fol_ops fo_sig fo_terms fo_logic fo_sat fo_sat_dec red_utils Sig_Sig_fin Sig_rem_props Sig_rem_constants Sig0 Sig1 Sig1_1 Sig_discernable)