intuition.
eapply NoDup_Permutation.
apply getAllBlists_NoDup.
apply getAllBlists_app_NoDup.
intuition.
specialize (getAllBlists_rel_map n); intuition.
specialize (rel_map_in_inv H0 x); intuition.
destruct H2.
intuition.
subst.
eapply getAllBlists_app_length_In.
rewrite rev_length.
eapply getAllBlists_app_In_length.
eauto.
specialize (getAllBlists_app_rel_map n); intuition.
specialize (rel_map_in_inv H0 x); intuition.
destruct H2.
intuition.
subst.
eapply getAllBlists_length_In.
rewrite rev_length.
eapply getAllBlists_In_length.
eauto.
Qed.

(* Specifications: *)
Theorem getAllBlists_length : forall n,
length (getAllBlists n) = (expnat 2 n).