This directory contains solutions for exercises in Chapter 4 of

 Computer-Aided Reasoning:  An Approach, by Kaufmann, Manolios, and Moore,
 Kluwer Academic Publishers, June, 2000.

See books/textbook/README for a guide to all solutions and general
information.

The following files (or extensions) may be present on this directory.

README     - guide to contents of the directory
Makefile   - Unix file for recertifying the ACL2 books on the directory
             (present on all but chap7, which contains no books)

*.lisp     - certifiable ACL2 book containing solutions to exercises
*.txt      - solutions to exercises not amenable to ACL2 formulation
*.acl2     - driver used by Makefile to recertify some *.lisp files

*.cert     - certificate indicating that *.lisp has been certified
*.date     - date of beginning of recertification run
*.log      - output of make
*.out      - output produced by ACL2 during certification
*.o        - compiled version of *.lisp file in some Common Lisps
*.fasl     - compiled version of *.lisp file in some Common Lisps

Any file with the extension ``.lisp'' is a certifiable book that can
be included into your ACL2 session with include-book.

To recertify all the books, stand in this directory and type make.

Location of Solutions to Particular Exercises

At the beginning of Chapter 4, Programming Exercises, we say that all
of these exercises may be done in program mode.  We also suggest that
once you have learned to use the ACL2 theorem prover, you do these
exercises again, this time operating in logic mode and adding and
verifying guards.

We therefore have two solution files.  In the first, we use
:program mode whenever ACL2 cannot automatically admit our
definitions.  In the second, we use :logic mode (where possible), we
include guards with our definitions, and we verify the guards.

   4 Programming Exercises
     Exercises 4.1 - 4.21 in :program mode:
       chap4/solutions-program-mode.lisp
     Exercises 4.1 - 4.21 in :logic mode:
       chap4/solutions-logic-mode.lisp

