0 QTRS
↳1 DependencyPairsProof (⇔)
↳2 QDP
↳3 DependencyGraphProof (⇔)
↳4 QDP
↳5 QDPOrderProof (⇔)
↳6 QDP
↳7 QDPOrderProof (⇔)
↳8 QDP
↳9 QDPOrderProof (⇔)
↳10 QDP
↳11 PisEmptyProof (⇔)
↳12 TRUE
a____(__(X, Y), Z) → a____(mark(X), a____(mark(Y), mark(Z)))
a____(X, nil) → mark(X)
a____(nil, X) → mark(X)
a__U11(tt) → a__U12(tt)
a__U12(tt) → tt
a__isNePal(__(I, __(P, I))) → a__U11(tt)
mark(__(X1, X2)) → a____(mark(X1), mark(X2))
mark(U11(X)) → a__U11(mark(X))
mark(U12(X)) → a__U12(mark(X))
mark(isNePal(X)) → a__isNePal(mark(X))
mark(nil) → nil
mark(tt) → tt
a____(X1, X2) → __(X1, X2)
a__U11(X) → U11(X)
a__U12(X) → U12(X)
a__isNePal(X) → isNePal(X)
A____(__(X, Y), Z) → A____(mark(X), a____(mark(Y), mark(Z)))
A____(__(X, Y), Z) → MARK(X)
A____(__(X, Y), Z) → A____(mark(Y), mark(Z))
A____(__(X, Y), Z) → MARK(Y)
A____(__(X, Y), Z) → MARK(Z)
A____(X, nil) → MARK(X)
A____(nil, X) → MARK(X)
A__U11(tt) → A__U12(tt)
A__ISNEPAL(__(I, __(P, I))) → A__U11(tt)
MARK(__(X1, X2)) → A____(mark(X1), mark(X2))
MARK(__(X1, X2)) → MARK(X1)
MARK(__(X1, X2)) → MARK(X2)
MARK(U11(X)) → A__U11(mark(X))
MARK(U11(X)) → MARK(X)
MARK(U12(X)) → A__U12(mark(X))
MARK(U12(X)) → MARK(X)
MARK(isNePal(X)) → A__ISNEPAL(mark(X))
MARK(isNePal(X)) → MARK(X)
a____(__(X, Y), Z) → a____(mark(X), a____(mark(Y), mark(Z)))
a____(X, nil) → mark(X)
a____(nil, X) → mark(X)
a__U11(tt) → a__U12(tt)
a__U12(tt) → tt
a__isNePal(__(I, __(P, I))) → a__U11(tt)
mark(__(X1, X2)) → a____(mark(X1), mark(X2))
mark(U11(X)) → a__U11(mark(X))
mark(U12(X)) → a__U12(mark(X))
mark(isNePal(X)) → a__isNePal(mark(X))
mark(nil) → nil
mark(tt) → tt
a____(X1, X2) → __(X1, X2)
a__U11(X) → U11(X)
a__U12(X) → U12(X)
a__isNePal(X) → isNePal(X)
A____(__(X, Y), Z) → MARK(X)
MARK(__(X1, X2)) → A____(mark(X1), mark(X2))
A____(__(X, Y), Z) → A____(mark(X), a____(mark(Y), mark(Z)))
A____(__(X, Y), Z) → A____(mark(Y), mark(Z))
A____(__(X, Y), Z) → MARK(Y)
MARK(__(X1, X2)) → MARK(X1)
MARK(__(X1, X2)) → MARK(X2)
MARK(U11(X)) → MARK(X)
MARK(U12(X)) → MARK(X)
MARK(isNePal(X)) → MARK(X)
A____(__(X, Y), Z) → MARK(Z)
A____(X, nil) → MARK(X)
A____(nil, X) → MARK(X)
a____(__(X, Y), Z) → a____(mark(X), a____(mark(Y), mark(Z)))
a____(X, nil) → mark(X)
a____(nil, X) → mark(X)
a__U11(tt) → a__U12(tt)
a__U12(tt) → tt
a__isNePal(__(I, __(P, I))) → a__U11(tt)
mark(__(X1, X2)) → a____(mark(X1), mark(X2))
mark(U11(X)) → a__U11(mark(X))
mark(U12(X)) → a__U12(mark(X))
mark(isNePal(X)) → a__isNePal(mark(X))
mark(nil) → nil
mark(tt) → tt
a____(X1, X2) → __(X1, X2)
a__U11(X) → U11(X)
a__U12(X) → U12(X)
a__isNePal(X) → isNePal(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
A____(__(X, Y), Z) → MARK(X)
MARK(__(X1, X2)) → A____(mark(X1), mark(X2))
A____(__(X, Y), Z) → A____(mark(X), a____(mark(Y), mark(Z)))
A____(__(X, Y), Z) → A____(mark(Y), mark(Z))
A____(__(X, Y), Z) → MARK(Y)
MARK(__(X1, X2)) → MARK(X1)
MARK(__(X1, X2)) → MARK(X2)
A____(__(X, Y), Z) → MARK(Z)
A____(X, nil) → MARK(X)
A____(nil, X) → MARK(X)
[A2, 2, a2] > MARK1 > tt
nil > MARK1 > tt
A2: [1,2]
_2: [1,2]
MARK1: multiset
a2: [1,2]
nil: multiset
tt: multiset
a____(X, nil) → mark(X)
mark(__(X1, X2)) → a____(mark(X1), mark(X2))
a____(__(X, Y), Z) → a____(mark(X), a____(mark(Y), mark(Z)))
a____(nil, X) → mark(X)
mark(U11(X)) → a__U11(mark(X))
mark(U12(X)) → a__U12(mark(X))
mark(isNePal(X)) → a__isNePal(mark(X))
mark(nil) → nil
mark(tt) → tt
a____(X1, X2) → __(X1, X2)
a__U11(tt) → a__U12(tt)
a__U11(X) → U11(X)
a__U12(tt) → tt
a__U12(X) → U12(X)
a__isNePal(__(I, __(P, I))) → a__U11(tt)
a__isNePal(X) → isNePal(X)
MARK(U11(X)) → MARK(X)
MARK(U12(X)) → MARK(X)
MARK(isNePal(X)) → MARK(X)
a____(__(X, Y), Z) → a____(mark(X), a____(mark(Y), mark(Z)))
a____(X, nil) → mark(X)
a____(nil, X) → mark(X)
a__U11(tt) → a__U12(tt)
a__U12(tt) → tt
a__isNePal(__(I, __(P, I))) → a__U11(tt)
mark(__(X1, X2)) → a____(mark(X1), mark(X2))
mark(U11(X)) → a__U11(mark(X))
mark(U12(X)) → a__U12(mark(X))
mark(isNePal(X)) → a__isNePal(mark(X))
mark(nil) → nil
mark(tt) → tt
a____(X1, X2) → __(X1, X2)
a__U11(X) → U11(X)
a__U12(X) → U12(X)
a__isNePal(X) → isNePal(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
MARK(U11(X)) → MARK(X)
MARK(U12(X)) → MARK(X)
U111 > [MARK1, U121]
MARK1: [1]
U111: multiset
U121: [1]
MARK(isNePal(X)) → MARK(X)
a____(__(X, Y), Z) → a____(mark(X), a____(mark(Y), mark(Z)))
a____(X, nil) → mark(X)
a____(nil, X) → mark(X)
a__U11(tt) → a__U12(tt)
a__U12(tt) → tt
a__isNePal(__(I, __(P, I))) → a__U11(tt)
mark(__(X1, X2)) → a____(mark(X1), mark(X2))
mark(U11(X)) → a__U11(mark(X))
mark(U12(X)) → a__U12(mark(X))
mark(isNePal(X)) → a__isNePal(mark(X))
mark(nil) → nil
mark(tt) → tt
a____(X1, X2) → __(X1, X2)
a__U11(X) → U11(X)
a__U12(X) → U12(X)
a__isNePal(X) → isNePal(X)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
MARK(isNePal(X)) → MARK(X)
trivial
isNePal1: multiset
a____(__(X, Y), Z) → a____(mark(X), a____(mark(Y), mark(Z)))
a____(X, nil) → mark(X)
a____(nil, X) → mark(X)
a__U11(tt) → a__U12(tt)
a__U12(tt) → tt
a__isNePal(__(I, __(P, I))) → a__U11(tt)
mark(__(X1, X2)) → a____(mark(X1), mark(X2))
mark(U11(X)) → a__U11(mark(X))
mark(U12(X)) → a__U12(mark(X))
mark(isNePal(X)) → a__isNePal(mark(X))
mark(nil) → nil
mark(tt) → tt
a____(X1, X2) → __(X1, X2)
a__U11(X) → U11(X)
a__U12(X) → U12(X)
a__isNePal(X) → isNePal(X)