fact: Record fin_quotient R := Mk_finite_quotient { fq_size : nat; fq_class : X -> pos fq_size; fq_repr : pos fq_size -> X; fq_surj : forall c, fq_class (fq_repr c) = c; fq_equiv : forall x y, R x y <-> fq_class x = fq_class y }.
imports: List Arith Lia Permutation Undecidability.Shared.Libs.DLW.Utils(utils_list utils_decidable fin_base) Undecidability.Shared.Libs.DLW.Vec(pos vec) Undecidability.Shared.Libs.DLW.Wf(measure_ind)