Date of Award

6-2021

Degree Name

MS in Computer Science

Department/Program

Computer Science

College

College of Engineering

Advisor

John B. Clements

Advisor Department

Computer Science

Advisor College

College of Engineering

Abstract

We present a proof of correctness for a pass of the Chez Scheme compiler over a subset of the Scheme programming language. To improve trust in our proof approach, we provide two different validation frameworks. The first, created with the Coq proof assistant, is a partial mechanization of the proof, notably implementing a formal semantics for our subset of Scheme. This framework was designed to serve as a basis for the future work of a complete mechanization of our proof. The second framework uses an existing implementation of the Scheme semantics to demonstrate correctness of the pass on a variety of individual examples. We discuss our proof and frameworks in-depth, and give a historical background on compiler correctness proofs and their mechanization.

Share

COinS