fact: Hypothesis (M_sum : monoid_theory sum zero) (sum_comm : forall x y, x ⊕ y = y ⊕ x) (sum_cancel : forall x u v, x ⊕ u = x ⊕ v -> u = v) (M_times : monoid_theory times one) (distr_l : forall x y z, x ⊗ (y⊕z) = x⊗y ⊕ x⊗z) (distr_r : forall x y z, (y⊕z) ⊗ x = y⊗x ⊕ z⊗x).
imports: List Arith ZArith Lia Undecidability.Shared.Libs.DLW.Utils(utils_tac utils_list binomial)