YES
Confluence Proof
Confluence Proof
by csi
Input
The rewrite relation of the following TRS is considered.
a(x) |
→ |
x |
a(b(x)) |
→ |
c(b(b(a(a(x))))) |
b(x) |
→ |
c(x) |
c(c(x)) |
→ |
x |
Proof
1 Decreasing Diagrams
1.1 Relative Termination Proof
The duplicating rules (R) terminate relative to the other rules (S).
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).
-
a(x)→x ↦ 0
-
a(b(x))→c(b(b(a(a(x))))) ↦ 1
-
b(x)→c(x) ↦ 0
-
c(c(x))→x ↦ 0
All critical pairs are joinable:
-
b(x)←c(c(b(x)))←c(b(b(x)))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
b(x)←c(c(b(x)))←c(c(b(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
b(x)←c(c(b(x)))←c(c(b(a(x))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
b(x)←b(a(x))←c(c(b(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
b(x)←b(a(x))←c(c(b(a(x))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
b(x)←b(a(x))←b(a(a(x)))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
c(b(b(a(a(x26)))))→c(b(b(a(x26))))→c(b(b(x26)))→c(c(b(x26)))→b(x26)
-
c(b(b(a(a(x26)))))→c(b(b(a(x26))))→c(c(b(a(x26))))→c(c(b(x26)))→b(x26)
-
c(b(b(a(a(x26)))))→c(c(b(a(a(x26)))))→c(c(b(a(x26))))→c(c(b(x26)))→b(x26)
-
c(b(b(a(a(x26)))))→c(b(b(a(x26))))→c(c(b(a(x26))))→b(a(x26))→b(x26)
-
c(b(b(a(a(x26)))))→c(c(b(a(a(x26)))))→c(c(b(a(x26))))→b(a(x26))→b(x26)
-
c(b(b(a(a(x26)))))→c(c(b(a(a(x26)))))→b(a(a(x26)))→b(a(x26))→b(x26)
-
a(c(x))→c(x)←c(c(c(x)))←c(b(c(x)))←c(b(b(x)))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(b(c(x)))←c(b(c(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(b(c(x)))←c(b(c(a(x))))←c(b(c(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(b(x)))←c(b(b(x)))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(b(x)))←c(c(b(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(b(x)))←c(c(b(a(x))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(c(a(x))))←c(b(c(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(c(a(x))))←c(b(c(a(x))))←c(b(c(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(c(a(x))))←c(c(b(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(c(a(x))))←c(c(b(a(x))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(c(a(x))))←c(c(c(a(a(x)))))←c(b(c(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(c(c(x)))←c(c(c(a(x))))←c(c(c(a(a(x)))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←b(x)←c(c(b(x)))←c(b(b(x)))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←b(x)←c(c(b(x)))←c(c(b(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←b(x)←c(c(b(x)))←c(c(b(a(x))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←b(x)←b(a(x))←c(c(b(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←b(x)←b(a(x))←c(c(b(a(x))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←b(x)←b(a(x))←b(a(a(x)))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(c(c(a(x))))←c(b(c(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(c(c(a(x))))←c(b(c(a(x))))←c(b(c(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(c(c(a(x))))←c(c(b(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(c(c(a(x))))←c(c(b(a(x))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(c(c(a(x))))←c(c(c(a(a(x)))))←c(b(c(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(c(c(a(x))))←c(c(c(a(a(x)))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←b(a(x))←c(c(b(a(x))))←c(b(b(a(x))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←b(a(x))←c(c(b(a(x))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←b(a(x))←b(a(a(x)))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(a(a(x)))←c(c(c(a(a(x)))))←c(b(c(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(a(a(x)))←c(c(c(a(a(x)))))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
a(c(x))→c(x)←c(a(x))←c(a(a(x)))←b(a(a(x)))←c(c(b(a(a(x)))))←c(b(b(a(a(x)))))
-
c(x28)
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)!