Skip to content

ndm767/VLambda

Repository files navigation

VLambda

Lean formalization of the untyped lambda calculus using De Bruijn indices

Features

  • De Bruijn representation of lambda terms
  • λβ equivalence relation
  • Basic combinators, boolean encodings, and Church numerals
  • Proof of the first recursion theorem proven with both Y and θ combinators
  • Lambda calculus self-encoder and interpreter with injectivity and correctness proofs

Project Structure

File Contents
VLambda/DBTerm.lean Syntax of lambda terms (DBTerm) and λβ equivalence relation (LB_eq)
VLambda/ShiftLemmas.lean Useful lemmas about shift and shift_down (used for β-substitution)
VLambda/Comb.lean Combinators
VLambda/Church.lean Church numerals
VLambda/RecThm.lean First recursion theorem
VLambda/SelfEval.lean Self-encoding and evaluation

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages