intros; elim H0; intros; elim H1; intros; elim H3; intros; elim H5; intro;
clear H0 H1 H3 H5; rewrite <- H; unfold after in |- *;
case (exist_after_M (frac_part_n_alpha n) (P1 n) (P2 n) N);
intro.
elim s; intros x0 y H0; elim y; intros; elim H3; intros; elim H7; intros;
clear s y H3 H7; fold (frac_part_n_alpha x > frac_part_n_alpha n)%R in H6;
generalize (H9 x (lt_le_weak 0 x H2) H4 H6); intro;
generalize (Rgt_not_le (frac_part_n_alpha x0) (frac_part_n_alpha x) H0);
intro; cut (frac_part_n_alpha x0 <= frac_part_n_alpha x)%R.
intro; auto.
unfold Rge in H3; unfold Rle in |- *; elim H3; auto.
unfold frac_part_n_alpha in |- *; simpl in |- *; rewrite (Rmult_0_l alpha);
rewrite fp_R0; elim (base_fp (INR x * alpha)); intros;
generalize (Rgt_not_le 0 (frac_part (INR x * alpha)) H3);
intro; cut (0 <= frac_part (INR x * alpha))%R.
intro; auto.
unfold Rge in H0; unfold Rle in |- *; elim H0; auto.
Qed.

(* Specifications: *)
(**********)
Lemma tech_after_lt :
forall N n m : nat,
0 < n ->
n < N ->
m <> 0 -> after N n = m -> (frac_part_n_alpha n < frac_part_n_alpha m)%R.