* Step 1: Sum WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: f0(x1,0(),x3,x4,x5) -> 0() f0(x1,S(x),x3,0(),x5) -> 0() f0(x1,S(x'),x3,S(x),x5) -> f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) -> 0() f1(x1,x2,x3,x4,S(x)) -> f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) -> 0() f2(x1,x2,S(x),0(),0()) -> 0() f2(x1,x2,S(x'),0(),S(x)) -> f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) -> 0() f2(x1,x2,S(x''),S(x'),S(x)) -> f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) -> 0() f3(x1,x2,x3,x4,S(x)) -> f4(x1,x2,x4,x3,x) f4(0(),x2,x3,x4,x5) -> 0() f4(S(x),0(),x3,x4,0()) -> 0() f4(S(x'),0(),x3,x4,S(x)) -> f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) -> 0() f4(S(x''),S(x'),x3,x4,S(x)) -> f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) -> 0() f5(x1,x2,x3,x4,S(x)) -> f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) -> 0() f6(x1,x2,x3,x4,S(x)) -> f0(x1,x2,x4,x3,x) - Signature: {f0/5,f1/5,f2/5,f3/5,f4/5,f5/5,f6/5} / {0/0,S/1} - Obligation: innermost runtime complexity wrt. defined symbols {f0,f1,f2,f3,f4,f5,f6} and constructors {0,S} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () * Step 2: WeightGap WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: f0(x1,0(),x3,x4,x5) -> 0() f0(x1,S(x),x3,0(),x5) -> 0() f0(x1,S(x'),x3,S(x),x5) -> f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) -> 0() f1(x1,x2,x3,x4,S(x)) -> f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) -> 0() f2(x1,x2,S(x),0(),0()) -> 0() f2(x1,x2,S(x'),0(),S(x)) -> f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) -> 0() f2(x1,x2,S(x''),S(x'),S(x)) -> f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) -> 0() f3(x1,x2,x3,x4,S(x)) -> f4(x1,x2,x4,x3,x) f4(0(),x2,x3,x4,x5) -> 0() f4(S(x),0(),x3,x4,0()) -> 0() f4(S(x'),0(),x3,x4,S(x)) -> f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) -> 0() f4(S(x''),S(x'),x3,x4,S(x)) -> f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) -> 0() f5(x1,x2,x3,x4,S(x)) -> f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) -> 0() f6(x1,x2,x3,x4,S(x)) -> f0(x1,x2,x4,x3,x) - Signature: {f0/5,f1/5,f2/5,f3/5,f4/5,f5/5,f6/5} / {0/0,S/1} - Obligation: innermost runtime complexity wrt. defined symbols {f0,f1,f2,f3,f4,f5,f6} and constructors {0,S} + Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} + Details: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: none Following symbols are considered usable: all TcT has computed the following interpretation: p(0) = [3] p(S) = [0] p(f0) = [4] x4 + [3] p(f1) = [4] x4 + [1] x5 + [0] p(f2) = [1] p(f3) = [0] p(f4) = [0] p(f5) = [5] x3 + [0] p(f6) = [4] x3 + [0] Following rules are strictly oriented: f0(x1,S(x),x3,0(),x5) = [15] > [3] = 0() f0(x1,S(x'),x3,S(x),x5) = [3] > [0] = f1(x',S(x'),x,S(x),S(x)) f2(x1,x2,S(x'),0(),S(x)) = [1] > [0] = f3(x1,x2,x',0(),x) f2(x1,x2,S(x''),S(x'),S(x)) = [1] > [0] = f5(x1,x2,S(x''),x',x) Following rules are (at-least) weakly oriented: f0(x1,0(),x3,x4,x5) = [4] x4 + [3] >= [3] = 0() f1(x1,x2,x3,x4,0()) = [4] x4 + [3] >= [3] = 0() f1(x1,x2,x3,x4,S(x)) = [4] x4 + [0] >= [1] = f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) = [1] >= [3] = 0() f2(x1,x2,S(x),0(),0()) = [1] >= [3] = 0() f2(x1,x2,S(x'),S(x),0()) = [1] >= [3] = 0() f3(x1,x2,x3,x4,0()) = [0] >= [3] = 0() f3(x1,x2,x3,x4,S(x)) = [0] >= [0] = f4(x1,x2,x4,x3,x) f4(0(),x2,x3,x4,x5) = [0] >= [3] = 0() f4(S(x),0(),x3,x4,0()) = [0] >= [3] = 0() f4(S(x'),0(),x3,x4,S(x)) = [0] >= [0] = f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) = [0] >= [3] = 0() f4(S(x''),S(x'),x3,x4,S(x)) = [0] >= [1] = f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) = [5] x3 + [0] >= [3] = 0() f5(x1,x2,x3,x4,S(x)) = [5] x3 + [0] >= [4] x3 + [0] = f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) = [4] x3 + [0] >= [3] = 0() f6(x1,x2,x3,x4,S(x)) = [4] x3 + [0] >= [4] x3 + [3] = f0(x1,x2,x4,x3,x) Further, it can be verified that all rules not oriented are covered by the weightgap condition. * Step 3: WeightGap WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: f0(x1,0(),x3,x4,x5) -> 0() f1(x1,x2,x3,x4,0()) -> 0() f1(x1,x2,x3,x4,S(x)) -> f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) -> 0() f2(x1,x2,S(x),0(),0()) -> 0() f2(x1,x2,S(x'),S(x),0()) -> 0() f3(x1,x2,x3,x4,0()) -> 0() f3(x1,x2,x3,x4,S(x)) -> f4(x1,x2,x4,x3,x) f4(0(),x2,x3,x4,x5) -> 0() f4(S(x),0(),x3,x4,0()) -> 0() f4(S(x'),0(),x3,x4,S(x)) -> f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) -> 0() f4(S(x''),S(x'),x3,x4,S(x)) -> f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) -> 0() f5(x1,x2,x3,x4,S(x)) -> f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) -> 0() f6(x1,x2,x3,x4,S(x)) -> f0(x1,x2,x4,x3,x) - Weak TRS: f0(x1,S(x),x3,0(),x5) -> 0() f0(x1,S(x'),x3,S(x),x5) -> f1(x',S(x'),x,S(x),S(x)) f2(x1,x2,S(x'),0(),S(x)) -> f3(x1,x2,x',0(),x) f2(x1,x2,S(x''),S(x'),S(x)) -> f5(x1,x2,S(x''),x',x) - Signature: {f0/5,f1/5,f2/5,f3/5,f4/5,f5/5,f6/5} / {0/0,S/1} - Obligation: innermost runtime complexity wrt. defined symbols {f0,f1,f2,f3,f4,f5,f6} and constructors {0,S} + Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} + Details: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: none Following symbols are considered usable: all TcT has computed the following interpretation: p(0) = [0] p(S) = [1] x1 + [3] p(f0) = [4] x4 + [3] p(f1) = [4] x3 + [4] p(f2) = [4] x3 + [2] p(f3) = [4] x3 + [4] x4 + [0] p(f4) = [4] x3 + [4] x4 + [1] p(f5) = [4] x3 + [2] p(f6) = [4] x3 + [0] Following rules are strictly oriented: f0(x1,0(),x3,x4,x5) = [4] x4 + [3] > [0] = 0() f1(x1,x2,x3,x4,0()) = [4] x3 + [4] > [0] = 0() f1(x1,x2,x3,x4,S(x)) = [4] x3 + [4] > [4] x3 + [2] = f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) = [2] > [0] = 0() f2(x1,x2,S(x),0(),0()) = [4] x + [14] > [0] = 0() f2(x1,x2,S(x'),S(x),0()) = [4] x' + [14] > [0] = 0() f4(0(),x2,x3,x4,x5) = [4] x3 + [4] x4 + [1] > [0] = 0() f4(S(x),0(),x3,x4,0()) = [4] x3 + [4] x4 + [1] > [0] = 0() f4(S(x'),0(),x3,x4,S(x)) = [4] x3 + [4] x4 + [1] > [4] x3 + [4] x4 + [0] = f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) = [4] x3 + [4] x4 + [1] > [0] = 0() f5(x1,x2,x3,x4,0()) = [4] x3 + [2] > [0] = 0() f5(x1,x2,x3,x4,S(x)) = [4] x3 + [2] > [4] x3 + [0] = f6(x2,x1,x3,x4,x) Following rules are (at-least) weakly oriented: f0(x1,S(x),x3,0(),x5) = [3] >= [0] = 0() f0(x1,S(x'),x3,S(x),x5) = [4] x + [15] >= [4] x + [4] = f1(x',S(x'),x,S(x),S(x)) f2(x1,x2,S(x'),0(),S(x)) = [4] x' + [14] >= [4] x' + [0] = f3(x1,x2,x',0(),x) f2(x1,x2,S(x''),S(x'),S(x)) = [4] x'' + [14] >= [4] x'' + [14] = f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) = [4] x3 + [4] x4 + [0] >= [0] = 0() f3(x1,x2,x3,x4,S(x)) = [4] x3 + [4] x4 + [0] >= [4] x3 + [4] x4 + [1] = f4(x1,x2,x4,x3,x) f4(S(x''),S(x'),x3,x4,S(x)) = [4] x3 + [4] x4 + [1] >= [4] x3 + [2] = f2(S(x''),x',x3,x4,x) f6(x1,x2,x3,x4,0()) = [4] x3 + [0] >= [0] = 0() f6(x1,x2,x3,x4,S(x)) = [4] x3 + [0] >= [4] x3 + [3] = f0(x1,x2,x4,x3,x) Further, it can be verified that all rules not oriented are covered by the weightgap condition. * Step 4: WeightGap WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: f3(x1,x2,x3,x4,0()) -> 0() f3(x1,x2,x3,x4,S(x)) -> f4(x1,x2,x4,x3,x) f4(S(x''),S(x'),x3,x4,S(x)) -> f2(S(x''),x',x3,x4,x) f6(x1,x2,x3,x4,0()) -> 0() f6(x1,x2,x3,x4,S(x)) -> f0(x1,x2,x4,x3,x) - Weak TRS: f0(x1,0(),x3,x4,x5) -> 0() f0(x1,S(x),x3,0(),x5) -> 0() f0(x1,S(x'),x3,S(x),x5) -> f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) -> 0() f1(x1,x2,x3,x4,S(x)) -> f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) -> 0() f2(x1,x2,S(x),0(),0()) -> 0() f2(x1,x2,S(x'),0(),S(x)) -> f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) -> 0() f2(x1,x2,S(x''),S(x'),S(x)) -> f5(x1,x2,S(x''),x',x) f4(0(),x2,x3,x4,x5) -> 0() f4(S(x),0(),x3,x4,0()) -> 0() f4(S(x'),0(),x3,x4,S(x)) -> f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) -> 0() f5(x1,x2,x3,x4,0()) -> 0() f5(x1,x2,x3,x4,S(x)) -> f6(x2,x1,x3,x4,x) - Signature: {f0/5,f1/5,f2/5,f3/5,f4/5,f5/5,f6/5} / {0/0,S/1} - Obligation: innermost runtime complexity wrt. defined symbols {f0,f1,f2,f3,f4,f5,f6} and constructors {0,S} + Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} + Details: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: none Following symbols are considered usable: all TcT has computed the following interpretation: p(0) = [0] p(S) = [0] p(f0) = [0] p(f1) = [4] x2 + [0] p(f2) = [0] p(f3) = [0] p(f4) = [6] p(f5) = [0] p(f6) = [0] Following rules are strictly oriented: f4(S(x''),S(x'),x3,x4,S(x)) = [6] > [0] = f2(S(x''),x',x3,x4,x) Following rules are (at-least) weakly oriented: f0(x1,0(),x3,x4,x5) = [0] >= [0] = 0() f0(x1,S(x),x3,0(),x5) = [0] >= [0] = 0() f0(x1,S(x'),x3,S(x),x5) = [0] >= [0] = f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) = [4] x2 + [0] >= [0] = 0() f1(x1,x2,x3,x4,S(x)) = [4] x2 + [0] >= [0] = f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) = [0] >= [0] = 0() f2(x1,x2,S(x),0(),0()) = [0] >= [0] = 0() f2(x1,x2,S(x'),0(),S(x)) = [0] >= [0] = f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) = [0] >= [0] = 0() f2(x1,x2,S(x''),S(x'),S(x)) = [0] >= [0] = f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) = [0] >= [0] = 0() f3(x1,x2,x3,x4,S(x)) = [0] >= [6] = f4(x1,x2,x4,x3,x) f4(0(),x2,x3,x4,x5) = [6] >= [0] = 0() f4(S(x),0(),x3,x4,0()) = [6] >= [0] = 0() f4(S(x'),0(),x3,x4,S(x)) = [6] >= [0] = f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) = [6] >= [0] = 0() f5(x1,x2,x3,x4,0()) = [0] >= [0] = 0() f5(x1,x2,x3,x4,S(x)) = [0] >= [0] = f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) = [0] >= [0] = 0() f6(x1,x2,x3,x4,S(x)) = [0] >= [0] = f0(x1,x2,x4,x3,x) Further, it can be verified that all rules not oriented are covered by the weightgap condition. * Step 5: WeightGap WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: f3(x1,x2,x3,x4,0()) -> 0() f3(x1,x2,x3,x4,S(x)) -> f4(x1,x2,x4,x3,x) f6(x1,x2,x3,x4,0()) -> 0() f6(x1,x2,x3,x4,S(x)) -> f0(x1,x2,x4,x3,x) - Weak TRS: f0(x1,0(),x3,x4,x5) -> 0() f0(x1,S(x),x3,0(),x5) -> 0() f0(x1,S(x'),x3,S(x),x5) -> f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) -> 0() f1(x1,x2,x3,x4,S(x)) -> f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) -> 0() f2(x1,x2,S(x),0(),0()) -> 0() f2(x1,x2,S(x'),0(),S(x)) -> f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) -> 0() f2(x1,x2,S(x''),S(x'),S(x)) -> f5(x1,x2,S(x''),x',x) f4(0(),x2,x3,x4,x5) -> 0() f4(S(x),0(),x3,x4,0()) -> 0() f4(S(x'),0(),x3,x4,S(x)) -> f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) -> 0() f4(S(x''),S(x'),x3,x4,S(x)) -> f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) -> 0() f5(x1,x2,x3,x4,S(x)) -> f6(x2,x1,x3,x4,x) - Signature: {f0/5,f1/5,f2/5,f3/5,f4/5,f5/5,f6/5} / {0/0,S/1} - Obligation: innermost runtime complexity wrt. defined symbols {f0,f1,f2,f3,f4,f5,f6} and constructors {0,S} + Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} + Details: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: none Following symbols are considered usable: all TcT has computed the following interpretation: p(0) = [0] p(S) = [1] p(f0) = [1] x4 + [3] p(f1) = [1] x4 + [3] x5 + [0] p(f2) = [3] p(f3) = [2] p(f4) = [6] p(f5) = [1] x3 + [2] p(f6) = [1] x3 + [0] Following rules are strictly oriented: f3(x1,x2,x3,x4,0()) = [2] > [0] = 0() Following rules are (at-least) weakly oriented: f0(x1,0(),x3,x4,x5) = [1] x4 + [3] >= [0] = 0() f0(x1,S(x),x3,0(),x5) = [3] >= [0] = 0() f0(x1,S(x'),x3,S(x),x5) = [4] >= [4] = f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) = [1] x4 + [0] >= [0] = 0() f1(x1,x2,x3,x4,S(x)) = [1] x4 + [3] >= [3] = f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) = [3] >= [0] = 0() f2(x1,x2,S(x),0(),0()) = [3] >= [0] = 0() f2(x1,x2,S(x'),0(),S(x)) = [3] >= [2] = f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) = [3] >= [0] = 0() f2(x1,x2,S(x''),S(x'),S(x)) = [3] >= [3] = f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,S(x)) = [2] >= [6] = f4(x1,x2,x4,x3,x) f4(0(),x2,x3,x4,x5) = [6] >= [0] = 0() f4(S(x),0(),x3,x4,0()) = [6] >= [0] = 0() f4(S(x'),0(),x3,x4,S(x)) = [6] >= [2] = f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) = [6] >= [0] = 0() f4(S(x''),S(x'),x3,x4,S(x)) = [6] >= [3] = f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) = [1] x3 + [2] >= [0] = 0() f5(x1,x2,x3,x4,S(x)) = [1] x3 + [2] >= [1] x3 + [0] = f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) = [1] x3 + [0] >= [0] = 0() f6(x1,x2,x3,x4,S(x)) = [1] x3 + [0] >= [1] x3 + [3] = f0(x1,x2,x4,x3,x) Further, it can be verified that all rules not oriented are covered by the weightgap condition. * Step 6: WeightGap WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: f3(x1,x2,x3,x4,S(x)) -> f4(x1,x2,x4,x3,x) f6(x1,x2,x3,x4,0()) -> 0() f6(x1,x2,x3,x4,S(x)) -> f0(x1,x2,x4,x3,x) - Weak TRS: f0(x1,0(),x3,x4,x5) -> 0() f0(x1,S(x),x3,0(),x5) -> 0() f0(x1,S(x'),x3,S(x),x5) -> f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) -> 0() f1(x1,x2,x3,x4,S(x)) -> f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) -> 0() f2(x1,x2,S(x),0(),0()) -> 0() f2(x1,x2,S(x'),0(),S(x)) -> f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) -> 0() f2(x1,x2,S(x''),S(x'),S(x)) -> f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) -> 0() f4(0(),x2,x3,x4,x5) -> 0() f4(S(x),0(),x3,x4,0()) -> 0() f4(S(x'),0(),x3,x4,S(x)) -> f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) -> 0() f4(S(x''),S(x'),x3,x4,S(x)) -> f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) -> 0() f5(x1,x2,x3,x4,S(x)) -> f6(x2,x1,x3,x4,x) - Signature: {f0/5,f1/5,f2/5,f3/5,f4/5,f5/5,f6/5} / {0/0,S/1} - Obligation: innermost runtime complexity wrt. defined symbols {f0,f1,f2,f3,f4,f5,f6} and constructors {0,S} + Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} + Details: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: none Following symbols are considered usable: all TcT has computed the following interpretation: p(0) = [0] p(S) = [1] x1 + [4] p(f0) = [1] x2 + [2] x4 + [0] p(f1) = [1] x2 + [2] x3 + [3] p(f2) = [1] x1 + [2] x3 + [3] p(f3) = [1] x1 + [2] x3 + [2] x4 + [2] p(f4) = [1] x1 + [2] x3 + [2] x4 + [3] p(f5) = [1] x1 + [2] x3 + [2] p(f6) = [1] x2 + [2] x3 + [2] Following rules are strictly oriented: f6(x1,x2,x3,x4,0()) = [1] x2 + [2] x3 + [2] > [0] = 0() f6(x1,x2,x3,x4,S(x)) = [1] x2 + [2] x3 + [2] > [1] x2 + [2] x3 + [0] = f0(x1,x2,x4,x3,x) Following rules are (at-least) weakly oriented: f0(x1,0(),x3,x4,x5) = [2] x4 + [0] >= [0] = 0() f0(x1,S(x),x3,0(),x5) = [1] x + [4] >= [0] = 0() f0(x1,S(x'),x3,S(x),x5) = [2] x + [1] x' + [12] >= [2] x + [1] x' + [7] = f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) = [1] x2 + [2] x3 + [3] >= [0] = 0() f1(x1,x2,x3,x4,S(x)) = [1] x2 + [2] x3 + [3] >= [1] x2 + [2] x3 + [3] = f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) = [1] x1 + [3] >= [0] = 0() f2(x1,x2,S(x),0(),0()) = [2] x + [1] x1 + [11] >= [0] = 0() f2(x1,x2,S(x'),0(),S(x)) = [2] x' + [1] x1 + [11] >= [2] x' + [1] x1 + [2] = f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) = [2] x' + [1] x1 + [11] >= [0] = 0() f2(x1,x2,S(x''),S(x'),S(x)) = [2] x'' + [1] x1 + [11] >= [2] x'' + [1] x1 + [10] = f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) = [1] x1 + [2] x3 + [2] x4 + [2] >= [0] = 0() f3(x1,x2,x3,x4,S(x)) = [1] x1 + [2] x3 + [2] x4 + [2] >= [1] x1 + [2] x3 + [2] x4 + [3] = f4(x1,x2,x4,x3,x) f4(0(),x2,x3,x4,x5) = [2] x3 + [2] x4 + [3] >= [0] = 0() f4(S(x),0(),x3,x4,0()) = [1] x + [2] x3 + [2] x4 + [7] >= [0] = 0() f4(S(x'),0(),x3,x4,S(x)) = [1] x' + [2] x3 + [2] x4 + [7] >= [1] x' + [2] x3 + [2] x4 + [2] = f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) = [1] x' + [2] x3 + [2] x4 + [7] >= [0] = 0() f4(S(x''),S(x'),x3,x4,S(x)) = [1] x'' + [2] x3 + [2] x4 + [7] >= [1] x'' + [2] x3 + [7] = f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) = [1] x1 + [2] x3 + [2] >= [0] = 0() f5(x1,x2,x3,x4,S(x)) = [1] x1 + [2] x3 + [2] >= [1] x1 + [2] x3 + [2] = f6(x2,x1,x3,x4,x) Further, it can be verified that all rules not oriented are covered by the weightgap condition. * Step 7: WeightGap WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: f3(x1,x2,x3,x4,S(x)) -> f4(x1,x2,x4,x3,x) - Weak TRS: f0(x1,0(),x3,x4,x5) -> 0() f0(x1,S(x),x3,0(),x5) -> 0() f0(x1,S(x'),x3,S(x),x5) -> f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) -> 0() f1(x1,x2,x3,x4,S(x)) -> f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) -> 0() f2(x1,x2,S(x),0(),0()) -> 0() f2(x1,x2,S(x'),0(),S(x)) -> f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) -> 0() f2(x1,x2,S(x''),S(x'),S(x)) -> f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) -> 0() f4(0(),x2,x3,x4,x5) -> 0() f4(S(x),0(),x3,x4,0()) -> 0() f4(S(x'),0(),x3,x4,S(x)) -> f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) -> 0() f4(S(x''),S(x'),x3,x4,S(x)) -> f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) -> 0() f5(x1,x2,x3,x4,S(x)) -> f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) -> 0() f6(x1,x2,x3,x4,S(x)) -> f0(x1,x2,x4,x3,x) - Signature: {f0/5,f1/5,f2/5,f3/5,f4/5,f5/5,f6/5} / {0/0,S/1} - Obligation: innermost runtime complexity wrt. defined symbols {f0,f1,f2,f3,f4,f5,f6} and constructors {0,S} + Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} + Details: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: none Following symbols are considered usable: all TcT has computed the following interpretation: p(0) = [0] p(S) = [1] x1 + [2] p(f0) = [4] x2 + [3] x4 + [1] p(f1) = [4] x2 + [3] x3 + [3] p(f2) = [4] x1 + [3] x3 + [2] p(f3) = [4] x1 + [3] x3 + [3] x4 + [3] p(f4) = [4] x1 + [3] x3 + [3] x4 + [2] p(f5) = [4] x1 + [3] x3 + [2] p(f6) = [4] x2 + [3] x3 + [1] Following rules are strictly oriented: f3(x1,x2,x3,x4,S(x)) = [4] x1 + [3] x3 + [3] x4 + [3] > [4] x1 + [3] x3 + [3] x4 + [2] = f4(x1,x2,x4,x3,x) Following rules are (at-least) weakly oriented: f0(x1,0(),x3,x4,x5) = [3] x4 + [1] >= [0] = 0() f0(x1,S(x),x3,0(),x5) = [4] x + [9] >= [0] = 0() f0(x1,S(x'),x3,S(x),x5) = [3] x + [4] x' + [15] >= [3] x + [4] x' + [11] = f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) = [4] x2 + [3] x3 + [3] >= [0] = 0() f1(x1,x2,x3,x4,S(x)) = [4] x2 + [3] x3 + [3] >= [4] x2 + [3] x3 + [2] = f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) = [4] x1 + [2] >= [0] = 0() f2(x1,x2,S(x),0(),0()) = [3] x + [4] x1 + [8] >= [0] = 0() f2(x1,x2,S(x'),0(),S(x)) = [3] x' + [4] x1 + [8] >= [3] x' + [4] x1 + [3] = f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) = [3] x' + [4] x1 + [8] >= [0] = 0() f2(x1,x2,S(x''),S(x'),S(x)) = [3] x'' + [4] x1 + [8] >= [3] x'' + [4] x1 + [8] = f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) = [4] x1 + [3] x3 + [3] x4 + [3] >= [0] = 0() f4(0(),x2,x3,x4,x5) = [3] x3 + [3] x4 + [2] >= [0] = 0() f4(S(x),0(),x3,x4,0()) = [4] x + [3] x3 + [3] x4 + [10] >= [0] = 0() f4(S(x'),0(),x3,x4,S(x)) = [4] x' + [3] x3 + [3] x4 + [10] >= [4] x' + [3] x3 + [3] x4 + [3] = f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) = [4] x' + [3] x3 + [3] x4 + [10] >= [0] = 0() f4(S(x''),S(x'),x3,x4,S(x)) = [4] x'' + [3] x3 + [3] x4 + [10] >= [4] x'' + [3] x3 + [10] = f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) = [4] x1 + [3] x3 + [2] >= [0] = 0() f5(x1,x2,x3,x4,S(x)) = [4] x1 + [3] x3 + [2] >= [4] x1 + [3] x3 + [1] = f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) = [4] x2 + [3] x3 + [1] >= [0] = 0() f6(x1,x2,x3,x4,S(x)) = [4] x2 + [3] x3 + [1] >= [4] x2 + [3] x3 + [1] = f0(x1,x2,x4,x3,x) Further, it can be verified that all rules not oriented are covered by the weightgap condition. * Step 8: EmptyProcessor WORST_CASE(?,O(1)) + Considered Problem: - Weak TRS: f0(x1,0(),x3,x4,x5) -> 0() f0(x1,S(x),x3,0(),x5) -> 0() f0(x1,S(x'),x3,S(x),x5) -> f1(x',S(x'),x,S(x),S(x)) f1(x1,x2,x3,x4,0()) -> 0() f1(x1,x2,x3,x4,S(x)) -> f2(x2,x1,x3,x4,x) f2(x1,x2,0(),x4,x5) -> 0() f2(x1,x2,S(x),0(),0()) -> 0() f2(x1,x2,S(x'),0(),S(x)) -> f3(x1,x2,x',0(),x) f2(x1,x2,S(x'),S(x),0()) -> 0() f2(x1,x2,S(x''),S(x'),S(x)) -> f5(x1,x2,S(x''),x',x) f3(x1,x2,x3,x4,0()) -> 0() f3(x1,x2,x3,x4,S(x)) -> f4(x1,x2,x4,x3,x) f4(0(),x2,x3,x4,x5) -> 0() f4(S(x),0(),x3,x4,0()) -> 0() f4(S(x'),0(),x3,x4,S(x)) -> f3(x',0(),x3,x4,x) f4(S(x'),S(x),x3,x4,0()) -> 0() f4(S(x''),S(x'),x3,x4,S(x)) -> f2(S(x''),x',x3,x4,x) f5(x1,x2,x3,x4,0()) -> 0() f5(x1,x2,x3,x4,S(x)) -> f6(x2,x1,x3,x4,x) f6(x1,x2,x3,x4,0()) -> 0() f6(x1,x2,x3,x4,S(x)) -> f0(x1,x2,x4,x3,x) - Signature: {f0/5,f1/5,f2/5,f3/5,f4/5,f5/5,f6/5} / {0/0,S/1} - Obligation: innermost runtime complexity wrt. defined symbols {f0,f1,f2,f3,f4,f5,f6} and constructors {0,S} + Applied Processor: EmptyProcessor + Details: The problem is already closed. The intended complexity is O(1). WORST_CASE(?,O(n^1))