Definition tearing_elem_fst (u : nat -> R) (v : R -> nat) (pen : enumeration R u v) (x : R)
:= exists n : nat, x = fst (proj1_sig (tearing_sequences u v pen n)).
(* The limit of the first tearing sequence cannot be reached by u *)
Definition torn_number (u : nat -> R) (v : R -> nat) (pen : enumeration R u v) :
{m : R | is_lub (tearing_elem_fst u v pen) m}.

(* The indices increase because each time the minimum index is chosen *)
Lemma first_indices_increasing (u : nat -> R) (v : R -> nat) (H : enumeration R u v)
: forall n : nat, n <> 0 -> v (fst (proj1_sig (tearing_sequences u v H n)))
< v (fst (proj1_sig (tearing_sequences u v H (S n)))).