elim (Zlog_sup_correct2 (Zpos q)). omega. omega. intros q H. absurd (2 <= Zneg q). apply Zlt_not_le.
unfold Zlt. trivial. assumption. Qed.

(* Specifications: *)
Lemma le_1_p : 1 <= p \/ M = 1.
rewrite p_M. elim (Zle_lt_or_eq 1 M). intro H. left. apply Zle_trans with (Zlog_sup 2). simpl. omega.