• Top
    • Documentation
    • Books
    • Boolean-reasoning
      • Ipasir
      • Aignet
      • Aig
        • Aig-constructors
        • Aig-vars
        • Aig-sat
        • Bddify
        • Aig-substitution
        • Aig-other
          • Best-aig
          • Aig2c
          • Expr-to-aig
          • Aiger-write
          • Aig-random-sim
            • Aig-vecsim60
            • 60-bit-fix
            • Logbitp-env60
            • Init-random-state
            • N-random-60-bit-nats
            • *60-bit-mask*
          • Aiger-read
          • Aig-print
          • Aig-cases
        • Aig-semantics
        • Aig-and-count
      • Satlink
      • Truth
      • Ubdds
      • Bdd
      • Faig
      • Bed
      • 4v
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • Math
    • Testing-utilities
  • Aig-other

Aig-random-sim

Functions for randomly vector simulations of Hons aigs.

Simulating AIGs on random vectors is useful in algorithms such as fraiging, to look for nodes that are probably equivalent and might be merged.

Our hons-based aig representation is not especially efficient or well-suited for carrying out random simulations, and nowadays aignet is a much faster alternative. Nevertheless, we have developed various routines for vector-simulations of Hons AIGs.

Note that some of these routines make use of 60-bit natural numbers, which are fixnums on 64-bit CCL and SBCL. They may perform quite badly on other Lisps with smaller fixnum ranges.

Subtopics

Aig-vecsim60
Do a 60-bit wide evaluation of an AIG.
60-bit-fix
Coerce an object to a 60-bit natural.
Logbitp-env60
Given an ALST binding variables to 60-bit integers as in aig-vecsim60, we extract an ordinary, Boolean-valued alist by using the Ith bit of each variable.
Init-random-state
Create a fast alist binding each variable to a random 60-bit natural.
N-random-60-bit-nats
Generate a list of 60-bit naturals.
*60-bit-mask*
The largest 60-bit natural, all ones.