Skip to content

Abstracts.2021.Reduction

Nacho edited this page Nov 5, 2021 · 10 revisions

Reduction-based Normalization

by Nachiappan Valliappan

Abstract

Normalization is typically achieved for terms in a language by reducing them in accordance with a set of rewrite rules. What is reduction? What is a rewrite rule? How does one implement a normalizer using reduction? Why would anybody implement a normalizer (let alone using reduction)? The goal of this session is to answer these questions, and provide a recap on reduction-based normalization (*) and basic concepts in term rewriting. We will use a language for simple arithmetic expressions as the object of study and implement a normalizer for it in Agda.

(*) Often simply called "normalization". The emphasis "reduction-based" goes to highlight the difference from the so-called "reduction-free" technique Normalization-by-Evaluation.

Code and Exercises

References

Bibliography

Clone this wiki locally