0 QTRS
↳1 DependencyPairsProof (⇔)
↳2 QDP
↳3 DependencyGraphProof (⇔)
↳4 QDP
↳5 QDPOrderProof (⇔)
↳6 QDP
↳7 DependencyGraphProof (⇔)
↳8 QDP
a__h(X) → a__g(mark(X), X)
a__g(a, X) → a__f(b, X)
a__f(X, X) → a__h(a__a)
a__a → b
mark(h(X)) → a__h(mark(X))
mark(g(X1, X2)) → a__g(mark(X1), X2)
mark(a) → a__a
mark(f(X1, X2)) → a__f(mark(X1), X2)
mark(b) → b
a__h(X) → h(X)
a__g(X1, X2) → g(X1, X2)
a__a → a
a__f(X1, X2) → f(X1, X2)
A__H(X) → A__G(mark(X), X)
A__H(X) → MARK(X)
A__G(a, X) → A__F(b, X)
A__F(X, X) → A__H(a__a)
A__F(X, X) → A__A
MARK(h(X)) → A__H(mark(X))
MARK(h(X)) → MARK(X)
MARK(g(X1, X2)) → A__G(mark(X1), X2)
MARK(g(X1, X2)) → MARK(X1)
MARK(a) → A__A
MARK(f(X1, X2)) → A__F(mark(X1), X2)
MARK(f(X1, X2)) → MARK(X1)
a__h(X) → a__g(mark(X), X)
a__g(a, X) → a__f(b, X)
a__f(X, X) → a__h(a__a)
a__a → b
mark(h(X)) → a__h(mark(X))
mark(g(X1, X2)) → a__g(mark(X1), X2)
mark(a) → a__a
mark(f(X1, X2)) → a__f(mark(X1), X2)
mark(b) → b
a__h(X) → h(X)
a__g(X1, X2) → g(X1, X2)
a__a → a
a__f(X1, X2) → f(X1, X2)
A__G(a, X) → A__F(b, X)
A__F(X, X) → A__H(a__a)
A__H(X) → A__G(mark(X), X)
A__H(X) → MARK(X)
MARK(h(X)) → A__H(mark(X))
MARK(h(X)) → MARK(X)
MARK(g(X1, X2)) → A__G(mark(X1), X2)
MARK(g(X1, X2)) → MARK(X1)
MARK(f(X1, X2)) → A__F(mark(X1), X2)
MARK(f(X1, X2)) → MARK(X1)
a__h(X) → a__g(mark(X), X)
a__g(a, X) → a__f(b, X)
a__f(X, X) → a__h(a__a)
a__a → b
mark(h(X)) → a__h(mark(X))
mark(g(X1, X2)) → a__g(mark(X1), X2)
mark(a) → a__a
mark(f(X1, X2)) → a__f(mark(X1), X2)
mark(b) → b
a__h(X) → h(X)
a__g(X1, X2) → g(X1, X2)
a__a → a
a__f(X1, X2) → f(X1, X2)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
MARK(h(X)) → A__H(mark(X))
MARK(h(X)) → MARK(X)
MARK(g(X1, X2)) → A__G(mark(X1), X2)
MARK(g(X1, X2)) → MARK(X1)
MARK(f(X1, X2)) → A__F(mark(X1), X2)
MARK(f(X1, X2)) → MARK(X1)
[AG1, AF1, AH1, MARK1] > [a, b, aa, h1, g1, f1, ag1, ah1, af1]
mark(a) → a__a
mark(g(X1, X2)) → a__g(mark(X1), X2)
mark(h(X)) → a__h(mark(X))
a__a → b
a__g(X1, X2) → g(X1, X2)
a__h(X) → h(X)
mark(b) → b
mark(f(X1, X2)) → a__f(mark(X1), X2)
a__f(X1, X2) → f(X1, X2)
a__a → a
a__g(a, X) → a__f(b, X)
a__f(X, X) → a__h(a__a)
a__h(X) → a__g(mark(X), X)
A__G(a, X) → A__F(b, X)
A__F(X, X) → A__H(a__a)
A__H(X) → A__G(mark(X), X)
A__H(X) → MARK(X)
a__h(X) → a__g(mark(X), X)
a__g(a, X) → a__f(b, X)
a__f(X, X) → a__h(a__a)
a__a → b
mark(h(X)) → a__h(mark(X))
mark(g(X1, X2)) → a__g(mark(X1), X2)
mark(a) → a__a
mark(f(X1, X2)) → a__f(mark(X1), X2)
mark(b) → b
a__h(X) → h(X)
a__g(X1, X2) → g(X1, X2)
a__a → a
a__f(X1, X2) → f(X1, X2)
A__F(X, X) → A__H(a__a)
A__H(X) → A__G(mark(X), X)
A__G(a, X) → A__F(b, X)
a__h(X) → a__g(mark(X), X)
a__g(a, X) → a__f(b, X)
a__f(X, X) → a__h(a__a)
a__a → b
mark(h(X)) → a__h(mark(X))
mark(g(X1, X2)) → a__g(mark(X1), X2)
mark(a) → a__a
mark(f(X1, X2)) → a__f(mark(X1), X2)
mark(b) → b
a__h(X) → h(X)
a__g(X1, X2) → g(X1, X2)
a__a → a
a__f(X1, X2) → f(X1, X2)