YES
0 QTRS
↳1 QTRSRRRProof (⇔, 0 ms)
↳2 QTRS
↳3 QTRSRRRProof (⇔, 0 ms)
↳4 QTRS
↳5 QTRSRRRProof (⇔, 3 ms)
↳6 QTRS
↳7 RisEmptyProof (⇔, 0 ms)
↳8 YES
f(a, empty) → g(a, empty)
f(a, cons(x, k)) → f(cons(x, a), k)
g(empty, d) → d
g(cons(x, k), d) → g(k, cons(x, d))
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
POL(cons(x1, x2)) = 1 + x1 + x2
POL(empty) = 0
POL(f(x1, x2)) = 1 + 2·x1 + 2·x2
POL(g(x1, x2)) = 2·x1 + x2
f(a, empty) → g(a, empty)
g(cons(x, k), d) → g(k, cons(x, d))
f(a, cons(x, k)) → f(cons(x, a), k)
g(empty, d) → d
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
POL(cons(x1, x2)) = x1 + x2
POL(empty) = 0
POL(f(x1, x2)) = 2·x1 + 2·x2
POL(g(x1, x2)) = 2 + x1 + x2
g(empty, d) → d
f(a, cons(x, k)) → f(cons(x, a), k)
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
POL(cons(x1, x2)) = 1 + x1 + x2
POL(f(x1, x2)) = x1 + 2·x2
f(a, cons(x, k)) → f(cons(x, a), k)