let d0 = function Z -> failwith ("d0 : requires a non-zero natural number as its argument") | n -> TTNZ (n)