proposition: Theorem permutation_app_comp : forall l1 l2 l3 l4, permutation l1 l2 -> permutation l3 l4 -> permutation (l1 ++ l3) (l2 ++ l4).
proof: Proof. intros l1 l2 l3 l4 H1; generalize l3 l4; elim H1; clear H1 l1 l2 l3 l4; simpl in |- *; auto. intros a b l l3 l4 H. cut (permutation (l ++ l3) (l ++ l4)); auto. intros; apply permutation_trans with (a :: b :: l ++ l4); auto. elim l; simpl in |- *; auto. intros l1 l2 l3 H H0 H1 H2 l4 l5 H3. apply permutation_trans with (l2 ++ l4); auto. Qed.
imports: List ListAux