Right now (2003-10-31), CHECKSETUP performs the following checks:

 - It checks that the input is an association list  (i.e., a list,
   whose members are dotted pairs). In the sequel, I shall call
   the input list members 'the items'. 'An XX item' be an item,
   whose CAR is XX.

 - It checks that the items are of different types, and of types
   which we consider as (major) modes.

 - If there is an OBJECTTYPE item, CHECKSETUP checks that its
   CDR is a list.

 - If there is a RESOLUTIONTYPE item, CHECKSETUP checks
     that it is a list of length two, and that its second
     member <s> is a valid resolution type name.

 - If there is a VARIABLESETUP item, CHECKSETUP checks that its
   CDR is an alist. If so, then this alist is searched for some
   subitems:
   - If there is a VARIABLENUMBER subitem, after correcting a
     few errors, CHECKSETUP should check that the subitem is a
     list of length two, and that its second member <s> is either
     NIL or a non-negative integer. If <s> a number, and
     INVARIABLES and/or OUTVARIABLES are explicitly given, but
     of length(s) different from <s>, then a non-fatal warning
     is issued (but this part of the setup is accepted).

 - If there is a STRATEGY item, CHECKSETUP checks that its
   CDR is an alist. If so, then this alist is searched for some
   subitems:
   - If there is an INTERRUPTION subitem, CHECKSETUP checks
     that it is a list of length two, and that its second
     member <s> is a valid interruption minor strategy mode.
     If <s> = MINHILBLIMITS, CHECKSETUP checks that the
     VARIABLESETUP item (if any) does not contain a
     VARIABLEWEIGHTS subitem, with a non-NIL argument.

 - If there is a COEFFICIENTDOMAIN item, CHECKSETUP checks that
   its CDR is a non-empty list, whose CAR is NIL or a
   non-negative integer, and whose CDR is an alist.

 - If there is an INPUTFORMAT item, CHECKSETUP checks that its
   CDR is a list.

 - If there is an OUTPUTFORMAT item, CHECKSETUP checks that its
   CDR is a list.

 - If there is an ANICK item, CHECKSETUP notes it but ignores
   it??

 - If there is a VARIOUSFLAGS item, CHECKSETUP checks that its
   CDR is an alist.

