-- returns if two numbers are equal
eq :: Nat -> Nat -> Bool
eq       Z         Z  = True
eq       Z      (S Z)  = False
eq       Z   (S (S Z)) = False
eq    (S Z)        Z   = False
eq    (S Z)     (S Z)  = True
eq    (S Z)  (S (S Z)) = False
eq (S (S Z))       Z   = False
eq (S (S Z))    (S Z)  = False
eq (S (S Z)) (S (S Z)) = True
