2000 character limit reached
A Proof-Generating C Code Generator for ACL2 Based on a Shallow Embedding of C in ACL2 (2205.11708v1)
Published 24 May 2022 in cs.LO, cs.PL, and cs.SE
Abstract: 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.