intros l t H; elim H; auto.
intros t1 t2 l1 l2 l3 H0 H1 H2 H3.
Proof using.
apply cover_app; auto.
Qed.

(* It is always possible to get an ordered cover from a cover *)
Theorem cover_ordered_cover :
forall (l1 : list (btree A)) (t : btree A),
cover l1 t -> exists l2 : _, permutation l1 l2 /\ ordered_cover l2 t.