0 QTRS
↳1 DependencyPairsProof (⇔)
↳2 QDP
↳3 DependencyGraphProof (⇔)
↳4 AND
↳5 QDP
↳6 QDPSizeChangeProof (⇔)
↳7 TRUE
↳8 QDP
↳9 QDPSizeChangeProof (⇔)
↳10 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)
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(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
Order:Homeomorphic Embedding Order
AFS:
0 = 0
s(x1) = s(x1)
cons(x1, x2) = cons(x1, x2)
From the DPs we obtained the following set of size-change graphs:
We oriented the following set of usable rules [AAECC05,FROCOS05].
none
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
Order:Polynomial interpretation [POLO]:
POL(0) = 1
POL(cons(x1, x2)) = 1 + x2
POL(nil) = 0
POL(s(x1)) = 0
POL(sum(x1, x2)) = x2
From the DPs we obtained the following set of size-change graphs:
We oriented the following set of usable rules [AAECC05,FROCOS05].
sum(nil, y) → 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)