Module NatList.
Inductive natprod : Type :=
| pair : nat -> nat -> natprod.
Instance dec_natprod (p q : natprod) : Dec (p = q).
Admitted. (* QuickChick surjective_pairing. *)

Theorem snd_fst_is_swap : forall (p : natprod),
(snd p, fst p) = swap_pair p.