Skip to content

objectionary/proof

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Proof of Confluence for πœ‘-calculus

Formalization of πœ‘-calculus variants and corresponding confluence results.

About

We aim to formalize, using a computer proof assistant Lean 4, πœ‘-calculus and the rewrite rules for normalization of πœ‘-programs (see https://github.com/objectionary/normalizer). We are particularly interested in the confluence of the rewrite system. To formalize this, we first focus on the minimal version of the calculus1, and then gradually add features to match EO2.

Installation

If you use VS Code, get lean4 extension. Otherwise, install elan, version manager for Lean.

In VScode, make sure to open the root directory of the project. Then run the following from the Terminal:

lake build

Footnotes

  1. Nikolai Kudasov and Violetta Sim. 2023. Formalizing πœ‘-Calculus: A Purely Object-Oriented Calculus of Decorated Objects. In Proceedings of the 24th ACM International Workshop on Formal Techniques for Java-like Programs (FTfJP '22). Association for Computing Machinery, New York, NY, USA, 29–36. https://doi.org/10.1145/3611096.3611103 ↩

  2. Yegor Bugayenko. 2022. EOLANG and Ο†-calculus. https://arxiv.org/abs/2111.13384 ↩