Chapter 8ARS & Confluenceslides.en.pdf:368-369

Abstract Reduction Systems

A set + a binary relation

Def 3.2ARS
Concept

An Abstract Reduction System (ARS) is the simplest possible "things that
rewrite" model: a pair A,\langle A, \to \rangle where:

  • AA is a set (the things you can rewrite)
  • A×A\to \subseteq A \times A is a binary relation (the one-step reduction)

The reflexive-transitive closure \to^* captures "reduces in zero or more
steps". Sometimes we write 1\to^1 to be explicit about the one-step relation.

Difference from transition systems. A transition system has THREE
components (states, actions, transitions). An ARS has TWO (a set, a relation).
You can recover the actions by labelling the relation, but the ARS is purely
about reachability: given aa, which bb can you reach? This is a useful
abstraction when the actions don't matter — only the structure of rewriting
does.

Examples of ARS:
- Arithmetic simplification: 2+242 + 2 \to 4
- Lambda calculus: (λx.x)yy(\lambda x. x) y \to y
- Unification: a substitution σ\sigma reduces a formula by applying it
- Term rewriting: x+0xx + 0 \to x
- Grammar derivation (from Ch7!): SaSbS \Rightarrow aSb

Observation. Every ARS A,\langle A, \to \rangle is the same thing as a
directed graph with vertex set AA and edge set \to. The reverse is also
true: any directed graph can be viewed as an ARS.

The point of using ARS instead of "just a graph" is that ARS comes with
terminology and theorems (confluence, termination, Newman's lemma) that we
study next.

Worked example
Step 0 of 2
Practice — score 100% to advance
Multiple choice
Q1
What is an ARS?
Q2
How does an ARS differ from a transition system?
Q3
What does \to^* mean?
Q4
Which is NOT an example of an ARS?
Match definitions
Match each concept on the left to its definition on the right.
Loading…