Search-engine friendly clone of the
ACL2 documentation
.
Top
Documentation
Books
Boolean-reasoning
Projects
Debugging
Std
Proof-automation
Macro-libraries
ACL2
Interfacing-tools
Hardware-verification
Software-verification
Kestrel-books
Crypto-hdwallet
Apt
Error-checking
Abnf
Fty-extensions
Isar
Kestrel-utilities
Soft
Bv
Imp-language
Event-macros
C
Atc
Atc-implementation
Atc-abstract-syntax
Atc-pretty-printer
Atc-event-and-code-generation
Atc-symbolic-computation-states
Atc-symbolic-execution-rules
Atc-gen-ext-declon-lists
Atc-function-and-loop-generation
Atc-statement-generation
Stmt-gin
Atc-gen-term-type-formula
Atc-gen-stmt
Stmt-gout
Atc-gen-expr
Atc-gen-block-item-var-asg
Atc-gen-return-stmt
Atc-gen-mbt-block-items
Atc-gen-if/ifelse-stmt
Atc-gen-cfun-call-stmt
Atc-gen-block-item-struct-scalar-asg
Atc-gen-block-item-struct-array-asg
Atc-gen-block-item-list-append
Atc-gen-block-item-integer-asg
Atc-gen-block-item-declon
Atc-gen-block-item-array-asg
Atc-gen-loop-stmt
Atc-gen-block-item-list-cons
Atc-uterm-to-components
Atc-gen-block-item-stmt
Lstmt-gin
Atc-gen-block-item-list-one
Atc-gen-block-item-var-decl
Atc-gen-block-item-asg
Atc-gen-call-result-and-endstate
Lstmt-gout
Atc-ensure-formals-not-lost
Atc-gen-block-item-list-none
Atc-var-assignablep
Atc-gen-uterm-result-and-type-formula
Atc-remove-extobj-args
Atc-affecting-term-for-let-p
Atc-vars-assignablep
Atc-make-lets-of-uterms
Atc-symbolp-list
Atc-make-mv-nth-terms
Atc-make-mv-lets-of-uterms
Atc-update-var-term-alist
Irr-stmt-gout
Irr-lstmt-gout
Atc-gen-fileset
Atc-gen-everything
Atc-gen-obj-declon
Atc-gen-fileset-event
Atc-tag-tables
Atc-expression-generation
Atc-generation-contexts
Atc-gen-wf-thm
Term-checkers-atc
Atc-variable-tables
Term-checkers-common
Atc-gen-init-fun-env-thm
Atc-gen-appconds
Read-write-variables
Atc-gen-thm-assert-events
Test*
Atc-gen-prog-const
Atc-gen-expr-bool
Atc-theorem-generation
Atc-tag-generation
Atc-gen-expr-pure
Atc-function-tables
Atc-object-tables
Fty-pseudo-term-utilities
Atc-term-recognizers
Atc-input-processing
Atc-shallow-embedding
Atc-process-inputs-and-gen-everything
Atc-table
Atc-fn
Atc-pretty-printing-options
Atc-types
Atc-macro-definition
Atc-tutorial
Syntax-for-tools
Language
Representation
Transformation-tools
Pack
Java
Bitcoin
Ethereum
Yul
Zcash
ACL2-programming-language
Prime-fields
Json
Syntheto
File-io-light
Number-theory
Cryptography
Lists-light
Builtins
Axe
Solidity
Std-extensions
Helpers
Htclient
Typed-lists-light
Arithmetic-light
X86isa
Axe
Execloader
Math
Testing-utilities
Atc-event-and-code-generation
Atc-statement-generation
Generation of C statements.
Subtopics
Stmt-gin
Inputs for C statement generation.
Atc-gen-term-type-formula
Generate a type formula for a term.
Atc-gen-stmt
Generate a C statement from an ACL2 term.
Stmt-gout
Outputs for C statement generation.
Atc-gen-expr
Generate a C expression from an ACL2 term that must be an expression term.
Atc-gen-block-item-var-asg
Generate a C block item statement that consists of an assignment to a variable.
Atc-gen-return-stmt
Generate a C return statement from an ACL2 term.
Atc-gen-mbt-block-items
Generate a list of block items from an ACL2 conditional with an
mbt
test.
Atc-gen-if/ifelse-stmt
Generate a C
if
or
if
-
else
statement from an ACL2 term.
Atc-gen-cfun-call-stmt
Generate a C block item statement that consists of a call of a
void
function.
Atc-gen-block-item-struct-scalar-asg
Generate a C block item statement that consists of an assignment to a scalar member of a structure.
Atc-gen-block-item-struct-array-asg
Generate a C block item statement that consists of an assignment to an element of an array member of a structure.
Atc-gen-block-item-list-append
Generate a list of block items by
append
ing two lists of block items.
Atc-gen-block-item-integer-asg
Generate a C block item statement that consists of an assignment to a pointed integer.
Atc-gen-block-item-declon
Generate a C block item that consists of an object declaration.
Atc-gen-block-item-array-asg
Generate a C block item statement that consists of an assignment to an array element.
Atc-gen-loop-stmt
Generate a C loop statement from an ACL2 term.
Atc-gen-block-item-list-cons
Generate a list of block items by
cons
ing a block item to a list of block items.
Atc-uterm-to-components
Split a term into component terms.
Atc-gen-block-item-stmt
Generate a C block item that consists of a given statement.
Lstmt-gin
Inputs for C loop statement generation.
Atc-gen-block-item-list-one
Generate a list of C block items that consists of a given item.
Atc-gen-block-item-var-decl
Generate a C block item statement that consists of a variable declaration.
Atc-gen-block-item-asg
Generate a C block item that consists of a given assignment.
Atc-gen-call-result-and-endstate
Generate a term representing the result value and a term representing the ending computation state of the execution of a C function call.
Lstmt-gout
Outputs for C loop statement generation.
Atc-ensure-formals-not-lost
Ensure that no affected formals are lost.
Atc-gen-block-item-list-none
Generate an empty list of block items.
Atc-var-assignablep
Check if a variable is assignable, based on whether it is in the innermost scope and based on the variables being currently affected.
Atc-gen-uterm-result-and-type-formula
Generates a result term and a type formula for a term.
Atc-remove-extobj-args
Remove from a list of argument terms the ones that are external objects.
Atc-affecting-term-for-let-p
Check if a term
term
has the basic structure required for representing code affecting variables in
(
let
((var term)) body)
or
(
mv-let
(var1 ... varn) term body)
.
Atc-vars-assignablep
Lift
atc-var-assignablep
to lists.
Atc-make-lets-of-uterms
Create a list of
let
s or
let*
s with the same bindings and with bodies from a list of terms, in the same order.
Atc-symbolp-list
Check if each element of a list is a symbol or not, returning a list of booleans, one per element.
Atc-make-mv-nth-terms
Create a list of
mv-nth
s applied to a term for a list of indices.
Atc-make-mv-lets-of-uterms
Create a list of
mv-let
s with the same bindings and with bodies from a list of terms, in the same order.
Atc-update-var-term-alist
Update an alist from symbols to terms.
Irr-stmt-gout
An irrelevant output for C statement generation.
Irr-lstmt-gout
An irrelevant output for C loop statement generation.