Canonical Cint_opprPred := OpprPred Cint_subring.
Canonical Cint_addrPred := AddrPred Cint_subring.
Canonical Cint_mulrPred := MulrPred Cint_subring.
Canonical Cint_zmodPred := ZmodPred Cint_subring.
Canonical Cint_semiringPred := SemiringPred Cint_subring.
Canonical Cint_smulrPred := SmulrPred Cint_subring.
Canonical Cint_subringPred := SubringPred Cint_subring.

(* Specifications: *)
Lemma Creal_Cint : {subset Cint <= Creal}.
Lemma truncC_def x n : n%:R <= x < n.+1%:R -> truncC x = n.
Lemma natCK n : truncC n%:R = n.
Lemma truncCK : {in Cnat, cancel truncC (GRing.natmul 1)}.
Lemma truncC0Pn x : reflect (truncC x = 0%N) (~~ (1 <= x)).
Lemma truncCM : {in Cnat &, {morph truncC : x y / x * y >-> (x * y)%N}}.
Canonical Cnat_keyed := KeyedPred Cnat_key.