proposition: Lemma consHeadCPOK {T:Type} {n:nat} : forall (cp : cartesianPower T (S (S n))), cp = consHeadCP (headCP cp) (tailCP cp).
proof: Proof. intro cp. induction n. simpl. apply CPPair. apply CP_ind. simpl; reflexivity. rewrite consHeadCPTl; reflexivity. Qed.
imports: Arith NArith List Sorting Coq.Program.Equality