(0) Obligation:
Runtime Complexity TRS:
The TRS R consists of the following rules:
__(__(X, Y), Z) → __(X, __(Y, Z))
__(X, nil) → X
__(nil, X) → X
and(tt, X) → activate(X)
isList(V) → isNeList(activate(V))
isList(n__nil) → tt
isList(n____(V1, V2)) → and(isList(activate(V1)), n__isList(activate(V2)))
isNeList(V) → isQid(activate(V))
isNeList(n____(V1, V2)) → and(isList(activate(V1)), n__isNeList(activate(V2)))
isNeList(n____(V1, V2)) → and(isNeList(activate(V1)), n__isList(activate(V2)))
isNePal(V) → isQid(activate(V))
isNePal(n____(I, n____(P, I))) → and(isQid(activate(I)), n__isPal(activate(P)))
isPal(V) → isNePal(activate(V))
isPal(n__nil) → tt
isQid(n__a) → tt
isQid(n__e) → tt
isQid(n__i) → tt
isQid(n__o) → tt
isQid(n__u) → tt
nil → n__nil
__(X1, X2) → n____(X1, X2)
isList(X) → n__isList(X)
isNeList(X) → n__isNeList(X)
isPal(X) → n__isPal(X)
a → n__a
e → n__e
i → n__i
o → n__o
u → n__u
activate(n__nil) → nil
activate(n____(X1, X2)) → __(activate(X1), activate(X2))
activate(n__isList(X)) → isList(X)
activate(n__isNeList(X)) → isNeList(X)
activate(n__isPal(X)) → isPal(X)
activate(n__a) → a
activate(n__e) → e
activate(n__i) → i
activate(n__o) → o
activate(n__u) → u
activate(X) → X
Rewrite Strategy: FULL
(1) DecreasingLoopProof (EQUIVALENT transformation)
The following loop(s) give(s) rise to the lower bound Ω(n1):
The rewrite sequence
isList(n__isList(X3390_0)) →+ isNeList(isList(X3390_0))
gives rise to a decreasing loop by considering the right hand sides subterm at position [0].
The pumping substitution is [X3390_0 / n__isList(X3390_0)].
The result substitution is [ ].
(2) BOUNDS(n^1, INF)
(3) RenamingProof (EQUIVALENT transformation)
Renamed function symbols to avoid clashes with predefined symbol.
(4) Obligation:
Runtime Complexity Relative TRS:
The TRS R consists of the following rules:
__(__(X, Y), Z) → __(X, __(Y, Z))
__(X, nil) → X
__(nil, X) → X
and(tt, X) → activate(X)
isList(V) → isNeList(activate(V))
isList(n__nil) → tt
isList(n____(V1, V2)) → and(isList(activate(V1)), n__isList(activate(V2)))
isNeList(V) → isQid(activate(V))
isNeList(n____(V1, V2)) → and(isList(activate(V1)), n__isNeList(activate(V2)))
isNeList(n____(V1, V2)) → and(isNeList(activate(V1)), n__isList(activate(V2)))
isNePal(V) → isQid(activate(V))
isNePal(n____(I, n____(P, I))) → and(isQid(activate(I)), n__isPal(activate(P)))
isPal(V) → isNePal(activate(V))
isPal(n__nil) → tt
isQid(n__a) → tt
isQid(n__e) → tt
isQid(n__i) → tt
isQid(n__o) → tt
isQid(n__u) → tt
nil → n__nil
__(X1, X2) → n____(X1, X2)
isList(X) → n__isList(X)
isNeList(X) → n__isNeList(X)
isPal(X) → n__isPal(X)
a → n__a
e → n__e
i → n__i
o → n__o
u → n__u
activate(n__nil) → nil
activate(n____(X1, X2)) → __(activate(X1), activate(X2))
activate(n__isList(X)) → isList(X)
activate(n__isNeList(X)) → isNeList(X)
activate(n__isPal(X)) → isPal(X)
activate(n__a) → a
activate(n__e) → e
activate(n__i) → i
activate(n__o) → o
activate(n__u) → u
activate(X) → X
S is empty.
Rewrite Strategy: FULL
(5) TypeInferenceProof (BOTH BOUNDS(ID, ID) transformation)
Infered types.
(6) Obligation:
TRS:
Rules:
__(__(X, Y), Z) → __(X, __(Y, Z))
__(X, nil) → X
__(nil, X) → X
and(tt, X) → activate(X)
isList(V) → isNeList(activate(V))
isList(n__nil) → tt
isList(n____(V1, V2)) → and(isList(activate(V1)), n__isList(activate(V2)))
isNeList(V) → isQid(activate(V))
isNeList(n____(V1, V2)) → and(isList(activate(V1)), n__isNeList(activate(V2)))
isNeList(n____(V1, V2)) → and(isNeList(activate(V1)), n__isList(activate(V2)))
isNePal(V) → isQid(activate(V))
isNePal(n____(I, n____(P, I))) → and(isQid(activate(I)), n__isPal(activate(P)))
isPal(V) → isNePal(activate(V))
isPal(n__nil) → tt
isQid(n__a) → tt
isQid(n__e) → tt
isQid(n__i) → tt
isQid(n__o) → tt
isQid(n__u) → tt
nil → n__nil
__(X1, X2) → n____(X1, X2)
isList(X) → n__isList(X)
isNeList(X) → n__isNeList(X)
isPal(X) → n__isPal(X)
a → n__a
e → n__e
i → n__i
o → n__o
u → n__u
activate(n__nil) → nil
activate(n____(X1, X2)) → __(activate(X1), activate(X2))
activate(n__isList(X)) → isList(X)
activate(n__isNeList(X)) → isNeList(X)
activate(n__isPal(X)) → isPal(X)
activate(n__a) → a
activate(n__e) → e
activate(n__i) → i
activate(n__o) → o
activate(n__u) → u
activate(X) → X
Types:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
(7) OrderProof (LOWER BOUND(ID) transformation)
Heuristically decided to analyse the following defined symbols:
__,
and,
activate,
isList,
isNeList,
isNePal,
isPalThey will be analysed ascendingly in the following order:
__ < activate
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(8) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
The following defined symbols remain to be analysed:
__, and, activate, isList, isNeList, isNePal, isPal
They will be analysed ascendingly in the following order:
__ < activate
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(9) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol __.
(10) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
The following defined symbols remain to be analysed:
activate, and, isList, isNeList, isNePal, isPal
They will be analysed ascendingly in the following order:
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(11) RewriteLemmaProof (LOWER BOUND(ID) transformation)
Proved the following rewrite lemma:
activate(
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(
n27_0)) →
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(
n27_0), rt ∈ Ω(1 + n27
0)
Induction Base:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0)) →RΩ(1)
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0)
Induction Step:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(n27_0, 1))) →RΩ(1)
__(activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)), activate(n__nil)) →IH
__(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(c28_0), activate(n__nil)) →RΩ(1)
__(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), n__nil) →RΩ(1)
n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), n__nil)
We have rt ∈ Ω(n1) and sz ∈ O(n). Thus, we have ircR ∈ Ω(n).
(12) Complex Obligation (BEST)
(13) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
The following defined symbols remain to be analysed:
isList, and, isNeList, isNePal, isPal
They will be analysed ascendingly in the following order:
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(14) RewriteLemmaProof (LOWER BOUND(ID) transformation)
Proved the following rewrite lemma:
isList(
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(
n65578_0)) →
tt, rt ∈ Ω(1 + n65578
0 + n65578
02)
Induction Base:
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0)) →RΩ(1)
tt
Induction Step:
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(n65578_0, 1))) →RΩ(1)
and(isList(activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0))), n__isList(activate(n__nil))) →LΩ(1 + n655780)
and(isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)), n__isList(activate(n__nil))) →IH
and(tt, n__isList(activate(n__nil))) →LΩ(1)
and(tt, n__isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0))) →RΩ(1)
activate(n__isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0))) →RΩ(1)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0)) →RΩ(1)
tt
We have rt ∈ Ω(n2) and sz ∈ O(n). Thus, we have ircR ∈ Ω(n2).
(15) Complex Obligation (BEST)
(16) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
The following defined symbols remain to be analysed:
isNeList, and, activate, isNePal, isPal
They will be analysed ascendingly in the following order:
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(17) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol isNeList.
(18) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
The following defined symbols remain to be analysed:
and, activate, isNePal, isPal
They will be analysed ascendingly in the following order:
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(19) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol and.
(20) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
The following defined symbols remain to be analysed:
isPal, activate, isNePal
They will be analysed ascendingly in the following order:
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(21) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol isPal.
(22) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
The following defined symbols remain to be analysed:
isNePal, activate
They will be analysed ascendingly in the following order:
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(23) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol isNePal.
(24) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
The following defined symbols remain to be analysed:
activate
They will be analysed ascendingly in the following order:
and = activate
and = isList
and = isNeList
and = isNePal
and = isPal
activate = isList
activate = isNeList
activate = isNePal
activate = isPal
isList = isNeList
isList = isNePal
isList = isPal
isNeList = isNePal
isNeList = isPal
isNePal = isPal
(25) RewriteLemmaProof (LOWER BOUND(ID) transformation)
Proved the following rewrite lemma:
activate(
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(
n153552_0)) →
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(
n153552_0), rt ∈ Ω(1 + n153552
0)
Induction Base:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0)) →RΩ(1)
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0)
Induction Step:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(n153552_0, 1))) →RΩ(1)
__(activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n153552_0)), activate(n__nil)) →IH
__(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(c153553_0), activate(n__nil)) →RΩ(1)
__(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n153552_0), n__nil) →RΩ(1)
n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n153552_0), n__nil)
We have rt ∈ Ω(n1) and sz ∈ O(n). Thus, we have ircR ∈ Ω(n).
(26) Complex Obligation (BEST)
(27) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n153552_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n153552_0), rt ∈ Ω(1 + n1535520)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
No more defined symbols left to analyse.
(28) LowerBoundsProof (EQUIVALENT transformation)
The lowerbound Ω(n2) was proven with the following lemma:
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
(29) BOUNDS(n^2, INF)
(30) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n153552_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n153552_0), rt ∈ Ω(1 + n1535520)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
No more defined symbols left to analyse.
(31) LowerBoundsProof (EQUIVALENT transformation)
The lowerbound Ω(n2) was proven with the following lemma:
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
(32) BOUNDS(n^2, INF)
(33) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
No more defined symbols left to analyse.
(34) LowerBoundsProof (EQUIVALENT transformation)
The lowerbound Ω(n2) was proven with the following lemma:
isList(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n65578_0)) → tt, rt ∈ Ω(1 + n655780 + n6557802)
(35) BOUNDS(n^2, INF)
(36) Obligation:
TRS:
Rules:
__(
__(
X,
Y),
Z) →
__(
X,
__(
Y,
Z))
__(
X,
nil) →
X__(
nil,
X) →
Xand(
tt,
X) →
activate(
X)
isList(
V) →
isNeList(
activate(
V))
isList(
n__nil) →
ttisList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isList(
activate(
V2)))
isNeList(
V) →
isQid(
activate(
V))
isNeList(
n____(
V1,
V2)) →
and(
isList(
activate(
V1)),
n__isNeList(
activate(
V2)))
isNeList(
n____(
V1,
V2)) →
and(
isNeList(
activate(
V1)),
n__isList(
activate(
V2)))
isNePal(
V) →
isQid(
activate(
V))
isNePal(
n____(
I,
n____(
P,
I))) →
and(
isQid(
activate(
I)),
n__isPal(
activate(
P)))
isPal(
V) →
isNePal(
activate(
V))
isPal(
n__nil) →
ttisQid(
n__a) →
ttisQid(
n__e) →
ttisQid(
n__i) →
ttisQid(
n__o) →
ttisQid(
n__u) →
ttnil →
n__nil__(
X1,
X2) →
n____(
X1,
X2)
isList(
X) →
n__isList(
X)
isNeList(
X) →
n__isNeList(
X)
isPal(
X) →
n__isPal(
X)
a →
n__ae →
n__ei →
n__io →
n__ou →
n__uactivate(
n__nil) →
nilactivate(
n____(
X1,
X2)) →
__(
activate(
X1),
activate(
X2))
activate(
n__isList(
X)) →
isList(
X)
activate(
n__isNeList(
X)) →
isNeList(
X)
activate(
n__isPal(
X)) →
isPal(
X)
activate(
n__a) →
aactivate(
n__e) →
eactivate(
n__i) →
iactivate(
n__o) →
oactivate(
n__u) →
uactivate(
X) →
XTypes:
__ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
and :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
tt :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
activate :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__nil :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n____ :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isQid :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isNeList :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isNePal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
isPal :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
n__u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
a :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
e :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
i :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
o :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
u :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
hole_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u1_0 :: tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0 :: Nat → tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u
Lemmas:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
Generator Equations:
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(0) ⇔ n__nil
gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(+(x, 1)) ⇔ n____(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(x), n__nil)
No more defined symbols left to analyse.
(37) LowerBoundsProof (EQUIVALENT transformation)
The lowerbound Ω(n1) was proven with the following lemma:
activate(gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0)) → gen_tt:n__nil:n____:n__isList:n__isNeList:n__isPal:n__a:n__e:n__i:n__o:n__u2_0(n27_0), rt ∈ Ω(1 + n270)
(38) BOUNDS(n^1, INF)