abstract DummyNat = { cat Nat ; fun zero : Nat ; succ : Nat -> Nat ; plus : Nat -> Nat -> Nat ; }