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