type nat = Zero | S of nat ;; let pred x = match x with | Zero -> Zero | S(x') -> x' ;; ()