intros; unfold first in |- *; case (N_classic N); intro.
absurd (N >= 2).
elim s; intro y; rewrite y; unfold ge in |- *; auto with arith real.
exact H.
case (exist_first N g); unfold ordre_total in |- *; intros; elim a; intros.
elim H4; intros.
generalize (H6 n); intros.
elim H7.
intro; apply Rlt_le; auto with arith real.
unfold Rle in |- *; auto with arith real.
split; auto with arith real.
auto with arith real.
Qed.

(* Specifications: *)
(**********)
Lemma last_n :
forall N n : nat,
N >= 2 ->
0 < n ->
n < N ->
(0 < alpha)%R /\ (alpha < 1)%R ->
(frac_part_n_alpha n <= frac_part_n_alpha (last N))%R.