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
↳26 QDPOrderProof (⇔)
↳27 QDP
↳28 PisEmptyProof (⇔)
↳29 TRUE
↳30 QDP
↳31 QDPOrderProof (⇔)
↳32 QDP
↳33 QDPOrderProof (⇔)
↳34 QDP
↳35 QDPOrderProof (⇔)
↳36 QDP
↳37 PisEmptyProof (⇔)
↳38 TRUE
↳39 QDP
↳40 QDPOrderProof (⇔)
↳41 QDP
↳42 QDPOrderProof (⇔)
↳43 QDP
↳44 PisEmptyProof (⇔)
↳45 TRUE
↳46 QDP
↳47 QDPOrderProof (⇔)
↳48 QDP
↳49 QDPOrderProof (⇔)
↳50 QDP
↳51 PisEmptyProof (⇔)
↳52 TRUE
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(f(f(X))) → C(f(g(f(X))))
ACTIVE(f(f(X))) → F(g(f(X)))
ACTIVE(f(f(X))) → G(f(X))
ACTIVE(c(X)) → D(X)
ACTIVE(h(X)) → C(d(X))
ACTIVE(h(X)) → D(X)
ACTIVE(f(X)) → F(active(X))
ACTIVE(f(X)) → ACTIVE(X)
ACTIVE(h(X)) → H(active(X))
ACTIVE(h(X)) → ACTIVE(X)
F(mark(X)) → F(X)
H(mark(X)) → H(X)
PROPER(f(X)) → F(proper(X))
PROPER(f(X)) → PROPER(X)
PROPER(c(X)) → C(proper(X))
PROPER(c(X)) → PROPER(X)
PROPER(g(X)) → G(proper(X))
PROPER(g(X)) → PROPER(X)
PROPER(d(X)) → D(proper(X))
PROPER(d(X)) → PROPER(X)
PROPER(h(X)) → H(proper(X))
PROPER(h(X)) → PROPER(X)
F(ok(X)) → F(X)
C(ok(X)) → C(X)
G(ok(X)) → G(X)
D(ok(X)) → D(X)
H(ok(X)) → H(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(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
D(ok(X)) → D(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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.
D(ok(X)) → D(X)
D1 > [active, mark]
[ok1, g1] > top > [active, mark]
D1: multiset
ok1: [1]
active: []
mark: []
g1: [1]
top: []
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
G(ok(X)) → G(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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)
G1 > [active, mark]
[ok1, g1] > top > [active, mark]
G1: multiset
ok1: [1]
active: []
mark: []
g1: [1]
top: []
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
C(ok(X)) → C(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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.
C(ok(X)) → C(X)
C1 > [active, mark]
[ok1, g1] > top > [active, mark]
C1: multiset
ok1: [1]
active: []
mark: []
g1: [1]
top: []
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
H(ok(X)) → H(X)
H(mark(X)) → H(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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.
H(ok(X)) → H(X)
H(mark(X)) → H(X)
active1 > d1 > [ok1, mark1, c1]
H1: multiset
ok1: [1]
mark1: [1]
active1: [1]
c1: [1]
d1: multiset
top: multiset
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
F(ok(X)) → F(X)
F(mark(X)) → F(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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(X)) → F(X)
F(mark(X)) → F(X)
active1 > d1 > [ok1, mark1, c1]
F1: multiset
ok1: [1]
mark1: [1]
active1: [1]
c1: [1]
d1: multiset
top: multiset
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(c(X)) → PROPER(X)
PROPER(f(X)) → PROPER(X)
PROPER(g(X)) → PROPER(X)
PROPER(d(X)) → PROPER(X)
PROPER(h(X)) → PROPER(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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(c(X)) → PROPER(X)
PROPER(g(X)) → PROPER(X)
active > c1 > [g1, ok1]
active > c1 > mark
c1: [1]
g1: [1]
active: []
mark: []
ok1: [1]
top: []
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(f(X)) → PROPER(X)
PROPER(d(X)) → PROPER(X)
PROPER(h(X)) → PROPER(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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(X)) → PROPER(X)
PROPER(h(X)) → PROPER(X)
f1 > g
h1 > g
top > g
f1: [1]
h1: [1]
g: multiset
top: []
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(d(X)) → PROPER(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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(d(X)) → PROPER(X)
[d1, proper1] > [active, f, mark, g1, h, top] > [c, ok]
PROPER1: multiset
d1: multiset
active: []
f: []
mark: []
c: []
g1: multiset
h: []
proper1: multiset
ok: []
top: multiset
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(h(X)) → ACTIVE(X)
ACTIVE(f(X)) → ACTIVE(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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(h(X)) → ACTIVE(X)
ACTIVE1 > mark
h1 > mark
c > mark
top > mark
ACTIVE1: multiset
h1: [1]
mark: []
c: multiset
top: []
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(f(X)) → ACTIVE(X)
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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(f(X)) → ACTIVE(X)
ACTIVE1 > [c, d]
[f1, g] > [c, d]
h > [c, d]
top > [c, d]
ACTIVE1: multiset
f1: [1]
c: []
g: multiset
d: []
h: []
top: []
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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.
TOP(ok(X)) → TOP(active(X))
trivial
ok1: [1]
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
TOP(mark(X)) → TOP(proper(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(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.
TOP(mark(X)) → TOP(proper(X))
TOP1 > mark1
active1 > f1 > [g1, ok, top] > [d1, h1] > mark1
TOP1: multiset
mark1: [1]
active1: [1]
f1: [1]
g1: multiset
d1: multiset
h1: multiset
ok: []
top: []
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))