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