• Top
    • Documentation
    • Books
    • Boolean-reasoning
      • Ipasir
      • Aignet
        • Base-api
        • Aignet-construction
          • Gatesimp
            • Gatesimp-p
              • !gatesimp->xor-mode
              • !gatesimp->level
              • !gatesimp->hashp
              • Gatesimp-fix
              • Gatesimp->xor-mode
              • Gatesimp->level
              • Gatesimp->hashp
            • Aignet-hash-mux
            • Aignet-hash-xor
            • Aignet-hash-and
            • Aignet-hash-or
            • Aignet-hash-iff
            • Aignet-build
            • Patbind-aignet-build
          • Representation
          • Aignet-copy-init
          • Aignet-simplify-with-tracking
          • Aignet-simplify-marked-with-tracking
          • Aignet-cnf
          • Aignet-simplify-marked
          • Aignet-complete-copy
          • Aignet-transforms
          • Aignet-eval
          • Semantics
          • Aignet-read-aiger
          • Aignet-write-aiger
          • Aignet-abc-interface
          • Utilities
        • Aig
        • Satlink
        • Truth
        • Ubdds
        • Bdd
        • Faig
        • Bed
        • 4v
      • Projects
      • Debugging
      • Std
      • Proof-automation
      • Macro-libraries
      • ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Gatesimp

    Gatesimp-p

    Recognizer for gatesimp bit structures.

    Signature
    (gatesimp-p x) → *

    Definitions and Theorems

    Function: gatesimp-p

    (defun gatesimp-p (x)
      (declare (xargs :guard t))
      (let ((__function__ 'gatesimp-p))
        (declare (ignorable __function__))
        (and (mbe :logic (unsigned-byte-p 6 x)
                  :exec (and (natp x) (< x 64)))
             (gatesimp-level-p (part-select x :low 1 :width 3))
             (gatesimp-xor-mode-p (part-select x :low 4 :width 2)))))

    Theorem: unsigned-byte-p-when-gatesimp-p

    (defthm unsigned-byte-p-when-gatesimp-p
      (implies (gatesimp-p x)
               (unsigned-byte-p 6 x)))

    Theorem: gatesimp-p-compound-recognizer

    (defthm gatesimp-p-compound-recognizer
      (implies (gatesimp-p x) (natp x))
      :rule-classes :compound-recognizer)