interpretations
YES(?,O(n^1))
We are left with following problem, upon which TcT provides the
certificate YES(?,O(n^1)).
Strict Trs:
{ a__f(X) -> g(h(f(X)))
, a__f(X) -> f(X)
, mark(g(X)) -> g(X)
, mark(h(X)) -> h(mark(X))
, mark(f(X)) -> a__f(mark(X)) }
Obligation:
innermost runtime complexity
Answer:
YES(?,O(n^1))
The following argument positions are usable:
Uargs(a__f) = {1}, Uargs(g) = {}, Uargs(h) = {1}, Uargs(f) = {},
Uargs(mark) = {}
TcT has computed following constructor-based matrix interpretation
satisfying not(EDA).
[a__f](x1) = [1] x1 + [3]
[g](x1) = [0]
[h](x1) = [1] x1 + [2]
[f](x1) = [1] x1 + [2]
[mark](x1) = [2] x1 + [1]
This order satisfies following ordering constraints
[a__f(X)] = [1] X + [3]
> [0]
= [g(h(f(X)))]
[a__f(X)] = [1] X + [3]
> [1] X + [2]
= [f(X)]
[mark(g(X))] = [1]
> [0]
= [g(X)]
[mark(h(X))] = [2] X + [5]
> [2] X + [3]
= [h(mark(X))]
[mark(f(X))] = [2] X + [5]
> [2] X + [4]
= [a__f(mark(X))]
Hurray, we answered YES(?,O(n^1))
lmpo
YES(?,ELEMENTARY)
We are left with following problem, upon which TcT provides the
certificate YES(?,ELEMENTARY).
Strict Trs:
{ a__f(X) -> g(h(f(X)))
, mark(f(X)) -> a__f(mark(X))
, mark(g(X)) -> g(X)
, mark(h(X)) -> h(mark(X))
, a__f(X) -> f(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(a__f) = {1}, safe(g) = {1}, safe(h) = {1}, safe(f) = {1},
safe(mark) = {}
and precedence
mark > a__f .
Following symbols are considered recursive:
{a__f, mark}
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:
{ a__f(; X) -> g(; h(; f(; X)))
, mark(f(; X);) -> a__f(; mark(X;))
, mark(g(; X);) -> g(; X)
, mark(h(; X);) -> h(; mark(X;))
, a__f(; X) -> f(; X) }
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:
{ a__f(X) -> g(h(f(X)))
, mark(f(X)) -> a__f(mark(X))
, mark(g(X)) -> g(X)
, mark(h(X)) -> h(mark(X))
, a__f(X) -> f(X) }
Obligation:
innermost runtime complexity
Answer:
YES(?,PRIMREC)
The input was oriented with the instance of'multiset path orders'
as induced by the precedence
a__f > g, a__f > h, a__f > f, mark > a__f, mark > h .
Hurray, we answered YES(?,PRIMREC)
popstar
YES(?,POLY)
We are left with following problem, upon which TcT provides the
certificate YES(?,POLY).
Strict Trs:
{ a__f(X) -> g(h(f(X)))
, mark(f(X)) -> a__f(mark(X))
, mark(g(X)) -> g(X)
, mark(h(X)) -> h(mark(X))
, a__f(X) -> f(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(a__f) = {1}, safe(g) = {1}, safe(h) = {1}, safe(f) = {1},
safe(mark) = {}
and precedence
mark > a__f .
Following symbols are considered recursive:
{a__f, mark}
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:
{ a__f(; X) -> g(; h(; f(; X)))
, mark(f(; X);) -> a__f(; mark(X;))
, mark(g(; X);) -> g(; X)
, mark(h(; X);) -> h(; mark(X;))
, a__f(; X) -> f(; X) }
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:
{ a__f(X) -> g(h(f(X)))
, mark(f(X)) -> a__f(mark(X))
, mark(g(X)) -> g(X)
, mark(h(X)) -> h(mark(X))
, a__f(X) -> f(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(a__f) = {1}, safe(g) = {1}, safe(h) = {1}, safe(f) = {1},
safe(mark) = {}
and precedence
mark > a__f .
Following symbols are considered recursive:
{a__f, mark}
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:
{ a__f(; X) -> g(; h(; f(; X)))
, mark(f(; X);) -> a__f(; mark(X;))
, mark(g(; X);) -> g(; X)
, mark(h(; X);) -> h(; mark(X;))
, a__f(; X) -> f(; X) }
Weak Trs :
Hurray, we answered YES(?,POLY)