YES
0 QTRS
↳1 QTRS Reverse (⇔, 0 ms)
↳2 QTRS
↳3 QTRSRRRProof (⇔, 70 ms)
↳4 QTRS
↳5 DependencyPairsProof (⇔, 0 ms)
↳6 QDP
↳7 DependencyGraphProof (⇔, 0 ms)
↳8 AND
↳9 QDP
↳10 QDPOrderProof (⇔, 25 ms)
↳11 QDP
↳12 PisEmptyProof (⇔, 0 ms)
↳13 YES
↳14 QDP
↳15 QDPOrderProof (⇔, 15 ms)
↳16 QDP
↳17 PisEmptyProof (⇔, 0 ms)
↳18 YES
↳19 QDP
↳20 QDPOrderProof (⇔, 30 ms)
↳21 QDP
↳22 PisEmptyProof (⇔, 0 ms)
↳23 YES
↳24 QDP
↳25 QDPOrderProof (⇔, 21 ms)
↳26 QDP
↳27 PisEmptyProof (⇔, 0 ms)
↳28 YES
↳29 QDP
↳30 QDPOrderProof (⇔, 17 ms)
↳31 QDP
↳32 QDPOrderProof (⇔, 16 ms)
↳33 QDP
↳34 QDPOrderProof (⇔, 0 ms)
↳35 QDP
↳36 PisEmptyProof (⇔, 0 ms)
↳37 YES
active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
mark(f(X)) → active(f(mark(X)))
mark(c(X)) → active(c(X))
mark(g(X)) → active(g(X))
mark(d(X)) → active(d(X))
mark(h(X)) → active(h(mark(X)))
f(mark(X)) → f(X)
f(active(X)) → f(X)
c(mark(X)) → c(X)
c(active(X)) → c(X)
g(mark(X)) → g(X)
g(active(X)) → g(X)
d(mark(X)) → d(X)
d(active(X)) → d(X)
h(mark(X)) → h(X)
h(active(X)) → h(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
h(active(X)) → d(c(mark(X)))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
POL(active(x1)) = x1
POL(c(x1)) = x1
POL(d(x1)) = x1
POL(f(x1)) = x1
POL(g(x1)) = x1
POL(h(x1)) = 1 + x1
POL(mark(x1)) = x1
h(active(X)) → d(c(mark(X)))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
F(f(active(X))) → F(g(f(c(mark(X)))))
F(f(active(X))) → G(f(c(mark(X))))
F(f(active(X))) → F(c(mark(X)))
F(f(active(X))) → C(mark(X))
F(f(active(X))) → MARK(X)
C(active(X)) → D(mark(X))
C(active(X)) → MARK(X)
F(mark(X)) → MARK(f(active(X)))
F(mark(X)) → F(active(X))
F(mark(X)) → ACTIVE(X)
C(mark(X)) → C(active(X))
C(mark(X)) → ACTIVE(X)
G(mark(X)) → G(active(X))
G(mark(X)) → ACTIVE(X)
D(mark(X)) → D(active(X))
D(mark(X)) → ACTIVE(X)
H(mark(X)) → MARK(h(active(X)))
H(mark(X)) → H(active(X))
H(mark(X)) → ACTIVE(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
H(mark(X)) → H(active(X))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
H(mark(X)) → H(active(X))
POL(H(x1)) = x1
POL(active(x1)) = x1
POL(c(x1)) = 0
POL(d(x1)) = 0
POL(f(x1)) = 1 + x1
POL(g(x1)) = 0
POL(h(x1)) = x1
POL(mark(x1)) = 1 + x1
active(f(X)) → f(X)
active(c(X)) → c(X)
active(g(X)) → g(X)
active(d(X)) → d(X)
active(h(X)) → h(X)
f(mark(X)) → mark(f(active(X)))
mark(f(X)) → f(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
mark(h(X)) → h(X)
h(mark(X)) → mark(h(active(X)))
c(active(X)) → d(mark(X))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
mark(c(X)) → c(X)
mark(g(X)) → g(X)
mark(d(X)) → d(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
D(mark(X)) → D(active(X))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
D(mark(X)) → D(active(X))
POL(D(x1)) = x1
POL(active(x1)) = x1
POL(c(x1)) = 0
POL(d(x1)) = 0
POL(f(x1)) = 1 + x1
POL(g(x1)) = 0
POL(h(x1)) = x1
POL(mark(x1)) = 1 + x1
active(f(X)) → f(X)
active(c(X)) → c(X)
active(g(X)) → g(X)
active(d(X)) → d(X)
active(h(X)) → h(X)
f(mark(X)) → mark(f(active(X)))
mark(f(X)) → f(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
mark(h(X)) → h(X)
h(mark(X)) → mark(h(active(X)))
c(active(X)) → d(mark(X))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
mark(c(X)) → c(X)
mark(g(X)) → g(X)
mark(d(X)) → d(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
G(mark(X)) → G(active(X))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
G(mark(X)) → G(active(X))
POL(G(x1)) = x1
POL(active(x1)) = x1
POL(c(x1)) = 0
POL(d(x1)) = 0
POL(f(x1)) = 1 + x1
POL(g(x1)) = 0
POL(h(x1)) = x1
POL(mark(x1)) = 1 + x1
active(f(X)) → f(X)
active(c(X)) → c(X)
active(g(X)) → g(X)
active(d(X)) → d(X)
active(h(X)) → h(X)
f(mark(X)) → mark(f(active(X)))
mark(f(X)) → f(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
mark(h(X)) → h(X)
h(mark(X)) → mark(h(active(X)))
c(active(X)) → d(mark(X))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
mark(c(X)) → c(X)
mark(g(X)) → g(X)
mark(d(X)) → d(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
C(mark(X)) → C(active(X))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
C(mark(X)) → C(active(X))
POL(C(x1)) = x1
POL(active(x1)) = x1
POL(c(x1)) = 0
POL(d(x1)) = 0
POL(f(x1)) = 1 + x1
POL(g(x1)) = 0
POL(h(x1)) = x1
POL(mark(x1)) = 1 + x1
active(f(X)) → f(X)
active(c(X)) → c(X)
active(g(X)) → g(X)
active(d(X)) → d(X)
active(h(X)) → h(X)
f(mark(X)) → mark(f(active(X)))
mark(f(X)) → f(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
mark(h(X)) → h(X)
h(mark(X)) → mark(h(active(X)))
c(active(X)) → d(mark(X))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
mark(c(X)) → c(X)
mark(g(X)) → g(X)
mark(d(X)) → d(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
F(f(active(X))) → F(c(mark(X)))
F(f(active(X))) → F(g(f(c(mark(X)))))
F(mark(X)) → F(active(X))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
F(f(active(X))) → F(g(f(c(mark(X)))))
POL(F(x1)) = x1
POL(active(x1)) = 1
POL(c(x1)) = 1
POL(d(x1)) = 0
POL(f(x1)) = 1
POL(g(x1)) = 0
POL(h(x1)) = 1
POL(mark(x1)) = 1
f(mark(X)) → mark(f(active(X)))
mark(f(X)) → f(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
mark(h(X)) → h(X)
h(mark(X)) → mark(h(active(X)))
mark(c(X)) → c(X)
mark(g(X)) → g(X)
mark(d(X)) → d(X)
c(active(X)) → d(mark(X))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
active(f(X)) → f(X)
active(c(X)) → c(X)
active(g(X)) → g(X)
active(d(X)) → d(X)
active(h(X)) → h(X)
d(mark(X)) → d(active(X))
F(f(active(X))) → F(c(mark(X)))
F(mark(X)) → F(active(X))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
F(mark(X)) → F(active(X))
POL(F(x1)) = x1
POL(active(x1)) = x1
POL(c(x1)) = 0
POL(d(x1)) = 0
POL(f(x1)) = x1
POL(g(x1)) = 0
POL(h(x1)) = x1
POL(mark(x1)) = 1 + x1
f(mark(X)) → mark(f(active(X)))
mark(f(X)) → f(X)
f(f(active(X))) → f(g(f(c(mark(X)))))
mark(h(X)) → h(X)
h(mark(X)) → mark(h(active(X)))
mark(c(X)) → c(X)
mark(g(X)) → g(X)
mark(d(X)) → d(X)
c(active(X)) → d(mark(X))
c(mark(X)) → c(active(X))
active(f(X)) → f(X)
active(c(X)) → c(X)
active(g(X)) → g(X)
active(d(X)) → d(X)
active(h(X)) → h(X)
d(mark(X)) → d(active(X))
g(mark(X)) → g(active(X))
F(f(active(X))) → F(c(mark(X)))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
F(f(active(X))) → F(c(mark(X)))
POL(F(x1)) = x1
POL(active(x1)) = x1
POL(c(x1)) = 0
POL(d(x1)) = 0
POL(f(x1)) = 1
POL(g(x1)) = 1
POL(h(x1)) = 0
POL(mark(x1)) = 0
c(active(X)) → d(mark(X))
c(mark(X)) → c(active(X))
d(mark(X)) → d(active(X))
f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
f(mark(X)) → mark(f(active(X)))
c(mark(X)) → c(active(X))
g(mark(X)) → g(active(X))
d(mark(X)) → d(active(X))
h(mark(X)) → mark(h(active(X)))
mark(f(X)) → f(X)
active(f(X)) → f(X)
mark(c(X)) → c(X)
active(c(X)) → c(X)
mark(g(X)) → g(X)
active(g(X)) → g(X)
mark(d(X)) → d(X)
active(d(X)) → d(X)
mark(h(X)) → h(X)
active(h(X)) → h(X)