Skip to content

Formalization of normalization by evaluation for the fine-grain call-by-value language extended with algebraic effect theories

Notifications You must be signed in to change notification settings

danelahman/Normalization-By-Evaluation

Repository files navigation

Normalization-By-Evaluation

Formalization of normalization by evaluation for a fine-grained call-by-value language extended with algebraic effects.

AlgebraicSignaturesVersion

  - The normalization by evaluation algorithm and its correctness proofs for a language extended with simple algebraic signatures (no equations, no parameters)

ParametersEquationsPERsVersion

  - The version of normalization by evaluation and its correctness proofs for a language extended with parametrized algebraic signatures and equations. Normalization finds normal forms up-to PERs.

StateNormalizationVersion

  - Work in progress implementation of normalization by evaluation for a language extended with algebraic operations for global state. Normalization uses a sum of two monads defined as a fixpoint of strictly positive functors and finds canonical normal forms (the state theory gets normalized).

OlderCode

  - Older code mostly from the MPhil dissertation time

NOTICE: The code has been tested on Agda version 2.3.1. Newer versions of Agda might cause Monad.agda throw strange pattern-matching errors.

About

Formalization of normalization by evaluation for the fine-grain call-by-value language extended with algebraic effect theories

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published