YES
__(__(X, Y), Z) → __(X, __(Y, Z))
__(X, nil) → X
__(nil, X) → X
U11(tt) → U12(tt)
U12(tt) → tt
isNePal(__(I, __(P, I))) → U11(tt)
__: {1, 2}
nil: empty set
U11: {1}
tt: empty set
U12: {1}
isNePal: {1}
↳ CSR
↳ Lucas-Transformation
__(__(X, Y), Z) → __(X, __(Y, Z))
__(X, nil) → X
__(nil, X) → X
U11(tt) → U12(tt)
U12(tt) → tt
isNePal(__(I, __(P, I))) → U11(tt)
__: {1, 2}
nil: empty set
U11: {1}
tt: empty set
U12: {1}
isNePal: {1}
We applied the Lucas [26] to transform the context-sensitive TRS to an usual TRS.
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
__(__(X, Y), Z) → __(X, __(Y, Z))
__(X, nil) → X
__(nil, X) → X
U11(tt) → U12(tt)
U12(tt) → tt
isNePal(__(I, __(P, I))) → U11(tt)
__(__(X, Y), Z) → __(X, __(Y, Z))
__(X, nil) → X
__(nil, X) → X
U11(tt) → U12(tt)
U12(tt) → tt
isNePal(__(I, __(P, I))) → U11(tt)
Used ordering:
__(X, nil) → X
__(nil, X) → X
isNePal(__(I, __(P, I))) → U11(tt)
POL(U11(x1)) = x1
POL(U12(x1)) = 2·x1
POL(__(x1, x2)) = x1 + x2
POL(isNePal(x1)) = 1 + 2·x1
POL(nil) = 1
POL(tt) = 0
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RRRPoloQTRSProof
__(__(X, Y), Z) → __(X, __(Y, Z))
U11(tt) → U12(tt)
U12(tt) → tt
__(__(X, Y), Z) → __(X, __(Y, Z))
U11(tt) → U12(tt)
U12(tt) → tt
Used ordering:
__(__(X, Y), Z) → __(X, __(Y, Z))
U11(tt) → U12(tt)
U12(tt) → tt
POL(U11(x1)) = 2 + 2·x1
POL(U12(x1)) = 1 + 2·x1
POL(__(x1, x2)) = 1 + 2·x1 + x2
POL(tt) = 2
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RisEmptyProof