...
Submit via OWLSPACE in a single file that is runnable in DrScheme (so all expository answers must be enclosed in comment blocks or commented out using semi-colons.s into one file and submit this one compressed file.
The type "natural number" (*N*) in this assignment means the _natural-number_ type defined in the text in Section 11.1. Your file should include a data definition for *N*. Unless the problem statement stipulates otherwise, the _only_ built-in operations you may use with values of this type or variants (such as {{ Wiki Markup natural>=1
}}) are the constructors, accessors, and recognizers for the type and the {{equal?
}} (or {{=
}}}) operation. For *N*, the constructor is {{add1
}} ; the accessor is {{sub1
}}, and the recognizers are {{zero?
}} and {{positive?
}}.
For variants, the constructor is typically {{add1
}} (unless the variant consists of multiples of {{m>1
}} \ [such as the even numbers\]), the accessor is typically {{sub1
}}, and the recognizers are typically {{(equal?
...
k)
}}, where {{k
}} is the base number, and {{(>
...
k)
}}.
Problems from the book (HTDP) with some customization
...