- (
**Y***f*.*x*.*f**x*) 0

- (
**Y***f*.*x*.**if0***x*(*f*10) (*f*(**-***x*1))) 0

- (
**Y***f*.*x*.**if0***x*(*f*10) (**-**(*f**x*) 1)) 0

**mk-odd**=*f*.*x*.**if0***x***false**(**not**(*f*(**-****x**1)))**odd**=**Y****mk-odd**(**odd***n*) for any*n*

**mk-oe**=*f*.*z*.*x*.**if0***x**z*(*f*(**not***z*) (**-****x**1))**odd**=**Y***f*.**mk-oe***f***false**(**odd***n*) for any*n*

**next**=*k*.*x*. (**cc***k*(**mk-pair***k**x*))

**call**=*f*.*y*. (*f*(**next**(**fst***y*)) (**snd***y*))

**Z**=*f*.*x*. (**call***f*(**letcc***k*(**mk-pair***k**x*)))

**callcc**=*f*. (**letcc***k*(*f*(*v*. (**cc***k**v*))))

Last update: Tuesday, February 8th, 2000mflatt@cs.utah.edu |