3.89/1.83 WORST_CASE(NON_POLY, ?) 3.89/1.84 proof of /export/starexec/sandbox/benchmark/theBenchmark.koat 3.89/1.84 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 3.89/1.84 3.89/1.84 3.89/1.84 The runtime complexity of the given CpxIntTrs could be proven to be BOUNDS(INF, INF). 3.89/1.84 3.89/1.84 (0) CpxIntTrs 3.89/1.84 (1) Loat Proof [FINISHED, 203 ms] 3.89/1.84 (2) BOUNDS(INF, INF) 3.89/1.84 3.89/1.84 3.89/1.84 ---------------------------------------- 3.89/1.84 3.89/1.84 (0) 3.89/1.84 Obligation: 3.89/1.84 Complexity Int TRS consisting of the following rules: 3.89/1.84 f1(A, B, C, D, E, F, G, H, I, J, K, L, M, N) -> Com_1(f1(A, 1 + B, D, O, D, P, B, H, I, J, K, L, M, N)) :|: A >= B + 1 && B >= 0 3.89/1.84 f1(A, B, C, D, E, F, G, H, I, J, K, L, M, N) -> Com_1(f4(P, Q, R, U, T, F, G, O, S, V, W, C, M, N)) :|: B >= A && B >= 0 && Q >= O && O >= 2 3.89/1.84 f3(A, B, C, D, E, F, G, H, I, J, K, L, M, N) -> Com_1(f4(R, S, Q, V, U, F, G, P, T, W, Y, 0, O, N)) :|: 0 >= P && 0 >= X 3.89/1.84 f3(A, B, C, D, E, F, G, H, I, J, K, L, M, N) -> Com_1(f1(P, 2, R, Q, R, F, G, P, R, J, K, L, O, S)) :|: P >= 2 3.89/1.84 f3(A, B, C, D, E, F, G, H, I, J, K, L, M, N) -> Com_1(f4(P, Q, R, U, T, F, G, 1, S, V, W, D, O, N)) :|: TRUE 3.89/1.84 3.89/1.84 The start-symbols are:[f3_14] 3.89/1.84 3.89/1.84 3.89/1.84 ---------------------------------------- 3.89/1.84 3.89/1.84 (1) Loat Proof (FINISHED) 3.89/1.84 3.89/1.84 3.89/1.84 ### Pre-processing the ITS problem ### 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Initial linear ITS problem 3.89/1.84 3.89/1.84 Start location: f3 3.89/1.84 3.89/1.84 0: f1 -> f1 : B'=1+B, C'=D, D'=free_1, E'=D, F'=free, G'=B, [ A>=1+B && B>=0 ], cost: 1 3.89/1.84 3.89/1.84 1: f1 -> f4 : A'=free_10, B'=free_4, C'=free_9, D'=free_3, E'=free_6, H'=free_7, Q'=free_8, J'=free_2, K'=free_5, L'=C, [ B>=A && B>=0 && free_4>=free_7 && free_7>=2 ], cost: 1 3.89/1.84 3.89/1.84 2: f3 -> f4 : A'=free_21, B'=free_14, C'=free_20, D'=free_13, E'=free_16, H'=free_17, Q'=free_19, J'=free_12, K'=free_15, L'=0, M'=free_11, [ 0>=free_17 && 0>=free_18 ], cost: 1 3.89/1.84 3.89/1.84 3: f3 -> f1 : A'=free_26, B'=2, C'=free_23, D'=free_25, E'=free_23, H'=free_26, Q'=free_23, M'=free_22, N'=free_24, [ free_26>=2 ], cost: 1 3.89/1.84 3.89/1.84 4: f3 -> f4 : A'=free_35, B'=free_29, C'=free_34, D'=free_28, E'=free_31, H'=1, Q'=free_32, J'=free_33, K'=free_27, L'=D, M'=free_30, [], cost: 1 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Removed unreachable and leaf rules: 3.89/1.84 3.89/1.84 Start location: f3 3.89/1.84 3.89/1.84 0: f1 -> f1 : B'=1+B, C'=D, D'=free_1, E'=D, F'=free, G'=B, [ A>=1+B && B>=0 ], cost: 1 3.89/1.84 3.89/1.84 3: f3 -> f1 : A'=free_26, B'=2, C'=free_23, D'=free_25, E'=free_23, H'=free_26, Q'=free_23, M'=free_22, N'=free_24, [ free_26>=2 ], cost: 1 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 ### Simplification by acceleration and chaining ### 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Accelerating simple loops of location 0. 3.89/1.84 3.89/1.84 Accelerating the following rules: 3.89/1.84 3.89/1.84 0: f1 -> f1 : B'=1+B, C'=D, D'=free_1, E'=D, F'=free, G'=B, [ A>=1+B && B>=0 ], cost: 1 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Accelerated rule 0 with metering function A-B, yielding the new rule 5. 3.89/1.84 3.89/1.84 Removing the simple loops: 0. 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Accelerated all simple loops using metering functions (where possible): 3.89/1.84 3.89/1.84 Start location: f3 3.89/1.84 3.89/1.84 5: f1 -> f1 : B'=A, C'=free_1, D'=free_1, E'=free_1, F'=free, G'=-1+A, [ A>=1+B && B>=0 ], cost: A-B 3.89/1.84 3.89/1.84 3: f3 -> f1 : A'=free_26, B'=2, C'=free_23, D'=free_25, E'=free_23, H'=free_26, Q'=free_23, M'=free_22, N'=free_24, [ free_26>=2 ], cost: 1 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Chained accelerated rules (with incoming rules): 3.89/1.84 3.89/1.84 Start location: f3 3.89/1.84 3.89/1.84 3: f3 -> f1 : A'=free_26, B'=2, C'=free_23, D'=free_25, E'=free_23, H'=free_26, Q'=free_23, M'=free_22, N'=free_24, [ free_26>=2 ], cost: 1 3.89/1.84 3.89/1.84 6: f3 -> f1 : A'=free_26, B'=free_26, C'=free_1, D'=free_1, E'=free_1, F'=free, G'=-1+free_26, H'=free_26, Q'=free_23, M'=free_22, N'=free_24, [ free_26>=3 ], cost: -1+free_26 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Removed unreachable locations (and leaf rules with constant cost): 3.89/1.84 3.89/1.84 Start location: f3 3.89/1.84 3.89/1.84 6: f3 -> f1 : A'=free_26, B'=free_26, C'=free_1, D'=free_1, E'=free_1, F'=free, G'=-1+free_26, H'=free_26, Q'=free_23, M'=free_22, N'=free_24, [ free_26>=3 ], cost: -1+free_26 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 ### Computing asymptotic complexity ### 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Fully simplified ITS problem 3.89/1.84 3.89/1.84 Start location: f3 3.89/1.84 3.89/1.84 6: f3 -> f1 : A'=free_26, B'=free_26, C'=free_1, D'=free_1, E'=free_1, F'=free, G'=-1+free_26, H'=free_26, Q'=free_23, M'=free_22, N'=free_24, [ free_26>=3 ], cost: -1+free_26 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Computing asymptotic complexity for rule 6 3.89/1.84 3.89/1.84 Solved the limit problem by the following transformations: 3.89/1.84 3.89/1.84 Created initial limit problem: 3.89/1.84 3.89/1.84 -1+free_26 (+), -2+free_26 (+/+!) [not solved] 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 removing all constraints (solved by SMT) 3.89/1.84 3.89/1.84 resulting limit problem: [solved] 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 applying transformation rule (C) using substitution {free_26==n} 3.89/1.84 3.89/1.84 resulting limit problem: 3.89/1.84 3.89/1.84 [solved] 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Solution: 3.89/1.84 3.89/1.84 free_26 / n 3.89/1.84 3.89/1.84 Resulting cost -1+n has complexity: Unbounded 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Found new complexity Unbounded. 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 Obtained the following overall complexity (w.r.t. the length of the input n): 3.89/1.84 3.89/1.84 Complexity: Unbounded 3.89/1.84 3.89/1.84 Cpx degree: Unbounded 3.89/1.84 3.89/1.84 Solved cost: -1+n 3.89/1.84 3.89/1.84 Rule cost: -1+free_26 3.89/1.84 3.89/1.84 Rule guard: [ free_26>=3 ] 3.89/1.84 3.89/1.84 3.89/1.84 3.89/1.84 WORST_CASE(INF,?) 3.89/1.84 3.89/1.84 3.89/1.84 ---------------------------------------- 3.89/1.84 3.89/1.84 (2) 3.89/1.84 BOUNDS(INF, INF) 4.04/1.87 EOF