proposition: Lemma commringaddinvunique ( X : commring ) ( a b c : X ) ( p : @op1 X a b = @ringunel1 X ) ( q : @op1 X a c = @ringunel1 X ) : b = c.
proof: Proof. intros. rewrite ( pathsinv0 ( ringrunax1 X b ) ). rewrite ( pathsinv0 q ). rewrite ( pathsinv0 ( ringassoc1 X _ _ _ ) ). rewrite ( ringcomm1 X b _ ). rewrite p. rewrite ringlunax1. apply idpath. Defined.
imports: UniMath.Tactics.EnsureStructuredProofs UniMath.Foundations.PartA UniMath.Foundations.Propositions UniMath.Foundations.NaturalNumbers UniMath.Algebra.RigsAndRings UniMath.Algebra.Domains_and_Fields UniMath.NumberSystems.Integers UniMath.Algebra.Monoids