YES
0 QTRS
↳1 QTRSRRRProof (⇔, 0 ms)
↳2 QTRS
↳3 QTRSRRRProof (⇔, 14 ms)
↳4 QTRS
↳5 QTRSRRRProof (⇔, 0 ms)
↳6 QTRS
↳7 QTRSRRRProof (⇔, 0 ms)
↳8 QTRS
↳9 AAECC Innermost (⇔, 0 ms)
↳10 QTRS
↳11 DependencyPairsProof (⇔, 0 ms)
↳12 QDP
↳13 DependencyGraphProof (⇔, 0 ms)
↳14 TRUE
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(X)) → X
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
POL(0) = 0
POL(activate(x1)) = 1 + 2·x1
POL(cons(x1, x2)) = x1 + x2
POL(f(x1)) = 1 + 2·x1
POL(n__0) = 0
POL(n__f(x1)) = 1 + 2·x1
POL(n__s(x1)) = x1
POL(p(x1)) = x1
POL(s(x1)) = x1
activate(n__0) → 0
activate(X) → X
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(X)) → X
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
POL(0) = 2
POL(activate(x1)) = 2·x1
POL(cons(x1, x2)) = x1 + x2
POL(f(x1)) = 2 + 2·x1
POL(n__0) = 0
POL(n__f(x1)) = 2 + 2·x1
POL(n__s(x1)) = 1 + x1
POL(p(x1)) = x1
POL(s(x1)) = 1 + x1
p(s(X)) → X
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
f(X) → n__f(X)
s(X) → n__s(X)
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
POL(0) = 1
POL(cons(x1, x2)) = x1 + x2
POL(f(x1)) = 2 + 2·x1
POL(n__0) = 0
POL(n__f(x1)) = 2 + x1
POL(n__s(x1)) = 1 + x1
POL(p(x1)) = x1
POL(s(x1)) = 2 + x1
s(X) → n__s(X)
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
f(X) → n__f(X)
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
POL(0) = 2
POL(cons(x1, x2)) = 2·x1 + x2
POL(f(x1)) = 2 + 2·x1
POL(n__0) = 0
POL(n__f(x1)) = 1 + x1
POL(n__s(x1)) = 2·x1
POL(p(x1)) = x1
POL(s(x1)) = 2 + 2·x1
f(0) → cons(0, n__f(n__s(n__0)))
f(X) → n__f(X)
f(s(0)) → f(p(s(0)))
f(s(0)) → f(p(s(0)))
f(s(0)) → f(p(s(0)))
f(s(0))
F(s(0)) → F(p(s(0)))
f(s(0)) → f(p(s(0)))
f(s(0))