• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Debugging
    • Projects
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
      • Theories
      • Rule-classes
      • Proof-builder
      • Hons-and-memoization
      • Events
      • History
      • Parallelism
      • Programming
      • Real
      • ACL2-tutorial
      • Debugging
      • Miscellaneous
      • Prover-output
      • Built-in-theorems
        • Built-in-theorems-about-arithmetic
        • Built-in-theorems-about-symbols
        • Built-in-theorems-about-characters
        • Built-in-theorems-about-lists
        • Built-in-theorems-about-arrays
        • Built-in-theorems-about-strings
        • Built-in-theorems-about-alists
        • Built-in-theorems-about-total-order
        • Built-in-theorems-about-system-utilities
        • Built-in-theorems-about-cons-pairs
        • Built-in-theorems-for-tau
        • Built-in-theorems-about-bad-atoms
        • Built-in-theorems-about-logical-connectives
        • Built-in-theorems-about-booleans
          • Built-in-theorems-about-random$
          • Built-in-theorems-about-eqlables
        • Macros
        • Interfacing-tools
        • About-ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Testing-utilities
      • Math
    • Built-in-theorems

    Built-in-theorems-about-booleans

    Built-in-theorems about booleans.

    Theorem: booleanp-compound-recognizer

    (defthm booleanp-compound-recognizer
            (equal (booleanp x)
                   (or (equal x t) (equal x nil)))
            :rule-classes :compound-recognizer)

    Theorem: boolean-listp-cons

    (defthm boolean-listp-cons
            (equal (boolean-listp (cons x y))
                   (and (booleanp x) (boolean-listp y))))

    Theorem: boolean-listp-forward

    (defthm boolean-listp-forward
            (implies (boolean-listp (cons a lst))
                     (and (booleanp a) (boolean-listp lst)))
            :rule-classes :forward-chaining)

    Theorem: boolean-listp-forward-to-symbol-listp

    (defthm boolean-listp-forward-to-symbol-listp
            (implies (boolean-listp x)
                     (symbol-listp x))
            :rule-classes :forward-chaining)