fact: Fixpoint nqe {t}: op_type carrier t → (∀ i, op_type (carriers i) t) → Prop := match t with | ne_list.one _ => λ f g, ∀ i, f i = g i | ne_list.cons _ _ => λ f g, ∀ tuple, nqe (f tuple) (λ i, g i (tuple i)) end.
imports: MathClasses.interfaces.abstract_algebra MathClasses.interfaces.universal_algebra MathClasses.theory.ua_homomorphisms MathClasses.theory.categories MathClasses.categories.varieties