proposition: Theorem mk_op_digits: forall (w:univ_of_cycles) (op: ZnZ.Ops w) n, (Zpos (ZnZ.digits (mk_op op n)) = 2 ^ Z_of_nat n * Zpos (ZnZ.digits op))%Z.
proof: Proof. intros w op n; elim n; simpl mk_op; auto; clear n. intros n Rec; simpl ZnZ.digits. rewrite Zpos_xO; rewrite Rec. rewrite Zmult_assoc; apply f_equal2 with (f := Zmult); auto. rewrite inj_S; unfold Z.succ; rewrite Zplus_comm. rewrite Zpower_exp; auto with zarith. Qed.
imports: CyclicAxioms Cyclic63 Int63Compat Bignums(DoubleCyclic BigN) ZArith ZCAux Mod_op