We consider the following Problem:
Strict Trs:
{ f(0()) -> cons(0(), n__f(n__s(n__0())))
, f(s(0())) -> f(p(s(0())))
, p(s(0())) -> 0()
, f(X) -> n__f(X)
, s(X) -> n__s(X)
, 0() -> n__0()
, activate(n__f(X)) -> f(activate(X))
, activate(n__s(X)) -> s(activate(X))
, activate(n__0()) -> 0()
, activate(X) -> X}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
Arguments of following rules are not normal-forms:
{ f(0()) -> cons(0(), n__f(n__s(n__0())))
, f(s(0())) -> f(p(s(0())))
, p(s(0())) -> 0()}
All above mentioned rules can be savely removed.
We consider the following Problem:
Strict Trs:
{ f(X) -> n__f(X)
, s(X) -> n__s(X)
, 0() -> n__0()
, activate(n__f(X)) -> f(activate(X))
, activate(n__s(X)) -> s(activate(X))
, activate(n__0()) -> 0()
, activate(X) -> X}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {0() -> n__0()}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(f) = {1}, Uargs(cons) = {}, Uargs(n__f) = {},
Uargs(n__s) = {}, Uargs(s) = {1}, Uargs(p) = {},
Uargs(activate) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
f(x1) = [1 0] x1 + [0]
[0 0] [1]
0() = [2]
[0]
cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0]
[1 0] [0 0] [0]
n__f(x1) = [1 0] x1 + [0]
[0 0] [0]
n__s(x1) = [1 0] x1 + [0]
[0 0] [0]
n__0() = [0]
[0]
s(x1) = [1 0] x1 + [0]
[0 0] [1]
p(x1) = [0 0] x1 + [0]
[0 0] [0]
activate(x1) = [1 0] x1 + [1]
[1 0] [1]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ f(X) -> n__f(X)
, s(X) -> n__s(X)
, activate(n__f(X)) -> f(activate(X))
, activate(n__s(X)) -> s(activate(X))
, activate(n__0()) -> 0()
, activate(X) -> X}
Weak Trs: {0() -> n__0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {activate(n__0()) -> 0()}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(f) = {1}, Uargs(cons) = {}, Uargs(n__f) = {},
Uargs(n__s) = {}, Uargs(s) = {1}, Uargs(p) = {},
Uargs(activate) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
f(x1) = [1 0] x1 + [0]
[0 0] [1]
0() = [0]
[0]
cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0]
[1 0] [0 0] [0]
n__f(x1) = [1 0] x1 + [0]
[0 0] [0]
n__s(x1) = [1 0] x1 + [0]
[0 0] [0]
n__0() = [0]
[0]
s(x1) = [1 0] x1 + [0]
[0 0] [1]
p(x1) = [0 0] x1 + [0]
[0 0] [0]
activate(x1) = [1 0] x1 + [1]
[1 0] [1]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ f(X) -> n__f(X)
, s(X) -> n__s(X)
, activate(n__f(X)) -> f(activate(X))
, activate(n__s(X)) -> s(activate(X))
, activate(X) -> X}
Weak Trs:
{ activate(n__0()) -> 0()
, 0() -> n__0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {s(X) -> n__s(X)}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(f) = {1}, Uargs(cons) = {}, Uargs(n__f) = {},
Uargs(n__s) = {}, Uargs(s) = {1}, Uargs(p) = {},
Uargs(activate) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
f(x1) = [1 0] x1 + [0]
[0 0] [1]
0() = [0]
[0]
cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0]
[1 0] [0 0] [0]
n__f(x1) = [1 0] x1 + [0]
[0 0] [0]
n__s(x1) = [1 0] x1 + [0]
[0 0] [0]
n__0() = [0]
[0]
s(x1) = [1 0] x1 + [2]
[0 0] [1]
p(x1) = [0 0] x1 + [0]
[0 0] [0]
activate(x1) = [1 0] x1 + [1]
[1 0] [1]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ f(X) -> n__f(X)
, activate(n__f(X)) -> f(activate(X))
, activate(n__s(X)) -> s(activate(X))
, activate(X) -> X}
Weak Trs:
{ s(X) -> n__s(X)
, activate(n__0()) -> 0()
, 0() -> n__0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {f(X) -> n__f(X)}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(f) = {1}, Uargs(cons) = {}, Uargs(n__f) = {},
Uargs(n__s) = {}, Uargs(s) = {1}, Uargs(p) = {},
Uargs(activate) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
f(x1) = [1 0] x1 + [2]
[0 0] [0]
0() = [0]
[0]
cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0]
[1 0] [0 0] [0]
n__f(x1) = [1 0] x1 + [0]
[0 0] [0]
n__s(x1) = [1 0] x1 + [0]
[0 0] [0]
n__0() = [0]
[0]
s(x1) = [1 0] x1 + [0]
[0 0] [1]
p(x1) = [0 0] x1 + [0]
[0 0] [0]
activate(x1) = [1 0] x1 + [1]
[1 0] [1]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ activate(n__f(X)) -> f(activate(X))
, activate(n__s(X)) -> s(activate(X))
, activate(X) -> X}
Weak Trs:
{ f(X) -> n__f(X)
, s(X) -> n__s(X)
, activate(n__0()) -> 0()
, 0() -> n__0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {activate(X) -> X}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(f) = {1}, Uargs(cons) = {}, Uargs(n__f) = {},
Uargs(n__s) = {}, Uargs(s) = {1}, Uargs(p) = {},
Uargs(activate) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
f(x1) = [1 0] x1 + [0]
[0 1] [1]
0() = [0]
[0]
cons(x1, x2) = [0 0] x1 + [1 0] x2 + [0]
[0 0] [0 1] [0]
n__f(x1) = [1 0] x1 + [0]
[0 1] [0]
n__s(x1) = [1 0] x1 + [0]
[0 0] [0]
n__0() = [0]
[0]
s(x1) = [1 0] x1 + [0]
[0 0] [1]
p(x1) = [0 0] x1 + [0]
[0 0] [0]
activate(x1) = [1 0] x1 + [1]
[0 1] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ activate(n__f(X)) -> f(activate(X))
, activate(n__s(X)) -> s(activate(X))}
Weak Trs:
{ activate(X) -> X
, f(X) -> n__f(X)
, s(X) -> n__s(X)
, activate(n__0()) -> 0()
, 0() -> n__0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
We consider the following Problem:
Strict Trs:
{ activate(n__f(X)) -> f(activate(X))
, activate(n__s(X)) -> s(activate(X))}
Weak Trs:
{ activate(X) -> X
, f(X) -> n__f(X)
, s(X) -> n__s(X)
, activate(n__0()) -> 0()
, 0() -> n__0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The problem is match-bounded by 1.
The enriched problem is compatible with the following automaton:
{ f_0(2) -> 1
, f_1(3) -> 1
, f_1(3) -> 3
, 0_0() -> 1
, 0_1() -> 3
, n__f_0(2) -> 1
, n__f_0(2) -> 2
, n__f_0(2) -> 3
, n__f_1(3) -> 1
, n__f_1(3) -> 3
, n__s_0(2) -> 1
, n__s_0(2) -> 2
, n__s_0(2) -> 3
, n__s_1(3) -> 1
, n__s_1(3) -> 3
, n__0_0() -> 1
, n__0_0() -> 2
, n__0_0() -> 3
, n__0_1() -> 3
, s_0(2) -> 1
, s_1(3) -> 1
, s_1(3) -> 3
, activate_0(2) -> 1
, activate_1(2) -> 3}
Hurray, we answered YES(?,O(n^1))