Section divers.
(** Number of significative digits. *)
Definition N_digits (x:Z) :=
match x with
| Zpos p => log_inf p
| Zneg p => log_inf p
| Z0 => 0
end.
(** [Is_power p] means that p is a power of two *)
Fixpoint Is_power (p:positive) : Prop :=
match p with
| xH => True
| xO q => Is_power q
| xI q => False
end.

Lemma Is_power_or : forall p:positive, Is_power p \/ ~ Is_power p.