interpretations
Execution Time (secs) | - |
Answer | YES(?,O(n^2)) |
Input | SK90 2.13 |
YES(?,O(n^2))
We are left with following problem, upon which TcT provides the
certificate YES(?,O(n^2)).
Strict Trs:
{ double(x) -> +(x, x)
, double(0()) -> 0()
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, +(s(x), y) -> s(+(x, y)) }
Obligation:
innermost runtime complexity
Answer:
YES(?,O(n^2))
The following argument positions are usable:
Uargs(double) = {}, Uargs(s) = {1}, Uargs(+) = {}
TcT has computed following constructor-restricted polynomial
interpretation.
[double](x1) = 1 + 2*x1 + 2*x1^2
[0]() = 3
[s](x1) = 2 + x1
[+](x1, x2) = 2*x1 + 2*x2^2
This order satisfies following ordering constraints
[double(x)] = 1 + 2*x + 2*x^2
> 2*x + 2*x^2
= [+(x, x)]
[double(0())] = 25
> 3
= [0()]
[double(s(x))] = 13 + 10*x + 2*x^2
> 5 + 2*x + 2*x^2
= [s(s(double(x)))]
[+(x, 0())] = 2*x + 18
> x
= [x]
[+(x, s(y))] = 2*x + 8 + 8*y + 2*y^2
> 2 + 2*x + 2*y^2
= [s(+(x, y))]
[+(s(x), y)] = 4 + 2*x + 2*y^2
> 2 + 2*x + 2*y^2
= [s(+(x, y))]
Hurray, we answered YES(?,O(n^2))
lmpo
Execution Time (secs) | - |
Answer | YES(?,ELEMENTARY) |
Input | SK90 2.13 |
YES(?,ELEMENTARY)
We are left with following problem, upon which TcT provides the
certificate YES(?,ELEMENTARY).
Strict Trs:
{ double(0()) -> 0()
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, +(s(x), y) -> s(+(x, y))
, double(x) -> +(x, x) }
Obligation:
innermost runtime complexity
Answer:
YES(?,ELEMENTARY)
The input was oriented with the instance of 'Lightweight Multiset
Path Order' as induced by the safe mapping
safe(double) = {}, safe(0) = {}, safe(s) = {1}, safe(+) = {}
and precedence
double > + .
Following symbols are considered recursive:
{double, +}
The recursion depth is 2.
For your convenience, here are the oriented rules in predicative
notation, possibly applying argument filtering:
Strict DPs:
Weak DPs :
Strict Trs:
{ double(0();) -> 0()
, double(s(; x);) -> s(; s(; double(x;)))
, +(x, 0();) -> x
, +(x, s(; y);) -> s(; +(x, y;))
, +(s(; x), y;) -> s(; +(x, y;))
, double(x;) -> +(x, x;) }
Weak Trs :
Hurray, we answered YES(?,ELEMENTARY)
mpo
Execution Time (secs) | - |
Answer | YES(?,PRIMREC) |
Input | SK90 2.13 |
YES(?,PRIMREC)
We are left with following problem, upon which TcT provides the
certificate YES(?,PRIMREC).
Strict Trs:
{ double(0()) -> 0()
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, +(s(x), y) -> s(+(x, y))
, double(x) -> +(x, x) }
Obligation:
innermost runtime complexity
Answer:
YES(?,PRIMREC)
The input was oriented with the instance of'multiset path orders'
as induced by the precedence
double > s, double > +, + > s .
Hurray, we answered YES(?,PRIMREC)
popstar
Execution Time (secs) | 0.174 |
Answer | YES(?,POLY) |
Input | SK90 2.13 |
YES(?,POLY)
We are left with following problem, upon which TcT provides the
certificate YES(?,POLY).
Strict Trs:
{ double(0()) -> 0()
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, +(s(x), y) -> s(+(x, y))
, double(x) -> +(x, x) }
Obligation:
innermost runtime complexity
Answer:
YES(?,POLY)
The input was oriented with the instance of 'Polynomial Path Order'
as induced by the safe mapping
safe(double) = {}, safe(0) = {}, safe(s) = {1}, safe(+) = {}
and precedence
double > + .
Following symbols are considered recursive:
{double, +}
The recursion depth is 2.
For your convenience, here are the oriented rules in predicative
notation, possibly applying argument filtering:
Strict DPs:
Weak DPs :
Strict Trs:
{ double(0();) -> 0()
, double(s(; x);) -> s(; s(; double(x;)))
, +(x, 0();) -> x
, +(x, s(; y);) -> s(; +(x, y;))
, +(s(; x), y;) -> s(; +(x, y;))
, double(x;) -> +(x, x;) }
Weak Trs :
Hurray, we answered YES(?,POLY)
popstar-ps
Execution Time (secs) | 0.240 |
Answer | YES(?,POLY) |
Input | SK90 2.13 |
YES(?,POLY)
We are left with following problem, upon which TcT provides the
certificate YES(?,POLY).
Strict Trs:
{ double(0()) -> 0()
, double(s(x)) -> s(s(double(x)))
, +(x, 0()) -> x
, +(x, s(y)) -> s(+(x, y))
, +(s(x), y) -> s(+(x, y))
, double(x) -> +(x, x) }
Obligation:
innermost runtime complexity
Answer:
YES(?,POLY)
The input was oriented with the instance of 'Polynomial Path Order
(PS)' as induced by the safe mapping
safe(double) = {}, safe(0) = {}, safe(s) = {1}, safe(+) = {}
and precedence
double > + .
Following symbols are considered recursive:
{double, +}
The recursion depth is 2.
For your convenience, here are the oriented rules in predicative
notation, possibly applying argument filtering:
Strict DPs:
Weak DPs :
Strict Trs:
{ double(0();) -> 0()
, double(s(; x);) -> s(; s(; double(x;)))
, +(x, 0();) -> x
, +(x, s(; y);) -> s(; +(x, y;))
, +(s(; x), y;) -> s(; +(x, y;))
, double(x;) -> +(x, x;) }
Weak Trs :
Hurray, we answered YES(?,POLY)