proposition: Fact ra_ite_rel v e : ⟦ra_ite⟧ v e <-> e = ite_rel (vec_pos v pos0) (vec_pos v pos1) (vec_pos v pos2).
proof: Proof. vec split v with b; vec split v with p; vec split v with q; vec nil v. split. + intros H; apply ra_rel_fun with (1 := H), ra_ite_val. + intro; subst; apply ra_ite_val. Qed.
imports: Arith List Lia Undecidability.Shared.Libs.DLW(utils_tac utils_nat utils_list gcd crt sums finite pos vec) Undecidability.MuRec.Util(recalg recomp prim_min)