0 QTRS
↳1 DependencyPairsProof (⇔)
↳2 QDP
↳3 DependencyGraphProof (⇔)
↳4 AND
↳5 QDP
↳6 QDPOrderProof (⇔)
↳7 QDP
↳8 PisEmptyProof (⇔)
↳9 TRUE
↳10 QDP
↳11 QDPOrderProof (⇔)
↳12 QDP
↳13 PisEmptyProof (⇔)
↳14 TRUE
↳15 QDP
↳16 QDPOrderProof (⇔)
↳17 QDP
↳18 PisEmptyProof (⇔)
↳19 TRUE
↳20 QDP
↳21 QDPOrderProof (⇔)
↳22 QDP
↳23 PisEmptyProof (⇔)
↳24 TRUE
↳25 QDP
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(f(X, g(X), Y)) → F(Y, Y, Y)
ACTIVE(g(X)) → G(active(X))
ACTIVE(g(X)) → ACTIVE(X)
G(mark(X)) → G(X)
PROPER(f(X1, X2, X3)) → F(proper(X1), proper(X2), proper(X3))
PROPER(f(X1, X2, X3)) → PROPER(X1)
PROPER(f(X1, X2, X3)) → PROPER(X2)
PROPER(f(X1, X2, X3)) → PROPER(X3)
PROPER(g(X)) → G(proper(X))
PROPER(g(X)) → PROPER(X)
F(ok(X1), ok(X2), ok(X3)) → F(X1, X2, X3)
G(ok(X)) → G(X)
TOP(mark(X)) → TOP(proper(X))
TOP(mark(X)) → PROPER(X)
TOP(ok(X)) → TOP(active(X))
TOP(ok(X)) → ACTIVE(X)
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
F(ok(X1), ok(X2), ok(X3)) → F(X1, X2, X3)
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
F(ok(X1), ok(X2), ok(X3)) → F(X1, X2, X3)
top > active > mark > proper > ok1
top > active > mark > proper > b
top > active > mark > proper > c
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
G(ok(X)) → G(X)
G(mark(X)) → G(X)
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
G(ok(X)) → G(X)
G(mark(X)) → G(X)
proper1 > f1 > ok1 > G1
proper1 > f1 > ok1 > active1 > mark1
proper1 > f1 > ok1 > active1 > c
proper1 > b > c
top > active1 > mark1
top > active1 > c
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(f(X1, X2, X3)) → PROPER(X2)
PROPER(f(X1, X2, X3)) → PROPER(X1)
PROPER(f(X1, X2, X3)) → PROPER(X3)
PROPER(g(X)) → PROPER(X)
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(f(X1, X2, X3)) → PROPER(X2)
PROPER(f(X1, X2, X3)) → PROPER(X1)
PROPER(f(X1, X2, X3)) → PROPER(X3)
PROPER(g(X)) → PROPER(X)
active1 > g1 > f3 > ok
active1 > g1 > mark > ok
c > ok
top > proper1 > g1 > f3 > ok
top > proper1 > g1 > mark > ok
top > proper1 > b > ok
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(g(X)) → ACTIVE(X)
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(g(X)) → ACTIVE(X)
g1 > c
b > c
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
TOP(ok(X)) → TOP(active(X))
TOP(mark(X)) → TOP(proper(X))
active(f(X, g(X), Y)) → mark(f(Y, Y, Y))
active(g(b)) → mark(c)
active(b) → mark(c)
active(g(X)) → g(active(X))
g(mark(X)) → mark(g(X))
proper(f(X1, X2, X3)) → f(proper(X1), proper(X2), proper(X3))
proper(g(X)) → g(proper(X))
proper(b) → ok(b)
proper(c) → ok(c)
f(ok(X1), ok(X2), ok(X3)) → ok(f(X1, X2, X3))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))