• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Community
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
      • Kestrel-books
        • Crypto-hdwallet
        • Apt
        • Error-checking
        • Fty-extensions
        • Isar
        • Kestrel-utilities
        • Set
        • Soft
        • C
          • Syntax-for-tools
          • Atc
          • Language
          • Transformation-tools
            • Simpadd0
              • Simpadd0-implementation
                • Simpadd0-event-generation
                  • Simpadd0-exprs/decls/stmts
                  • Simpadd0-fundef
                  • Simpadd0-expr-cond
                  • Simpadd0-expr-binary
                  • Simpadd0-block-item-list-cons
                  • Simpadd0-block-item-list-one
                  • Simpadd0-block-item-stmt
                  • Simpadd0-gen-expr-pure-thm
                  • Simpadd0-expr-cast
                  • Simpadd0-stmt-return
                  • Simpadd0-gen-expr-asg-thm
                  • Simpadd0-gen-stmt-thm
                  • Simpadd0-gen-from-params
                  • Simpadd0-gen-block-item-list-thm
                  • Simpadd0-expr-unary
                  • Simpadd0-gen-param-thms
                  • Simpadd0-gen-block-item-thm
                  • Simpadd0-expr-const
                  • Simpadd0-stmt-expr
                  • Simpadd0-gout
                    • Simpadd0-goutp
                    • Simpadd0-gout-fix
                    • Simpadd0-gout-equiv
                    • Make-simpadd0-gout
                    • Simpadd0-gout->names-to-avoid
                    • Simpadd0-gout->events
                    • Simpadd0-gout->vartys
                    • Simpadd0-gout->thm-name
                    • Simpadd0-gout->thm-index
                    • Change-simpadd0-gout
                  • Simpadd0-expr-ident
                  • Simpadd0-gen-init-scope-thm
                  • Simpadd0-gin
                  • Simpadd0-expr-paren
                  • Simpadd0-vartys-from-valid-table
                  • Simpadd0-extdecl-list
                  • Simpadd0-transunit-ensemble
                  • Simpadd0-filepath-transunit-map
                  • Simpadd0-extdecl
                  • Simpadd0-gen-var-assertions
                  • Simpadd0-transunit
                  • Simpadd0-code-ensemble
                  • Simpadd0-join-vartys
                  • C::compustate-has-var-with-type-p
                  • Simpadd0-block-item-list-empty
                  • Simpadd0-tyspecseq-to-type
                  • Simpadd0-gin-update
                  • Simpadd0-gen-everything
                  • Irr-simpadd0-gout
                • Simpadd0-process-inputs-and-gen-everything
                • Simpadd0-fn
                • Simpadd0-input-processing
                • Simpadd0-macro-definition
              • Simpadd0-expr-option
              • Simpadd0-structdeclor-list
              • Simpadd0-structdecl-list
              • Simpadd0-spec/qual-list
              • Simpadd0-param-declon-list
              • Simpadd0-initdeclor-list
              • Simpadd0-dirabsdeclor-option
              • Simpadd0-dirabsdeclor
              • Simpadd0-desiniter-list
              • Simpadd0-absdeclor-option
              • Simpadd0-struni-spec
              • Simpadd0-structdeclor
              • Simpadd0-structdecl
              • Simpadd0-statassert
              • Simpadd0-spec/qual
              • Simpadd0-param-declor
              • Simpadd0-param-declon
              • Simpadd0-member-designor
              • Simpadd0-initer-option
              • Simpadd0-initdeclor
              • Simpadd0-genassoc-list
              • Simpadd0-genassoc
              • Simpadd0-expr
              • Simpadd0-enumspec
              • Simpadd0-enumer-list
              • Simpadd0-dirdeclor
              • Simpadd0-desiniter
              • Simpadd0-designor-list
              • Simpadd0-designor
              • Simpadd0-declor-option
              • Simpadd0-decl-spec-list
              • Simpadd0-decl-spec
              • Simpadd0-decl-list
              • Simpadd0-const-expr-option
              • Simpadd0-const-expr
              • Simpadd0-block-item-list
              • Simpadd0-align-spec
              • Simpadd0-absdeclor
              • Simpadd0-type-spec
              • Simpadd0-tyname
              • Simpadd0-stmt
              • Simpadd0-label
              • Simpadd0-initer
              • Simpadd0-expr-list
              • Simpadd0-enumer
              • Simpadd0-declor
              • Simpadd0-decl
              • Simpadd0-block-item
            • Splitgso
            • Constant-propagation
            • Specialize
            • Split-fn
            • Split-fn-when
            • Copy-fn
            • Split-all-gso
            • Rename
            • Utilities
          • Representation
          • Insertion-sort
          • Pack
        • Bv
        • Imp-language
        • Event-macros
        • Java
        • Riscv
        • Ethereum
        • Bitcoin
        • Zcash
        • Yul
        • ACL2-programming-language
        • Prime-fields
        • Json
        • Syntheto
        • File-io-light
        • Cryptography
        • Number-theory
        • Lists-light
        • Axe
        • Builtins
        • Solidity
        • Helpers
        • Htclient
        • Typed-lists-light
        • Arithmetic-light
      • X86isa
      • Axe
      • Execloader
    • Math
    • Testing-utilities
  • Simpadd0-event-generation

Simpadd0-gout

General outputs for transformation functions.

This is a product type introduced by fty::defprod.

Fields
events — pseudo-event-form-list
Cumulative list of generated theorems.
thm-name — symbolp
Name of the theorem generated by the transformation function. The theorem concerns the transformation of the C construct that the transformation function operates on. This is nil if no theorem is generated.
thm-index — posp
Updated numeric index to generate unique theorem names; this is updated from the homonymous component of simpadd0-gin.
names-to-avoid — symbol-list
Updated list of event names to avoid; this is updated from the homonymous component of simpadd0-gin.
vartys — ident-type-map
Variables for which the generated theorem (if any) has hypotheses about the variables being in the computation state and having values of the appropriate types.

The transformation functions return as output the transformed construct, which has a different type for each transformation function. But each function also returns certain common outputs, which we put into this data structure for modularity and to facility extension.

Subtopics

Simpadd0-goutp
Recognizer for simpadd0-gout structures.
Simpadd0-gout-fix
Fixing function for simpadd0-gout structures.
Simpadd0-gout-equiv
Basic equivalence relation for simpadd0-gout structures.
Make-simpadd0-gout
Basic constructor macro for simpadd0-gout structures.
Simpadd0-gout->names-to-avoid
Get the names-to-avoid field from a simpadd0-gout.
Simpadd0-gout->events
Get the events field from a simpadd0-gout.
Simpadd0-gout->vartys
Get the vartys field from a simpadd0-gout.
Simpadd0-gout->thm-name
Get the thm-name field from a simpadd0-gout.
Simpadd0-gout->thm-index
Get the thm-index field from a simpadd0-gout.
Change-simpadd0-gout
Modifying constructor for simpadd0-gout structures.