Download here - Informatik - FB3 - Uni Bremen
Transcript
affect the applicability of rules. • The system state can be affected by setting various modes. Two examples include a program mode, which allows the user to write programs that need not terminate but can be used in macros, and a backchain limit for rewriting. • Session management commands include undoing, redoing, and querying the state. • Proof assistance is provided by two break/trace utilities for the rewriter; an interactive goal manager; and a report mechanism that can show “expensive” rules. • The programming interface provides features to bridge the gap between the user and the computing engine, such as Lisp-independent trace and backtrace utilities and verifiable alternative function bodies. This interface also makes available powerful Lisp features including packages and macros. State and other single-threaded objects are supported efficiently with an applicative semantics. A guard mechanism provides a powerful, though less automatic, alternative to types that is separate from the logical content of definitions. • Users can interactively extend the system’s capabilities by providing books of logical definitions and theorems, as well as system utilities and even (through trust tags) system modifications. • A clause-processor mechanism provides an interface through which the user connects ACL2 with another tool. A separate question, not addressed in this talk, is how to communicate proof results effectively to non-users. Our focus is on interface support for effective usage. 2