• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
      • Apt
      • Zfc
      • Acre
      • Milawa
      • Smtlink
      • Abnf
      • Vwsim
      • Isar
      • Wp-gen
      • Dimacs-reader
      • Pfcs
      • Legacy-defrstobj
      • Proof-checker-array
      • Soft
      • C
      • Farray
      • Rp-rewriter
        • Rp-ruleset
        • Defthmrp
        • Rp-rewriter/meta-rules
        • Rp-utilities
        • Rp-rewriter-demo
        • Rp-rewriter/debugging
        • Rp-rewriter/applications
          • Vescmul
          • Svex-simplify
            • Svexlist-simplify
            • Svex-alist-simplify
            • 4vec-to-svex
              • 4vec-to-svex-lst
          • Multiplier-verification
      • Instant-runoff-voting
      • Imp-language
      • Sidekick
      • Leftist-trees
      • Java
      • Taspi
      • Bitcoin
      • Riscv
      • Des
      • Ethereum
      • X86isa
      • Sha-2
      • Yul
      • Zcash
      • Proof-checker-itp13
      • Regex
      • ACL2-programming-language
      • Json
      • Jfkr
      • Equational
      • Cryptography
      • Poseidon
      • Where-do-i-place-my-book
      • Axe
      • Bigmems
      • Builtins
      • Execloader
      • Aleo
      • Solidity
      • Paco
      • Concurrent-programs
      • Bls12-377-curves
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • Math
    • Testing-utilities
  • Svex-simplify

4vec-to-svex

Try to convert a term composed of 4vec functions to its equivalent svex representation.

Signature
(4vec-to-svex term svexl-node-flg memoize-flg) → (mv err res)

Function: 4vec-to-svex-memoize-condition

(defun 4vec-to-svex-memoize-condition
       (term svexl-node-flg memoize-flg)
  (declare (ignorable term svexl-node-flg memoize-flg)
           (xargs :guard 't))
  memoize-flg)

Theorem: svexl-node-p-of-4vec-to-svex

(defthm svexl-node-p-of-4vec-to-svex
  (b* (((mv ?err ?res)
        (4vec-to-svex term svexl-node-flg memoize-flg)))
    (and (svexl-node-p res)
         (implies (not svexl-node-flg)
                  (svex-p res)))))

Theorem: svexl-nodelist-p-of-4vec-to-svex-lst

(defthm svexl-nodelist-p-of-4vec-to-svex-lst
  (b* (((mv ?err ?res-lst)
        (4vec-to-svex-lst lst svexl-node-flg memoize-flg)))
    (and (svexl-nodelist-p res-lst)
         (implies (not svexl-node-flg)
                  (svexlist-p res-lst)))))

Subtopics

4vec-to-svex-lst