interpretations
YES(?,O(n^2))
We are left with following problem, upon which TcT provides the
certificate YES(?,O(n^2)).
Strict Trs:
{ add(0(), x) -> x
, add(s(x), y) -> s(add(x, y))
, mult(0(), x) -> 0()
, mult(s(x), y) -> add(y, mult(x, y)) }
Obligation:
innermost runtime complexity
Answer:
YES(?,O(n^2))
The following argument positions are usable:
Uargs(add) = {2}, Uargs(s) = {1}, Uargs(mult) = {}
TcT has computed following constructor-restricted polynomial
interpretation.
[add](x1, x2) = 2*x1 + x2
[0]() = 2
[s](x1) = 3 + x1
[mult](x1, x2) = 1 + x1 + 3*x1*x2 + x2
This order satisfies following ordering constraints
[add(0(), x)] = 4 + x
> x
= [x]
[add(s(x), y)] = 6 + 2*x + y
> 3 + 2*x + y
= [s(add(x, y))]
[mult(0(), x)] = 3 + 7*x
> 2
= [0()]
[mult(s(x), y)] = 4 + x + 10*y + 3*x*y
> 3*y + 1 + x + 3*x*y
= [add(y, mult(x, y))]
Hurray, we answered YES(?,O(n^2))
lmpo
YES(?,ELEMENTARY)
We are left with following problem, upon which TcT provides the
certificate YES(?,ELEMENTARY).
Strict Trs:
{ add(0(), x) -> x
, add(s(x), y) -> s(add(x, y))
, mult(0(), x) -> 0()
, mult(s(x), y) -> add(y, mult(x, y)) }
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(add) = {2}, safe(0) = {}, safe(s) = {1}, safe(mult) = {}
and precedence
mult > add .
Following symbols are considered recursive:
{add, mult}
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:
{ add(0(); x) -> x
, add(s(; x); y) -> s(; add(x; y))
, mult(0(), x;) -> 0()
, mult(s(; x), y;) -> add(y; mult(x, y;)) }
Weak Trs :
Hurray, we answered YES(?,ELEMENTARY)
mpo
YES(?,PRIMREC)
We are left with following problem, upon which TcT provides the
certificate YES(?,PRIMREC).
Strict Trs:
{ add(0(), x) -> x
, add(s(x), y) -> s(add(x, y))
, mult(0(), x) -> 0()
, mult(s(x), y) -> add(y, mult(x, y)) }
Obligation:
innermost runtime complexity
Answer:
YES(?,PRIMREC)
The input was oriented with the instance of'multiset path orders'
as induced by the precedence
add > s, mult > add .
Hurray, we answered YES(?,PRIMREC)
popstar
YES(?,POLY)
We are left with following problem, upon which TcT provides the
certificate YES(?,POLY).
Strict Trs:
{ add(0(), x) -> x
, add(s(x), y) -> s(add(x, y))
, mult(0(), x) -> 0()
, mult(s(x), y) -> add(y, mult(x, y)) }
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(add) = {2}, safe(0) = {}, safe(s) = {1}, safe(mult) = {}
and precedence
mult > add .
Following symbols are considered recursive:
{add, mult}
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:
{ add(0(); x) -> x
, add(s(; x); y) -> s(; add(x; y))
, mult(0(), x;) -> 0()
, mult(s(; x), y;) -> add(y; mult(x, y;)) }
Weak Trs :
Hurray, we answered YES(?,POLY)
popstar-ps
YES(?,POLY)
We are left with following problem, upon which TcT provides the
certificate YES(?,POLY).
Strict Trs:
{ add(0(), x) -> x
, add(s(x), y) -> s(add(x, y))
, mult(0(), x) -> 0()
, mult(s(x), y) -> add(y, mult(x, y)) }
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(add) = {2}, safe(0) = {}, safe(s) = {1}, safe(mult) = {}
and precedence
mult > add .
Following symbols are considered recursive:
{add, mult}
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:
{ add(0(); x) -> x
, add(s(; x); y) -> s(; add(x; y))
, mult(0(), x;) -> 0()
, mult(s(; x), y;) -> add(y; mult(x, y;)) }
Weak Trs :
Hurray, we answered YES(?,POLY)