0 QTRS
↳1 DependencyPairsProof (⇔)
↳2 QDP
↳3 DependencyGraphProof (⇔)
↳4 QDP
↳5 QDPOrderProof (⇔)
↳6 QDP
↳7 DependencyGraphProof (⇔)
↳8 QDP
↳9 QDPOrderProof (⇔)
↳10 QDP
↳11 QDPOrderProof (⇔)
↳12 QDP
↳13 PisEmptyProof (⇔)
↳14 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)
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)
nil > [A2, 2, a2, tt]
A2: [1,2]
_2: [1,2]
a2: [1,2]
nil: multiset
tt: 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)
MARK(__(X1, X2)) → A____(mark(X1), mark(X2))
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)
MARK(U12(X)) → MARK(X)
MARK(U11(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(U12(X)) → MARK(X)
MARK(U11(X)) → MARK(X)
MARK1 > tt
[U111, a2, 2, aU111] > [U121, aU121] > tt
nil > tt
MARK1: multiset
U121: multiset
U111: [1]
a2: [1,2]
_2: [1,2]
nil: multiset
aU111: [1]
tt: multiset
aU121: 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)
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)
[isNePal1, aisNePal1] > [aU111, tt, U111]
[a2, 2] > [aU111, tt, U111]
nil > [aU111, tt, U111]
isNePal1: multiset
a2: [1,2]
_2: [1,2]
nil: multiset
aU111: multiset
tt: multiset
aisNePal1: multiset
U111: 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)
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)