• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
      • Theories
      • Rule-classes
      • Proof-builder
      • Recursion-and-induction
      • Hons-and-memoization
      • Events
      • Parallelism
      • History
      • Programming
      • Operational-semantics
      • Real
      • Start-here
      • Debugging
      • Miscellaneous
      • Output-controls
      • Macros
        • Make-event
        • Defmacro
        • Untranslate-patterns
        • Tc
        • Trans*
        • Macro-aliases-table
        • Macro-args
        • Defabbrev
        • User-defined-functions-table
        • Trans
        • Untranslate-for-execution
          • Convert-subexpression-to-mv
          • Ute-term-p
            • Ute-termlist-p
          • Reincarnate-mvs
          • Match-cons-nest
        • Add-macro-fn
        • Check-vars-not-free
        • Safe-mode
        • Macro-libraries
        • Trans1
        • Defmacro-untouchable
        • Set-duplicate-keys-action
        • Add-macro-alias
        • Magic-macroexpand
        • Defmacroq
        • Trans!
        • Remove-macro-fn
        • Remove-macro-alias
        • Add-binop
        • Untrans-table
        • Trans*-
        • Remove-binop
        • Tcp
        • Tca
      • Interfacing-tools
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • Math
    • Testing-utilities
  • Untranslate-for-execution

Ute-term-p

Recognize the kinds of terms that can be processed by untranslate-for-execution.

Signature
(ute-term-p x) → *

These are similar to pseudo-termps, but we also explicitly support mv-let and mv forms.

Theorem: ute-termlist-p-when-atom

(defthm ute-termlist-p-when-atom
  (implies (atom x)
           (equal (ute-termlist-p x) (not x))))

Theorem: ute-termlist-p-of-cons

(defthm ute-termlist-p-of-cons
  (equal (ute-termlist-p (cons a x))
         (and (ute-term-p a)
              (ute-termlist-p x))))

Theorem: true-listp-when-ute-termlist-p

(defthm true-listp-when-ute-termlist-p
  (implies (ute-termlist-p x)
           (true-listp x))
  :rule-classes :compound-recognizer)

Theorem: ute-term-p-of-car-when-ute-termlist-p

(defthm ute-term-p-of-car-when-ute-termlist-p
  (implies (ute-termlist-p x)
           (ute-term-p (car x))))

Theorem: ute-termlist-p-of-cdr-when-ute-termlist-p

(defthm ute-termlist-p-of-cdr-when-ute-termlist-p
  (implies (ute-termlist-p x)
           (ute-termlist-p (cdr x))))

Theorem: ute-termlist-p-of-append

(defthm ute-termlist-p-of-append
  (equal (ute-termlist-p (append x y))
         (and (ute-termlist-p (list-fix x))
              (ute-termlist-p y))))

Theorem: ute-termlist-p-of-rev

(defthm ute-termlist-p-of-rev
  (equal (ute-termlist-p (rev x))
         (ute-termlist-p (list-fix x))))

Subtopics

Ute-termlist-p