Fact unitGI_out : {in [predC unitGI], invGI =1 id}.
Definition GI_comUnitRingMixin :=
ComUnitRingMixin mulGIr unitGIP unitGI_out.
Canonical GI_unitRingType := UnitRingType GI GI_comUnitRingMixin.
Canonical GI_comUnitRingType := [comUnitRingType of GI].

Lemma normGI_unit (x : GI) : ('N(x) == 1)%N = (x \in GRing.unit).
Fact GI_idomainAxiom (x y : GI) : x * y = 0 -> (x == 0) || (y == 0).