* Step 1: DependencyPairs WORST_CASE(?,O(1))
+ Considered Problem:
- Strict TRS:
b(y,z) -> z
f(c(a(),z,x)) -> b(a(),z)
- Signature:
{b/2,f/1} / {a/0,c/3}
- Obligation:
innermost runtime complexity wrt. defined symbols {b,f} and constructors {a,c}
+ Applied Processor:
DependencyPairs {dpKind_ = DT}
+ Details:
We add the following dependency tuples:
Strict DPs
b#(y,z) -> c_1()
f#(c(a(),z,x)) -> c_2(b#(a(),z))
Weak DPs
and mark the set of starting terms.
* Step 2: UsableRules WORST_CASE(?,O(1))
+ Considered Problem:
- Strict DPs:
b#(y,z) -> c_1()
f#(c(a(),z,x)) -> c_2(b#(a(),z))
- Weak TRS:
b(y,z) -> z
f(c(a(),z,x)) -> b(a(),z)
- Signature:
{b/2,f/1,b#/2,f#/1} / {a/0,c/3,c_1/0,c_2/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {b#,f#} and constructors {a,c}
+ Applied Processor:
UsableRules
+ Details:
We replace rewrite rules by usable rules:
b#(y,z) -> c_1()
f#(c(a(),z,x)) -> c_2(b#(a(),z))
* Step 3: Trivial WORST_CASE(?,O(1))
+ Considered Problem:
- Strict DPs:
b#(y,z) -> c_1()
f#(c(a(),z,x)) -> c_2(b#(a(),z))
- Signature:
{b/2,f/1,b#/2,f#/1} / {a/0,c/3,c_1/0,c_2/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {b#,f#} and constructors {a,c}
+ Applied Processor:
Trivial
+ Details:
Consider the dependency graph
1:S:b#(y,z) -> c_1()
2:S:f#(c(a(),z,x)) -> c_2(b#(a(),z))
-->_1 b#(y,z) -> c_1():1
The dependency graph contains no loops, we remove all dependency pairs.
* Step 4: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{b/2,f/1,b#/2,f#/1} / {a/0,c/3,c_1/0,c_2/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {b#,f#} and constructors {a,c}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
WORST_CASE(?,O(1))