• Top
    • Documentation
    • Books
    • Boolean-reasoning
      • Ipasir
      • Aignet
        • Base-api
        • Aignet-construction
        • Representation
        • Aignet-copy-init
        • Aignet-simplify-with-tracking
        • Aignet-simplify-marked-with-tracking
        • Aignet-cnf
        • Aignet-simplify-marked
        • Aignet-complete-copy
        • Aignet-transforms
          • Aignet-output-ranges
          • Aignet-comb-transforms
            • Fraig
            • Parametrize
            • Observability-fix
            • Constprop
            • Apply-m-assumption-n-output-output-transform-default
            • Balance
            • Apply-n-output-comb-transform-default
            • Apply-comb-transform-default
            • Obs-constprop
            • Rewrite
            • Comb-transform
            • Abc-comb-simplify
            • Prune
            • Rewrite!
            • M-assumption-n-output-comb-transform->name
            • N-output-comb-transform->name
            • Comb-transform->name
            • N-output-comb-transformlist
            • M-assumption-n-output-comb-transformlist
            • Comb-transformlist
            • Apply-comb-transform
              • Apply-comb-transforms
              • Apply-comb-transform!
              • Apply-comb-transforms!
            • Aignet-m-assumption-n-output-transforms
            • Aignet-n-output-comb-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
      • Community
      • Proof-automation
      • Macro-libraries
      • ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Apply-comb-transform

    Apply-comb-transforms!

    Signature
    (apply-comb-transforms! aignet transforms output-ranges state) 
      → 
    (mv new-aignet new-output-ranges new-state)
    Arguments
    output-ranges — Guard (aignet-output-range-map-p output-ranges).

    Definitions and Theorems

    Function: apply-comb-transforms!

    (defun apply-comb-transforms!
           (aignet transforms output-ranges state)
      (declare (xargs :stobjs (aignet state)))
      (declare (xargs :guard (aignet-output-range-map-p output-ranges)))
      (declare (xargs :guard t))
      (let ((__function__ 'apply-comb-transforms!))
        (declare (ignorable __function__))
        (prog2$
             (print-aignet-stats "Input" aignet)
             (time$ (apply-comb-transforms!-core
                         aignet transforms output-ranges state)
                    :msg "All transforms: ~st seconds, ~sa bytes.~%"))))