proposition: Lemma prec_ext_prec: forall h l l' h', prec h l l' -> prec (h ++ h') l l'.
proof: Proof. intros. unfold prec in H. destruct H as [h1 [h2 [h3 H]]]. exists h1. exists h2. exists (h3 ++ h'). rewrite H. rewrite app_comm_cons. rewrite app_assoc. rewrite app_assoc. rewrite app_assoc. reflexivity. Qed.
imports: Coq(FunctionalExtensionality Arith Lia) Coq(Arith.Peano_dec Arith.Compare_dec) Coq(Relations.Relation_Operators) Coq(List) Chapar(Predefs)