• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
        • Symbolic-test-vectors
          • Defstv
          • Stv-compile
          • Symbolic-test-vector-format
          • Stv-implementation-details
          • Compiled-stv-p
          • Stv-run-for-all-dontcares
          • Stv-run
          • Stv-process
            • Processed-stv-p
              • Processed-stv
              • Make-processed-stv
              • Change-processed-stv
              • Honsed-processed-stv
              • Make-honsed-processed-stv
              • Processed-stv->user-stv
              • Processed-stv->relevant-signals
              • Processed-stv->name
              • Processed-stv->compiled-stv
            • Stv-fully-general-simulation-run
            • Stv-fully-general-in-alists
            • Stv-run-esim-debug
            • Stv-extract-relevant-signals
            • Stv-fully-general-st-alist
            • Stv-run-esim
          • Stv-run-check-dontcares
          • Symbolic-test-vector-composition
          • Stv-expand
          • Stv-easy-bindings
          • Stv-debug
          • Stv-run-squash-dontcares
          • Stvdata-p
          • Stv-doc
          • Stv2c
          • Stv-widen
          • Stv-out->width
          • Stv-in->width
          • Stv-number-of-phases
          • Stv->outs
          • Stv->ins
          • Stv-suffix-signals
          • Stv->vars
        • Esim-primitives
        • E-conversion
        • Esim-steps
        • Patterns
        • Mod-internal-paths
        • Defmodules
        • Esim-simplify-update-fns
        • Esim-tutorial
        • Esim-vl
      • Vl2014
      • Sv
      • Fgl
      • Vwsim
      • Vl
      • X86isa
      • Svl
      • Rtl
    • Software-verification
    • Math
    • Testing-utilities
  • Stv-process

Processed-stv-p

Representation of a processed STV.

(processed-stv-p x) is a std::defaggregate of the following fields.

  • name — A name for this STV.
        Invariant (symbolp name).
  • user-stv — The user-level, pre-compiled STV. This may be useful when generating documentation for STVs.
  • compiled-stv — A compiled-stv-p, should be the compiled version of the user's STV; see stv-compile.
        Invariant (compiled-stv-p compiled-stv).
  • relevant-signals — (out/int sim var bit → sexpr) alist.

Source link: processed-stv-p

You should probably read stv-implementation-details to understand these fields.

The relevant-signals is an alist computed by stv-process that maps each the bits for each internal/output simulation variable to already-restricted 4v-sexprs. That is, these s-expressions are generally in terms of the input simulation variable bits, and ready to be evaluated by stv-run.

Historically we had another field that could also optionally store pre-computed snapshots for debugging. We took this out because it could make stv-run a lot slower during GL proofs. The snapshots were huge, and this really slowed down GL's gl-concrete-lite check.

Subtopics

Processed-stv
Raw constructor for processed-stv-p structures.
Make-processed-stv
Constructor macro for processed-stv-p structures.
Change-processed-stv
A copying macro that lets you create new processed-stv-p structures, based on existing structures.
Honsed-processed-stv
Raw constructor for honsed processed-stv-p structures.
Make-honsed-processed-stv
Constructor macro for honsed processed-stv-p structures.
Processed-stv->user-stv
Access the user-stv field of a processed-stv-p structure.
Processed-stv->relevant-signals
Access the relevant-signals field of a processed-stv-p structure.
Processed-stv->name
Access the name field of a processed-stv-p structure.
Processed-stv->compiled-stv
Access the compiled-stv field of a processed-stv-p structure.