• Top
    • Documentation
    • Books
    • Recursion-and-induction
    • Boolean-reasoning
    • Debugging
      • Break-rewrite
      • Proof-builder
      • Accumulated-persistence
      • Cgen
      • Proof-tree
      • Forward-chaining-reports
      • Print-gv
      • Dmr
      • Splitter
      • Guard-debug
      • Set-debugger-enable
      • Redo-flat
      • Set-check-invariant-risk
      • Time-tracker
      • Removable-runes
      • Efficiency
      • Tail-biting
      • Failed-forcing
      • Sneaky
        • Sneaky-mutate
        • Sneaky-push
        • Sneaky-incf
        • Sneaky-save
        • Sneaky-load
        • Sneaky-load-list
          • Sneaky-alist
          • Sneaky-pop
          • Sneaky-cw
          • Sneaky-delete
          • Sneaky-clear
        • Invariant-risk
        • Failure
        • Measure-debug
        • Dead-events
        • Remove-hyps
        • Type-prescription-debugging
        • Pstack
        • Set-register-invariant-risk
        • Trace
        • Walkabout
        • Disassemble$
        • Nil-goal
        • Cw-gstack
        • Set-guard-msg
        • Find-lemmas
        • Watch
        • Quick-and-dirty-subsumption-replacement-step
        • Profile-all
        • Profile-ACL2
        • Set-print-gv-defaults
        • Minimal-runes
        • Spacewalk
        • Try-gl-concls
        • Near-misses
      • Projects
      • Std
      • Proof-automation
      • Macro-libraries
      • ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Testing-utilities
      • Math
    • Sneaky

    Sneaky-load-list

    Load a list of values that were previously saved into the sneaky store.

    Signature
    (sneaky-load-list keys state) → (mv values state)
    Returns
    values — Type (true-listp values).

    See sneaky-load; this just loads a list of values instead of a single value.

    Definitions and Theorems

    Function: sneaky-load-list

    (defun sneaky-load-list (keys state)
           (declare (xargs :stobjs (state)))
           (declare (xargs :guard t))
           (let ((__function__ 'sneaky-load-list))
                (declare (ignorable __function__))
                (b* (((when (atom keys)) (mv nil state))
                     ((mv first state)
                      (sneaky-load (car keys) state))
                     ((mv rest state)
                      (sneaky-load-list (cdr keys) state)))
                    (mv (cons first rest) state))))

    Theorem: true-listp-of-sneaky-load-list.values

    (defthm true-listp-of-sneaky-load-list.values
            (b* (((mv common-lisp::?values ?state)
                  (sneaky-load-list keys state)))
                (true-listp values))
            :rule-classes :type-prescription)