A Proof-Generating C Code Generator for ACL2 Based on a Shallow Embedding of C in ACL2

Alessandro Coglio
(Kestrel Institute)

This paper describes a C code generator for ACL2 that recognizes ACL2 representations of C constructs, according to a shallow embedding of C in ACL2, and translates those representations to the represented C constructs. The code generator also generates ACL2 theorems asserting the correctness of the C code with respect to the ACL2 code. The code generator currently supports a limited but growing subset of C that already suffices for some interesting programs. This paper also offers a general perspective on language embedding and code generation.

In Rob Sumners and Cuong Chau: Proceedings Seventeenth International Workshop on the ACL2 Theorem Prover and its Applications (ACL2 2022), Austin, Texas, USA, 26th-27th May 2022, Electronic Proceedings in Theoretical Computer Science 359, pp. 185–201.
Published: 24th May 2022.

ArXived at: https://dx.doi.org/10.4204/EPTCS.359.15 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org