TAU-STATUS.html -- ACL2 Version 6.3

## TAU-STATUS

query or set tau system status

    Major Section:  SWITCHES-PARAMETERS-AND-MODES

    Examples:
    (tau-status)
    (tau-status :system t)
    (tau-status :auto-mode nil)
    (tau-status :system t :auto-mode nil)

    General Form:
    (tau-status :system a :auto-mode b)

where `a` and `b` are Booleans. Both keyword arguments are optional and they may be presented in either order. Value `a` controls whether the `tau-system` is used during subsequent proofs. Value `b` controls whether tau system rules are added automatically (``greedily'') when rules of other `rule-classes` are added. If no arguments are supplied, this is not an event and just returns an error-triple (see error-triples) indicating the current settings. See introduction-to-the-tau-system for background details.

The two flags are independent. For example, the tau system may be disabled in proof attempts even though it is automatically (and silently) extending its database as rules of other classes are added.

Flag (a) is actually toggled by enabling or disabling the `:``executable-counterpart` of `tau-system`. Flag (b) is toggled with the function `set-tau-auto-mode`, which manipulates the `acl2-defaults-table`.

This macro expands into zero, one, or two events, as required by the supplied values of flags `a` and `b`.

If no arguments are supplied the form is not an event and simply returns (as an error triple `(mv nil ans state)`; see error-triples) the current settings of the two flags. For example:

    ACL2 !>(tau-system)
     ((:SYSTEM NIL) (:AUTO-MODE T))

intended to be self-explanatory.