• Top
    • Documentation
    • Books
    • Boolean-reasoning
      • Ipasir
      • Aignet
      • Aig
      • Satlink
      • Truth
      • Ubdds
      • Bdd
      • Faig
      • Bed
        • Bed-op-p
          • Bed-op-eval
          • Bed-op-fix
          • Bed-op-xor
          • Bed-op-true
          • Bed-op-orc2
          • Bed-op-orc1
          • Bed-op-not2
          • Bed-op-not1
          • Bed-op-nor
          • Bed-op-nand
          • Bed-op-ior
          • Bed-op-false
          • Bed-op-eqv
          • Bed-op-arg2
          • Bed-op-arg1
          • Bed-op-andc2
          • Bed-op-andc1
          • Bed-op-and
          • Bed-op-fix$
        • Bed-from-aig
        • Bed-mk1
        • Bed-eval
        • Up
        • Aig-translation
      • 4v
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • Math
    • Testing-utilities
  • Bed

Bed-op-p

Recognizer for BED operators.

Signature
(bed-op-p x) → *

We use a simple truth-table based encoding, i.e., each operator is a binary, Boolean connective; it is represented as a four-bit natural, where the bits of the representation are the truth table for the operator.

Definitions and Theorems

Function: bed-op-p

(defun bed-op-p (x)
  (declare (xargs :guard t))
  (let ((__function__ 'bed-op-p))
    (declare (ignorable __function__))
    (unsigned-byte-p 4 x)))

Theorem: unsigned-byte-p-when-bed-op-p

(defthm unsigned-byte-p-when-bed-op-p
  (implies (bed-op-p x)
           (unsigned-byte-p 4 x)))

Theorem: type-when-bed-op-p

(defthm type-when-bed-op-p
  (implies (bed-op-p x) (natp x))
  :rule-classes :compound-recognizer)

Subtopics

Bed-op-eval
Application of a BED operator to two bits.
Bed-op-fix
Fixing function for bed-op-ps.
Bed-op-xor
Bed-op-true
Bed-op-orc2
Bed-op-orc1
Bed-op-not2
Bed-op-not1
Bed-op-nor
Bed-op-nand
Bed-op-ior
Bed-op-false
Bed-op-eqv
Bed-op-arg2
Bed-op-arg1
Bed-op-andc2
Bed-op-andc1
Bed-op-and
Bed-op-fix$
Faster version of bed-op-fix for when you know it's a valid operator.