0 CpxTRS
↳1 NestedDefinedSymbolProof (BOTH BOUNDS(ID, ID), 23 ms)
↳2 CpxTRS
↳3 RcToIrcProof (BOTH BOUNDS(ID, ID), 0 ms)
↳4 CpxTRS
↳5 CpxTrsToCdtProof (BOTH BOUNDS(ID, ID), 0 ms)
↳6 CdtProblem
↳7 CdtLeafRemovalProof (BOTH BOUNDS(ID, ID), 0 ms)
↳8 CdtProblem
↳9 CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID), 0 ms)
↳10 CdtProblem
↳11 CdtUsableRulesProof (⇔, 0 ms)
↳12 CdtProblem
↳13 CdtRuleRemovalProof (UPPER BOUND(ADD(n^1)), 76 ms)
↳14 CdtProblem
↳15 SIsEmptyProof (BOTH BOUNDS(ID, ID), 0 ms)
↳16 BOUNDS(1, 1)
f(a) → b
f(c) → d
f(g(x, y)) → g(f(x), f(y))
f(h(x, y)) → g(h(y, f(x)), h(x, f(y)))
g(x, x) → h(e, x)
f(a) → b
f(c) → d
f(h(x, y)) → g(h(y, f(x)), h(x, f(y)))
g(x, x) → h(e, x)
The duplicating contexts are:
f(h(x, []))
f(h([], y))
The defined contexts are:
g(h(x0, []), h(x2, x3))
g(h(x0, x1), h(x2, []))
As the TRS is an overlay system and the defined contexts and the duplicating contexts don't overlap, we have rc = irc.
f(a) → b
f(c) → d
f(h(x, y)) → g(h(y, f(x)), h(x, f(y)))
g(x, x) → h(e, x)
Tuples:
f(a) → b
f(c) → d
f(h(z0, z1)) → g(h(z1, f(z0)), h(z0, f(z1)))
g(z0, z0) → h(e, z0)
S tuples:
F(a) → c1
F(c) → c2
F(h(z0, z1)) → c3(G(h(z1, f(z0)), h(z0, f(z1))), F(z0), F(z1))
G(z0, z0) → c4
K tuples:none
F(a) → c1
F(c) → c2
F(h(z0, z1)) → c3(G(h(z1, f(z0)), h(z0, f(z1))), F(z0), F(z1))
G(z0, z0) → c4
f, g
F, G
c1, c2, c3, c4
F(c) → c2
F(a) → c1
G(z0, z0) → c4
Tuples:
f(a) → b
f(c) → d
f(h(z0, z1)) → g(h(z1, f(z0)), h(z0, f(z1)))
g(z0, z0) → h(e, z0)
S tuples:
F(h(z0, z1)) → c3(G(h(z1, f(z0)), h(z0, f(z1))), F(z0), F(z1))
K tuples:none
F(h(z0, z1)) → c3(G(h(z1, f(z0)), h(z0, f(z1))), F(z0), F(z1))
f, g
F
c3
Tuples:
f(a) → b
f(c) → d
f(h(z0, z1)) → g(h(z1, f(z0)), h(z0, f(z1)))
g(z0, z0) → h(e, z0)
S tuples:
F(h(z0, z1)) → c3(F(z0), F(z1))
K tuples:none
F(h(z0, z1)) → c3(F(z0), F(z1))
f, g
F
c3
f(a) → b
f(c) → d
f(h(z0, z1)) → g(h(z1, f(z0)), h(z0, f(z1)))
g(z0, z0) → h(e, z0)
S tuples:
F(h(z0, z1)) → c3(F(z0), F(z1))
K tuples:none
F(h(z0, z1)) → c3(F(z0), F(z1))
F
c3
We considered the (Usable) Rules:none
F(h(z0, z1)) → c3(F(z0), F(z1))
The order we found is given by the following interpretation:
F(h(z0, z1)) → c3(F(z0), F(z1))
POL(F(x1)) = x1
POL(c3(x1, x2)) = x1 + x2
POL(h(x1, x2)) = [1] + x1 + x2
S tuples:none
F(h(z0, z1)) → c3(F(z0), F(z1))
Defined Rule Symbols:none
F(h(z0, z1)) → c3(F(z0), F(z1))
F
c3