• Top
    • Documentation
    • Books
    • Recursion-and-induction
    • Boolean-reasoning
      • Ipasir
      • Aignet
      • Aig
      • Satlink
      • Truth
      • Ubdds
      • Bdd
      • Faig
      • Bed
      • 4v
        • 4v-sexprs
          • 4v-sexpr-vars
          • 4v-sexpr-eval
          • 4v-sexpr-to-faig
          • 4v-sexpr-restrict-with-rw
          • 4vs-constructors
          • 4v-sexpr-compose-with-rw
          • 4v-sexpr-restrict
          • 4v-sexpr-alist-extract
          • 4v-sexpr-compose
          • 4v-nsexpr-p
          • 4v-sexpr-purebool-p
          • 4v-sexpr-<=
          • Sfaig
          • Sexpr-equivs
          • 3v-syntax-sexprp
            • Sexpr-rewriting
            • 4v-sexpr-ind
            • 4v-alist-extract
          • 4v-monotonicity
          • 4v-operations
          • Why-4v-logic
          • 4v-<=
          • 4vp
          • 4vcases
          • 4v-fix
          • 4v-lookup
      • Debugging
      • Projects
      • Std
      • Proof-automation
      • Macro-libraries
      • ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Testing-utilities
      • Math
    • 4v-sexprs

    3v-syntax-sexprp

    Recognizer for 4v-sexprs that cannot evaluate to Z.

    Definitions and Theorems

    Function: 3v-syntax-sexprp

    (defun 3v-syntax-sexprp (x)
           (declare (xargs :guard t))
           (and (consp x)
                (let ((fn (car x)))
                     (not (or (eq fn (4vz))
                              (eq fn 'id)
                              (eq fn 'res)
                              (eq fn 'zif)
                              (eq fn 'tristate))))))

    Theorem: 3vp-of-4v-unfloat

    (defthm 3vp-of-4v-unfloat
            (equal (equal (4vz) (4v-unfloat a))
                   nil))

    Theorem: 3vp-of-4v-not

    (defthm 3vp-of-4v-not
            (equal (equal (4vz) (4v-not a)) nil))

    Theorem: 3vp-of-4v-xdet

    (defthm 3vp-of-4v-xdet
            (equal (equal (4vz) (4v-xdet a)) nil))

    Theorem: 3vp-of-4v-and

    (defthm 3vp-of-4v-and
            (equal (equal (4vz) (4v-and a b)) nil))

    Theorem: 3vp-of-4v-or

    (defthm 3vp-of-4v-or
            (equal (equal (4vz) (4v-or a b)) nil))

    Theorem: 3vp-of-4v-xor

    (defthm 3vp-of-4v-xor
            (equal (equal (4vz) (4v-xor a b)) nil))

    Theorem: 3vp-of-4v-iff

    (defthm 3vp-of-4v-iff
            (equal (equal (4vz) (4v-iff a b)) nil))

    Theorem: 3vp-of-4v-ite

    (defthm 3vp-of-4v-ite
            (equal (equal (4vz) (4v-ite c a b))
                   nil))

    Theorem: 3vp-of-4v-ite*

    (defthm 3vp-of-4v-ite*
            (equal (equal (4vz) (4v-ite* c a b))
                   nil))

    Theorem: 3vp-of-4v-pullup

    (defthm 3vp-of-4v-pullup
            (equal (equal (4vz) (4v-pullup a)) nil))

    Theorem: 3vp-sexpr-eval-when-3v-syntax-sexprp

    (defthm 3vp-sexpr-eval-when-3v-syntax-sexprp
            (implies (3v-syntax-sexprp x)
                     (equal (equal (4vz) (4v-sexpr-eval x env))
                            nil)))