0 QTRS
↳1 Overlay + Local Confluence (⇔)
↳2 QTRS
↳3 DependencyPairsProof (⇔)
↳4 QDP
↳5 DependencyGraphProof (⇔)
↳6 AND
↳7 QDP
↳8 QDPOrderProof (⇔)
↳9 QDP
↳10 QDP
↳11 QDPOrderProof (⇔)
↳12 QDP
↳13 PisEmptyProof (⇔)
↳14 TRUE
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
sum(cons(s(x0), x1), cons(x2, x3))
sum(cons(0, x0), x1)
sum(nil, x0)
weight(cons(x0, cons(x1, x2)))
weight(cons(x0, nil))
SUM(cons(s(n), x), cons(m, y)) → SUM(cons(n, x), cons(s(m), y))
SUM(cons(0, x), y) → SUM(x, y)
WEIGHT(cons(n, cons(m, x))) → WEIGHT(sum(cons(n, cons(m, x)), cons(0, x)))
WEIGHT(cons(n, cons(m, x))) → SUM(cons(n, cons(m, x)), cons(0, x))
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
sum(cons(s(x0), x1), cons(x2, x3))
sum(cons(0, x0), x1)
sum(nil, x0)
weight(cons(x0, cons(x1, x2)))
weight(cons(x0, nil))
SUM(cons(0, x), y) → SUM(x, y)
SUM(cons(s(n), x), cons(m, y)) → SUM(cons(n, x), cons(s(m), y))
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
sum(cons(s(x0), x1), cons(x2, x3))
sum(cons(0, x0), x1)
sum(nil, x0)
weight(cons(x0, cons(x1, x2)))
weight(cons(x0, nil))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
SUM(cons(0, x), y) → SUM(x, y)
cons2 > sum1 > 0
nil > 0
weight1 > sum1 > 0
cons2: [1,2]
0: multiset
sum1: [1]
nil: multiset
weight1: [1]
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
SUM(cons(s(n), x), cons(m, y)) → SUM(cons(n, x), cons(s(m), y))
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
sum(cons(s(x0), x1), cons(x2, x3))
sum(cons(0, x0), x1)
sum(nil, x0)
weight(cons(x0, cons(x1, x2)))
weight(cons(x0, nil))
WEIGHT(cons(n, cons(m, x))) → WEIGHT(sum(cons(n, cons(m, x)), cons(0, x)))
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
sum(cons(s(x0), x1), cons(x2, x3))
sum(cons(0, x0), x1)
sum(nil, x0)
weight(cons(x0, cons(x1, x2)))
weight(cons(x0, nil))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
WEIGHT(cons(n, cons(m, x))) → WEIGHT(sum(cons(n, cons(m, x)), cons(0, x)))
cons2 > sum1 > s
cons2 > 0 > s
nil > s
weight1 > sum1 > s
weight1 > 0 > s
cons2: [2,1]
sum1: [1]
0: multiset
s: multiset
nil: multiset
weight1: [1]
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
sum(cons(s(n), x), cons(m, y)) → sum(cons(n, x), cons(s(m), y))
sum(cons(0, x), y) → sum(x, y)
sum(nil, y) → y
weight(cons(n, cons(m, x))) → weight(sum(cons(n, cons(m, x)), cons(0, x)))
weight(cons(n, nil)) → n
sum(cons(s(x0), x1), cons(x2, x3))
sum(cons(0, x0), x1)
sum(nil, x0)
weight(cons(x0, cons(x1, x2)))
weight(cons(x0, nil))