induction 1; intuition; simpl in *.
econstructor.
econstructor.
trivial.
econstructor.
econstructor.
econstructor.
repeat econstructor;assumption.
eapply list_pred_map_both'.
eapply list_pred_impl.
eauto.
intuition.
econstructor; assumption.
Qed.

Theorem getAllPermutations_pred :
forall (A B : Set)(R : A -> B -> Prop)(lsa : list A)(lsb : list B),
list_pred R lsa lsb ->
list_pred (list_pred R) (getAllPermutations lsa) (getAllPermutations lsb).