Local Hint Resolve lt_x'_x'max le_x'_x'max : a.

(* Specifications: *)
Lemma Meq_ir''0 : M = 1 -> _Z r''0 = 0.
intro H. cut (r''0 < 2 ^ p). rewrite p_M. rewrite H. simpl. cut (0 <= r''0). omega. apply le_0__Z. exact r''0_small. Qed.
(* <KE EP TOGETHER - h_i'_eq *)
Lemma h_i'_eq : _Z h_i' = x' / 2 ^ w * 2 ^ (w - p).
unfold x'. rewrite Zdiv_times_plus. rewrite Zdiv_small_0. simpl. fold t. replace (r''0 + 0) with (_Z r''0). elim t_M; intro H.
Lemma h'_i_eq_mod : M = 1 \/ _Z h'_i = (x' / 2 ^ p) mod 2 ^ w.
elim t_M; intro Ht. right. unfold h'_i. simpl. fold t. rewrite <- Zmod_plus_distr_l. unfold s''_i. unfold x'. unfold r'a.