• 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
        • Syntax-for-tools
        • Atc
        • Language
        • Representation
        • Transformation-tools
          • Simpadd0
            • Simpadd0-implementation
              • Simpadd0-event-generation
                • Simpadd0-exprs/decls/stmts
                • Simpadd0-fundef
                • Simpadd0-expr-cond
                • Simpadd0-expr-binary
                • Simpadd0-gen-expr-pure-thm
                • Simpadd0-expr-cast
                • Simpadd0-gen-block-item-list-thm
                • Simpadd0-gen-stmt-thm
                • Simpadd0-gen-block-item-thm
                • Simpadd0-stmt-return
                • Simpadd0-gen-from-params
                • Simpadd0-expr-unary
                • Simpadd0-gout
                  • Simpadd0-goutp
                  • Simpadd0-gout-fix
                  • Make-simpadd0-gout
                  • Simpadd0-gout-equiv
                  • Simpadd0-gout->names-to-avoid
                  • Simpadd0-gout->events
                  • Change-simpadd0-gout
                  • Simpadd0-gout->vartys
                  • Simpadd0-gout->thm-name
                  • Simpadd0-gout->thm-index
                  • Simpadd0-gout->diffp
                • Simpadd0-block-item-stmt
                • Simpadd0-expr-const
                • Simpadd0-block-item-list-one
                • Simpadd0-gen-param-thms
                • Simpadd0-expr-ident
                • Simpadd0-gen-init-scope-thm
                • Simpadd0-gin
                • Simpadd0-expr-paren
                • Simpadd0-filepath-transunit-map
                • Simpadd0-extdecl-list
                • Simpadd0-extdecl
                • Simpadd0-transunit-ensemble
                • Simpadd0-transunit
                • Simpadd0-gen-var-hyps
                • 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-strunispec
            • 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
          • Split-fn
          • Specialize
          • Split-all-gso
          • Copy-fn
          • Rename
          • Utilities
        • Insertion-sort
        • Pack
      • Farray
      • Rp-rewriter
      • Instant-runoff-voting
      • Imp-language
      • Sidekick
      • Leftist-trees
      • Java
      • Taspi
      • Riscv
      • Bitcoin
      • 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
      • Aleo
      • Bigmems
      • Builtins
      • Execloader
      • Solidity
      • Paco
      • Concurrent-programs
      • Bls12-377-curves
    • Debugging
    • Std
    • Community
    • Proof-automation
    • ACL2
    • Macro-libraries
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • 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 in scope, with their types.
diffp — booleanp
Flag saying whether the C construct was transformed into something different by the transformation function.

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.
Make-simpadd0-gout
Basic constructor macro for simpadd0-gout structures.
Simpadd0-gout-equiv
Basic equivalence relation 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.
Change-simpadd0-gout
Modifying constructor for simpadd0-gout structures.
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.
Simpadd0-gout->diffp
Get the diffp field from a simpadd0-gout.