rewrite p_M. apply Zle_lt_trans with (w - 1). rewrite <- Zlog_sup_pow. apply Zlog_sup_seq.
assumption. auto with a. omega. Qed.

(* Specifications: *)
Lemma le_p_w : p <= w.
apply Zlt_le_weak. exact lt_p_w. Qed.
Lemma le_0_wmp : 0 <= w - p.
cut (p <= w). omega. exact le_p_w. Qed.