NO
Non-Confluence Proof
Non-Confluence Proof
by ACP
Input
The rewrite relation of the following TRS is considered.
a |
→ |
h(g(b)) |
a |
→ |
h(c) |
b |
→ |
g(b) |
h(g(x)) |
→ |
g(h(x)) |
g(x) |
→ |
h(x) |
Proof
1 Non-Joinable Fork
The system is not confluent due to the following forking derivations.
t0
|
= |
a |
|
→ε
|
h(g(b)) |
|
→ε
|
g(h(b)) |
|
= |
t2
|
The two resulting terms cannot be joined for the following reason:
- We take the usable rules of the first term (w.r.t. the TRS for the first term)
and the usable rules of the second term (w.r.t. the TRS for the second term).
Then the terms are not joinable w.r.t. the resulting TRSs.
- We filter all terms and rules w.r.t. the following argument filter.
π(b) |
= |
[] |
π(c) |
= |
[] |
π(g) |
= |
[1] |
π(h) |
= |
[1] |
Then the resulting terms are not joinable w.r.t. the resulting TRSs.
- We take the usable rules of the first term (w.r.t. the TRS for the first term)
and the usable rules of the second term (w.r.t. the TRS for the second term).
Then the terms are not joinable w.r.t. the resulting TRSs.
- The first mentioned term is strictly larger than the second one. Here, the following discrimination pair has
been used w.r.t. the following interpretation.
Moreover, the (reversed) rules are weakly decreasing.
The discrimination pair is given by a
recursive path order with the following precedence and status
prec(b) |
= |
2 |
|
stat(b) |
= |
mul
|
prec(c) |
= |
2 |
|
stat(c) |
= |
mul
|
prec(g) |
= |
1 |
|
stat(g) |
= |
mul
|
prec(h) |
= |
1 |
|
stat(h) |
= |
mul
|
Tool configuration
ACP