-- Lecture 3 : Conditional -- page 28 mod! BASIC-NAT{ [Zero NzNat < Nat] op 0 : -> Zero op s_ : Nat -> NzNat } mod! NAT-EVEN{ pr(BASIC-NAT) pred even_ : Nat var N : Nat eq even 0 = true . ceq even(s N) = false if even N . ceq even(s N) = true if not (even N) . } select NAT-EVEN . set trace on red even s 0 . set trace off -- page 30 mod! INFINITE{ [Elt] pred f : Elt var X : Elt ceq f(X) = true if f(X) . } select INFINITE -- red f(X:Elt) .