Certification Problem

Input (COPS 506)

We consider the TRS containing the following rules:

f(f(f(x))) a (1)
f(f(a)) a (2)
f(a) a (3)
f(f(g(g(x)))) f(a) (4)
g(f(a)) a (5)
g(a) a (6)

The underlying signature is as follows:

{f/1, a/0, g/1}

Property / Task

Prove or disprove confluence.

Answer / Result

Yes.

Proof (by csi @ CoCo 2021)

1 Redundant Rules Transformation

To prove that the TRS is (non-)confluent, we show (non-)confluence of the following modified system:

g(a) a (6)
g(f(a)) a (5)
f(f(g(g(x)))) f(a) (4)
f(a) a (3)
f(f(a)) a (2)
f(f(f(x))) a (1)
f(f(g(a))) a (7)
f(f(g(a))) f(a) (8)

All redundant rules that were added or removed can be simulated in 2 steps .

1.1 Critical Pair Closing System

Confluence is proven using the following terminating critical-pair-closing-system R:

f(f(g(a))) f(a) (8)
f(f(a)) a (2)
f(a) a (3)
f(f(f(x))) a (1)
g(a) a (6)

1.1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[a] = 1
[f(x1)] = 1 · x1 + 2
[g(x1)] = 4 · x1 + 2
all of the following rules can be deleted.
f(f(g(a))) f(a) (8)
f(f(a)) a (2)
f(a) a (3)
f(f(f(x))) a (1)
g(a) a (6)

1.1.1.1 R is empty

There are no rules in the TRS. Hence, it is terminating.