(** * The sign function *)
Definition sign (x : R) :=
match total_order_T 0 x with
| inleft (left _) => 1
| inleft (right _) => 0
| inright _ => -1
end.

(** rcons *)
Lemma rcons_ind {T : Type} (P : seq T -> Type) :
P [::] -> (forall (s : seq T) (t : T), P s -> P (rcons s t)) -> forall s, P s.