We consider the following Problem:
Strict Trs:
{ sqr(0()) -> 0()
, sqr(s(x)) -> +(sqr(x), s(double(x)))
, double(0()) -> 0()
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, sqr(s(x)) -> s(+(sqr(x), double(x)))}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^2))
Proof:
We consider the following Problem:
Strict Trs:
{ sqr(0()) -> 0()
, sqr(s(x)) -> +(sqr(x), s(double(x)))
, double(0()) -> 0()
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, sqr(s(x)) -> s(+(sqr(x), double(x)))}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^2))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {sqr(0()) -> 0()}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(sqr) = {}, Uargs(s) = {1}, Uargs(+) = {1, 2},
Uargs(double) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
sqr(x1) = [0 0] x1 + [1]
[1 0] [1]
0() = [0]
[0]
s(x1) = [1 0] x1 + [0]
[0 0] [1]
+(x1, x2) = [1 0] x1 + [1 0] x2 + [0]
[0 0] [0 0] [1]
double(x1) = [0 0] x1 + [0]
[0 0] [1]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ sqr(s(x)) -> +(sqr(x), s(double(x)))
, double(0()) -> 0()
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, sqr(s(x)) -> s(+(sqr(x), double(x)))}
Weak Trs: {sqr(0()) -> 0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^2))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {double(0()) -> 0()}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(sqr) = {}, Uargs(s) = {1}, Uargs(+) = {1, 2},
Uargs(double) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
sqr(x1) = [0 0] x1 + [1]
[1 0] [1]
0() = [0]
[0]
s(x1) = [1 0] x1 + [0]
[0 0] [1]
+(x1, x2) = [1 0] x1 + [1 0] x2 + [0]
[1 0] [0 0] [0]
double(x1) = [0 0] x1 + [2]
[0 0] [1]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ sqr(s(x)) -> +(sqr(x), s(double(x)))
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, sqr(s(x)) -> s(+(sqr(x), double(x)))}
Weak Trs:
{ double(0()) -> 0()
, sqr(0()) -> 0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^2))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {+(x, 0()) -> x}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(sqr) = {}, Uargs(s) = {1}, Uargs(+) = {1, 2},
Uargs(double) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
sqr(x1) = [0 0] x1 + [1]
[0 0] [1]
0() = [1]
[0]
s(x1) = [1 0] x1 + [0]
[0 0] [1]
+(x1, x2) = [1 0] x1 + [1 0] x2 + [0]
[0 1] [0 0] [1]
double(x1) = [0 0] x1 + [2]
[0 0] [1]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ sqr(s(x)) -> +(sqr(x), s(double(x)))
, double(s(x)) -> s(s(double(x)))
, +(x, s(y)) -> s(+(x, y))
, sqr(s(x)) -> s(+(sqr(x), double(x)))}
Weak Trs:
{ +(x, 0()) -> x
, double(0()) -> 0()
, sqr(0()) -> 0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^2))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {sqr(s(x)) -> +(sqr(x), s(double(x)))}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(sqr) = {}, Uargs(s) = {1}, Uargs(+) = {1, 2},
Uargs(double) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
sqr(x1) = [1 1] x1 + [0]
[0 0] [1]
0() = [0]
[0]
s(x1) = [1 0] x1 + [0]
[0 1] [1]
+(x1, x2) = [1 0] x1 + [1 0] x2 + [0]
[0 1] [0 0] [0]
double(x1) = [0 0] x1 + [0]
[0 0] [1]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ double(s(x)) -> s(s(double(x)))
, +(x, s(y)) -> s(+(x, y))
, sqr(s(x)) -> s(+(sqr(x), double(x)))}
Weak Trs:
{ sqr(s(x)) -> +(sqr(x), s(double(x)))
, +(x, 0()) -> x
, double(0()) -> 0()
, sqr(0()) -> 0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^2))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {sqr(s(x)) -> s(+(sqr(x), double(x)))}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(sqr) = {}, Uargs(s) = {1}, Uargs(+) = {1, 2},
Uargs(double) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
sqr(x1) = [0 1] x1 + [2]
[0 1] [0]
0() = [0]
[0]
s(x1) = [1 0] x1 + [1]
[0 1] [3]
+(x1, x2) = [1 0] x1 + [1 0] x2 + [1]
[0 1] [0 0] [0]
double(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:
{ double(s(x)) -> s(s(double(x)))
, +(x, s(y)) -> s(+(x, y))}
Weak Trs:
{ sqr(s(x)) -> s(+(sqr(x), double(x)))
, sqr(s(x)) -> +(sqr(x), s(double(x)))
, +(x, 0()) -> x
, double(0()) -> 0()
, sqr(0()) -> 0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^2))
Proof:
We consider the following Problem:
Strict Trs:
{ double(s(x)) -> s(s(double(x)))
, +(x, s(y)) -> s(+(x, y))}
Weak Trs:
{ sqr(s(x)) -> s(+(sqr(x), double(x)))
, sqr(s(x)) -> +(sqr(x), s(double(x)))
, +(x, 0()) -> x
, double(0()) -> 0()
, sqr(0()) -> 0()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^2))
Proof:
The following argument positions are usable:
Uargs(sqr) = {}, Uargs(s) = {1}, Uargs(+) = {1, 2},
Uargs(double) = {}
We have the following restricted polynomial interpretation:
Interpretation Functions:
[sqr](x1) = x1 + 3*x1^2
[0]() = 2
[s](x1) = 1 + x1
[+](x1, x2) = x1 + 2*x2
[double](x1) = 1 + 3*x1
Hurray, we answered YES(?,O(n^2))