Tail Recursion Modulo Cons Optimization in CakeML

dc.contributor.authorWiese, Ry
dc.contributor.departmentChalmers tekniska högskola / Institutionen för data och informationstekniksv
dc.contributor.departmentChalmers University of Technology / Department of Computer Science and Engineeringen
dc.contributor.examinerAbel, Andreas
dc.contributor.supervisorMyreen, Magnus
dc.date.accessioned2026-08-26T08:34:08Z
dc.date.issued2026
dc.date.submitted
dc.description.abstractIn this project, the Tail Recursion Modulo Cons (TMC) optimization is implemented in the end-to-end verified CakeML compiler. The optimization makes tail recursive those functions which contain a recursive call nested inside one or more constructors. The TMC transformation is applied in the bytecode-value intermediate language (BVI) and rewrites functions in a way that cannot be done manually in CakeML source code. The syntax and semantics of BVI are extended with three new language constructs, and a new compiler phase is added to rewrite BVI programs using the new constructs. The compiler is implemented and formally verified in the HOL4 interactive theorem prover, and included in the project is a mechanized proof that the transformation produces code that is semantically equivalent to the original.
dc.identifier.coursecodeDATX05
dc.identifier.urihttps://hdl.handle.net/20.500.12380/312264
dc.language.isoeng
dc.setspec.uppsokTechnology
dc.subjectComputer Science, Formal Verification, Verification, Compilers, Optimiza tion, CakeML, HOL4, End-To-End Verification
dc.titleTail Recursion Modulo Cons Optimization in CakeML
dc.type.degreeExamensarbete för masterexamensv
dc.type.degreeMaster's Thesisen
dc.type.uppsokH
local.programmeComputer science -algorithms, languages and logic (MPALG), MSc

Ladda ner

Original bundle

Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
CSE 26-163 RW.pdf
Size:
1.29 MB
Format:
Adobe Portable Document Format

License bundle

Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
license.txt
Size:
2.35 KB
Format:
Item-specific license agreed upon to submission
Description: