Definition isort: list T -> list T := fold_right insert nil.

(* Specifications: *)
Lemma isort_permutes l: Permutation (isort l) l.
Lemma isort_sorts l: vec.sorted R (isort l).
Lemma isort_sorts' (U: relation T): (forall x y, le x y = true -> U x y) -> forall l, vec.sorted U (isort l).