DeepAI AI Chat
Log In Sign Up

Factorize Factorization

by   Beniamino Accattoli, et al.

We present a new technique for proving factorization theorems for compound rewriting systems in a modular way, which is inspired by Hindley-Rosen result for confluence. Factorization – a simple form of standardization – is concerned with reduction strategies, i.e. how a result is computed. The technique is first developed abstractly. In particular, we isolate a simple sufficient condition (called linear swap) for lifting factorization from components to the compound system. We then closely analyze some common factorization schemas for the lambda-calculus, and show that the technique simplifies even more, reducing to the test of elementary local commutations. Concretely, we apply our technique to diverse extensions of the λ-calculus, among which de' Liguoro and Piperno's non-deterministic lambda-calculus and – for call-by-value – Carraro and Guerrieri's shuffling calculus. For both calculi the literature contains factorization theorems. For each, we obtain a novel proof which is neat and strikingly short.


page 1

page 2

page 3

page 4


Factorization in Call-by-Name and Call-by-Value Calculi via Linear Logic (long version)

In each variant of the lambda-calculus, factorization and normalization ...

Factorization and Normalization, Essentially

Lambda-calculi come with no fixed evaluation strategy. Different strateg...

Formalized Lambek Calculus in Higher Order Logic (HOL4)

In this project, a rather complete proof-theoretical formalization of La...

On Randomised Strategies in the λ-Calculus (Long Version)

In this work we introduce randomised reduction strategies, a notion alre...

Proving Soundness of Extensional Normal-Form Bisimilarities

Normal-form bisimilarity is a simple, easy-to-use behavioral equivalence...

A Mechanised Proof of Gödel's Incompleteness Theorems using Nominal Isabelle

An Isabelle/HOL formalisation of Gödel's two incompleteness theorems is ...

The em-convex rewrite system

We introduce and study em (or "emergent"), a lambda calculus style rewri...