We consider the following Problem:
Strict Trs:
{ a__zeros() -> cons(0(), zeros())
, a__tail(cons(X, XS)) -> mark(XS)
, mark(zeros()) -> a__zeros()
, mark(tail(X)) -> a__tail(mark(X))
, mark(cons(X1, X2)) -> cons(mark(X1), X2)
, mark(0()) -> 0()
, a__zeros() -> zeros()
, a__tail(X) -> tail(X)}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
We consider the following Problem:
Strict Trs:
{ a__zeros() -> cons(0(), zeros())
, a__tail(cons(X, XS)) -> mark(XS)
, mark(zeros()) -> a__zeros()
, mark(tail(X)) -> a__tail(mark(X))
, mark(cons(X1, X2)) -> cons(mark(X1), X2)
, mark(0()) -> 0()
, a__zeros() -> zeros()
, a__tail(X) -> tail(X)}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component:
{ a__zeros() -> cons(0(), zeros())
, mark(0()) -> 0()
, a__zeros() -> zeros()}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {},
Uargs(tail) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
a__zeros() = [2]
[2]
cons(x1, x2) = [1 0] x1 + [0 0] x2 + [1]
[0 0] [0 0] [1]
0() = [0]
[0]
zeros() = [0]
[0]
a__tail(x1) = [1 0] x1 + [0]
[0 0] [1]
mark(x1) = [0 0] x1 + [1]
[0 0] [1]
tail(x1) = [0 0] x1 + [0]
[0 0] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ a__tail(cons(X, XS)) -> mark(XS)
, mark(zeros()) -> a__zeros()
, mark(tail(X)) -> a__tail(mark(X))
, mark(cons(X1, X2)) -> cons(mark(X1), X2)
, a__tail(X) -> tail(X)}
Weak Trs:
{ a__zeros() -> cons(0(), zeros())
, mark(0()) -> 0()
, a__zeros() -> zeros()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component:
{ mark(zeros()) -> a__zeros()
, a__tail(X) -> tail(X)}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {},
Uargs(tail) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
a__zeros() = [0]
[1]
cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [1]
0() = [0]
[0]
zeros() = [0]
[0]
a__tail(x1) = [1 0] x1 + [1]
[0 0] [1]
mark(x1) = [0 0] x1 + [1]
[0 0] [1]
tail(x1) = [0 0] x1 + [0]
[0 0] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ a__tail(cons(X, XS)) -> mark(XS)
, mark(tail(X)) -> a__tail(mark(X))
, mark(cons(X1, X2)) -> cons(mark(X1), X2)}
Weak Trs:
{ mark(zeros()) -> a__zeros()
, a__tail(X) -> tail(X)
, a__zeros() -> cons(0(), zeros())
, mark(0()) -> 0()
, a__zeros() -> zeros()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {a__tail(cons(X, XS)) -> mark(XS)}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {},
Uargs(tail) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
a__zeros() = [0]
[0]
cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [0]
0() = [0]
[0]
zeros() = [0]
[0]
a__tail(x1) = [1 2] x1 + [1]
[0 0] [3]
mark(x1) = [0 0] x1 + [0]
[0 0] [2]
tail(x1) = [0 0] x1 + [0]
[0 0] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ mark(tail(X)) -> a__tail(mark(X))
, mark(cons(X1, X2)) -> cons(mark(X1), X2)}
Weak Trs:
{ a__tail(cons(X, XS)) -> mark(XS)
, mark(zeros()) -> a__zeros()
, a__tail(X) -> tail(X)
, a__zeros() -> cons(0(), zeros())
, mark(0()) -> 0()
, a__zeros() -> zeros()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {mark(cons(X1, X2)) -> cons(mark(X1), X2)}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {},
Uargs(tail) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
a__zeros() = [0]
[1]
cons(x1, x2) = [1 0] x1 + [0 1] x2 + [0]
[0 1] [0 1] [1]
0() = [0]
[0]
zeros() = [0]
[0]
a__tail(x1) = [1 0] x1 + [1]
[0 1] [2]
mark(x1) = [0 1] x1 + [0]
[0 1] [2]
tail(x1) = [0 0] x1 + [0]
[0 1] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs: {mark(tail(X)) -> a__tail(mark(X))}
Weak Trs:
{ mark(cons(X1, X2)) -> cons(mark(X1), X2)
, a__tail(cons(X, XS)) -> mark(XS)
, mark(zeros()) -> a__zeros()
, a__tail(X) -> tail(X)
, a__zeros() -> cons(0(), zeros())
, mark(0()) -> 0()
, a__zeros() -> zeros()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {mark(tail(X)) -> a__tail(mark(X))}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {},
Uargs(tail) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
a__zeros() = [0]
[0]
cons(x1, x2) = [1 0] x1 + [0 2] x2 + [0]
[0 1] [0 1] [0]
0() = [0]
[0]
zeros() = [0]
[0]
a__tail(x1) = [1 0] x1 + [3]
[0 1] [2]
mark(x1) = [0 2] x1 + [1]
[0 1] [0]
tail(x1) = [0 0] x1 + [0]
[0 1] [2]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Weak Trs:
{ mark(tail(X)) -> a__tail(mark(X))
, mark(cons(X1, X2)) -> cons(mark(X1), X2)
, a__tail(cons(X, XS)) -> mark(XS)
, mark(zeros()) -> a__zeros()
, a__tail(X) -> tail(X)
, a__zeros() -> cons(0(), zeros())
, mark(0()) -> 0()
, a__zeros() -> zeros()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(O(1),O(1))
Proof:
We consider the following Problem:
Weak Trs:
{ mark(tail(X)) -> a__tail(mark(X))
, mark(cons(X1, X2)) -> cons(mark(X1), X2)
, a__tail(cons(X, XS)) -> mark(XS)
, mark(zeros()) -> a__zeros()
, a__tail(X) -> tail(X)
, a__zeros() -> cons(0(), zeros())
, mark(0()) -> 0()
, a__zeros() -> zeros()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(O(1),O(1))
Proof:
Empty rules are trivially bounded
Hurray, we answered YES(?,O(n^1))