YES
Confluence Proof
Confluence Proof
by csi
Input
The rewrite relation of the following TRS is considered.
f(g(x)) |
→ |
h(x,x) |
g(a) |
→ |
b |
f(x) |
→ |
h(x,x) |
b |
→ |
a |
h(x,y) |
→ |
h(g(x),g(y)) |
g(x) |
→ |
x |
a |
→ |
b |
Proof
1 Decreasing Diagrams
1.1 Relative Termination Proof
The duplicating rules (R) terminate relative to the other rules (S).
1.1.1 Rule Removal
Using the
linear polynomial interpretation over the naturals
[b] |
= |
2 |
[f(x1)] |
= |
5 · x1 + 2 |
[a] |
= |
2 |
[g(x1)] |
= |
1 · x1 + 0 |
[h(x1, x2)] |
= |
1 · x1 + 4 · x2 + 0 |
all rules of R could be removed.
Moreover,
the
rules
g(a) |
→ |
b |
b |
→ |
a |
h(x,y) |
→ |
h(g(x),g(y)) |
g(x) |
→ |
x |
a |
→ |
b |
remain in S.
1.1.1.1 R is empty
There are no rules in the TRS R. Hence, R/S is relative terminating.
1.2 Rule Labeling
Confluence is proven, because all critical peaks can be joined decreasingly
using the following rule labeling function (rules that are not shown have label 0).
-
f(g(x))→h(x,x) ↦ 0
-
g(a)→b ↦ 6
-
f(x)→h(x,x) ↦ 1
-
b→a ↦ 0
-
h(x,y)→h(g(x),g(y)) ↦ 0
-
g(x)→x ↦ 5
-
a→b ↦ 0
All critical pairs are joinable:
-
h(x47,x47)→h(g(x47),g(x47))
-
f(b)→h(b,b)←h(a,b)←h(a,a)
-
f(b)→h(b,b)←h(b,a)←h(a,a)
-
f(b)→h(b,b)→h(b,a)←h(a,a)
-
f(b)→h(b,b)→h(a,b)←h(a,a)
-
f(b)→f(a)→h(a,a)
-
b←a
-
b→a
-
h(g(x),g(x))←h(x,x)
-
f(x)→h(x,x)
-
a←b
-
a→b
-
g(b)→b
Tool configuration
csi
- version: csi 1.2.5 [hg: unknown]
- strategy:
(if left-linear then (cr -dup;(( lpo -quasi || (matrix -dim 1 -ib 3 -ob 4 | matrix -dim 2 -ib 2 -ob 2 | matrix -dim 3 -ib 1 -ob 2 | arctic -dim 2 -ib 2 -ob 2) || (if duplicating then fail else (bounds -rt || bounds -rt -qc))[1] || poly -ib 2 -ob 4 -nl2 -heuristic 1 || fail )[5]*);shift -lstar);(rule_labeling | rule_labeling -left)?;decreasing else fail)!