4.65/2.21 WORST_CASE(NON_POLY, ?) 4.65/2.22 proof of /export/starexec/sandbox/benchmark/theBenchmark.koat 4.65/2.22 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 4.65/2.22 4.65/2.22 4.65/2.22 The runtime complexity of the given CpxIntTrs could be proven to be BOUNDS(INF, INF). 4.65/2.22 4.65/2.22 (0) CpxIntTrs 4.65/2.22 (1) Loat Proof [FINISHED, 527 ms] 4.65/2.22 (2) BOUNDS(INF, INF) 4.65/2.22 4.65/2.22 4.65/2.22 ---------------------------------------- 4.65/2.22 4.65/2.22 (0) 4.65/2.22 Obligation: 4.65/2.22 Complexity Int TRS consisting of the following rules: 4.65/2.22 f18(A, B, C, D, E, F, G, H, I, J) -> Com_1(f24(A, B, C, D, E, F, G, H, I, J)) :|: 0 >= A 4.65/2.22 f31(A, B, C, D, E, F, G, H, I, J) -> Com_1(f31(A, B, C, D, E, F, G, H, I, J)) :|: TRUE 4.65/2.22 f33(A, B, C, D, E, F, G, H, I, J) -> Com_1(f36(A, B, C, D, E, F, G, H, I, J)) :|: TRUE 4.65/2.22 f24(A, B, C, D, E, F, G, H, I, J) -> Com_1(f31(A, K, C, D, E, F, G, H, I, J)) :|: A >= 1 4.65/2.22 f24(A, B, C, D, E, F, G, H, I, J) -> Com_1(f31(A, L, C, K, E, F, G, H, I, J)) :|: 0 >= A && 999 + C >= K 4.65/2.22 f24(A, B, C, D, E, F, G, H, I, J) -> Com_1(f31(1, L, C, K, E, F, G, H, I, J)) :|: 0 >= A && K >= C + 1000 4.65/2.22 f18(A, B, C, D, E, F, G, H, I, J) -> Com_1(f24(0, B, K, D, K, F, G, H, I, J)) :|: A >= 1 4.65/2.22 f0(A, B, C, D, E, F, G, H, I, J) -> Com_1(f18(1, B, C, D, E, K, K, H, I, J)) :|: 0 >= K 4.65/2.22 f0(A, B, C, D, E, F, G, H, I, J) -> Com_1(f18(1, B, C, D, E, K, 0, 1, L, L)) :|: K >= 1 && L >= 1 4.65/2.22 f0(A, B, C, D, E, F, G, H, I, J) -> Com_1(f31(1, B, C, D, E, K, 0, 1, L, L)) :|: K >= 1 && 0 >= L 4.65/2.22 4.65/2.22 The start-symbols are:[f0_10] 4.65/2.22 4.65/2.22 4.65/2.22 ---------------------------------------- 4.65/2.22 4.65/2.22 (1) Loat Proof (FINISHED) 4.65/2.22 4.65/2.22 4.65/2.22 ### Pre-processing the ITS problem ### 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Initial linear ITS problem 4.65/2.22 4.65/2.22 Start location: f0 4.65/2.22 4.65/2.22 0: f18 -> f24 : [ 0>=A ], cost: 1 4.65/2.22 4.65/2.22 6: f18 -> f24 : A'=0, C'=free_5, E'=free_5, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 1: f31 -> f31 : [], cost: 1 4.65/2.22 4.65/2.22 2: f33 -> f36 : [], cost: 1 4.65/2.22 4.65/2.22 3: f24 -> f31 : B'=free, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 4: f24 -> f31 : B'=free_2, D'=free_1, [ 0>=A && 999+C>=free_1 ], cost: 1 4.65/2.22 4.65/2.22 5: f24 -> f31 : A'=1, B'=free_4, D'=free_3, [ 0>=A && free_3>=1000+C ], cost: 1 4.65/2.22 4.65/2.22 7: f0 -> f18 : A'=1, F'=free_6, G'=free_6, [ 0>=free_6 ], cost: 1 4.65/2.22 4.65/2.22 8: f0 -> f18 : A'=1, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 ], cost: 1 4.65/2.22 4.65/2.22 9: f0 -> f31 : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: 1 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Removed unreachable and leaf rules: 4.65/2.22 4.65/2.22 Start location: f0 4.65/2.22 4.65/2.22 0: f18 -> f24 : [ 0>=A ], cost: 1 4.65/2.22 4.65/2.22 6: f18 -> f24 : A'=0, C'=free_5, E'=free_5, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 1: f31 -> f31 : [], cost: 1 4.65/2.22 4.65/2.22 3: f24 -> f31 : B'=free, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 4: f24 -> f31 : B'=free_2, D'=free_1, [ 0>=A && 999+C>=free_1 ], cost: 1 4.65/2.22 4.65/2.22 5: f24 -> f31 : A'=1, B'=free_4, D'=free_3, [ 0>=A && free_3>=1000+C ], cost: 1 4.65/2.22 4.65/2.22 7: f0 -> f18 : A'=1, F'=free_6, G'=free_6, [ 0>=free_6 ], cost: 1 4.65/2.22 4.65/2.22 8: f0 -> f18 : A'=1, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 ], cost: 1 4.65/2.22 4.65/2.22 9: f0 -> f31 : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: 1 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 ### Simplification by acceleration and chaining ### 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Accelerating simple loops of location 1. 4.65/2.22 4.65/2.22 Accelerating the following rules: 4.65/2.22 4.65/2.22 1: f31 -> f31 : [], cost: 1 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Accelerated rule 1 with NONTERM, yielding the new rule 10. 4.65/2.22 4.65/2.22 Removing the simple loops: 1. 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Accelerated all simple loops using metering functions (where possible): 4.65/2.22 4.65/2.22 Start location: f0 4.65/2.22 4.65/2.22 0: f18 -> f24 : [ 0>=A ], cost: 1 4.65/2.22 4.65/2.22 6: f18 -> f24 : A'=0, C'=free_5, E'=free_5, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 10: f31 -> [6] : [], cost: INF 4.65/2.22 4.65/2.22 3: f24 -> f31 : B'=free, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 4: f24 -> f31 : B'=free_2, D'=free_1, [ 0>=A && 999+C>=free_1 ], cost: 1 4.65/2.22 4.65/2.22 5: f24 -> f31 : A'=1, B'=free_4, D'=free_3, [ 0>=A && free_3>=1000+C ], cost: 1 4.65/2.22 4.65/2.22 7: f0 -> f18 : A'=1, F'=free_6, G'=free_6, [ 0>=free_6 ], cost: 1 4.65/2.22 4.65/2.22 8: f0 -> f18 : A'=1, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 ], cost: 1 4.65/2.22 4.65/2.22 9: f0 -> f31 : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: 1 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Chained accelerated rules (with incoming rules): 4.65/2.22 4.65/2.22 Start location: f0 4.65/2.22 4.65/2.22 0: f18 -> f24 : [ 0>=A ], cost: 1 4.65/2.22 4.65/2.22 6: f18 -> f24 : A'=0, C'=free_5, E'=free_5, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 3: f24 -> f31 : B'=free, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 4: f24 -> f31 : B'=free_2, D'=free_1, [ 0>=A && 999+C>=free_1 ], cost: 1 4.65/2.22 4.65/2.22 5: f24 -> f31 : A'=1, B'=free_4, D'=free_3, [ 0>=A && free_3>=1000+C ], cost: 1 4.65/2.22 4.65/2.22 11: f24 -> [6] : B'=free, [ A>=1 ], cost: INF 4.65/2.22 4.65/2.22 12: f24 -> [6] : B'=free_2, D'=free_1, [ 0>=A && 999+C>=free_1 ], cost: INF 4.65/2.22 4.65/2.22 13: f24 -> [6] : A'=1, B'=free_4, D'=free_3, [ 0>=A && free_3>=1000+C ], cost: INF 4.65/2.22 4.65/2.22 7: f0 -> f18 : A'=1, F'=free_6, G'=free_6, [ 0>=free_6 ], cost: 1 4.65/2.22 4.65/2.22 8: f0 -> f18 : A'=1, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 ], cost: 1 4.65/2.22 4.65/2.22 9: f0 -> f31 : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: 1 4.65/2.22 4.65/2.22 14: f0 -> [6] : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: INF 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Removed unreachable locations (and leaf rules with constant cost): 4.65/2.22 4.65/2.22 Start location: f0 4.65/2.22 4.65/2.22 0: f18 -> f24 : [ 0>=A ], cost: 1 4.65/2.22 4.65/2.22 6: f18 -> f24 : A'=0, C'=free_5, E'=free_5, [ A>=1 ], cost: 1 4.65/2.22 4.65/2.22 11: f24 -> [6] : B'=free, [ A>=1 ], cost: INF 4.65/2.22 4.65/2.22 12: f24 -> [6] : B'=free_2, D'=free_1, [ 0>=A && 999+C>=free_1 ], cost: INF 4.65/2.22 4.65/2.22 13: f24 -> [6] : A'=1, B'=free_4, D'=free_3, [ 0>=A && free_3>=1000+C ], cost: INF 4.65/2.22 4.65/2.22 7: f0 -> f18 : A'=1, F'=free_6, G'=free_6, [ 0>=free_6 ], cost: 1 4.65/2.22 4.65/2.22 8: f0 -> f18 : A'=1, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 ], cost: 1 4.65/2.22 4.65/2.22 14: f0 -> [6] : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: INF 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Eliminated locations (on tree-shaped paths): 4.65/2.22 4.65/2.22 Start location: f0 4.65/2.22 4.65/2.22 11: f24 -> [6] : B'=free, [ A>=1 ], cost: INF 4.65/2.22 4.65/2.22 12: f24 -> [6] : B'=free_2, D'=free_1, [ 0>=A && 999+C>=free_1 ], cost: INF 4.65/2.22 4.65/2.22 13: f24 -> [6] : A'=1, B'=free_4, D'=free_3, [ 0>=A && free_3>=1000+C ], cost: INF 4.65/2.22 4.65/2.22 14: f0 -> [6] : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: INF 4.65/2.22 4.65/2.22 15: f0 -> f24 : A'=0, C'=free_5, E'=free_5, F'=free_6, G'=free_6, [ 0>=free_6 ], cost: 2 4.65/2.22 4.65/2.22 16: f0 -> f24 : A'=0, C'=free_5, E'=free_5, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 ], cost: 2 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Eliminated locations (on tree-shaped paths): 4.65/2.22 4.65/2.22 Start location: f0 4.65/2.22 4.65/2.22 14: f0 -> [6] : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: INF 4.65/2.22 4.65/2.22 17: f0 -> [6] : A'=0, B'=free_2, C'=free_5, D'=free_1, E'=free_5, F'=free_6, G'=free_6, [ 0>=free_6 && 999+free_5>=free_1 ], cost: INF 4.65/2.22 4.65/2.22 18: f0 -> [6] : A'=1, B'=free_4, C'=free_5, D'=free_3, E'=free_5, F'=free_6, G'=free_6, [ 0>=free_6 && free_3>=1000+free_5 ], cost: INF 4.65/2.22 4.65/2.22 19: f0 -> [6] : A'=0, B'=free_2, C'=free_5, D'=free_1, E'=free_5, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 && 999+free_5>=free_1 ], cost: INF 4.65/2.22 4.65/2.22 20: f0 -> [6] : A'=1, B'=free_4, C'=free_5, D'=free_3, E'=free_5, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 && free_3>=1000+free_5 ], cost: INF 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 ### Computing asymptotic complexity ### 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Fully simplified ITS problem 4.65/2.22 4.65/2.22 Start location: f0 4.65/2.22 4.65/2.22 14: f0 -> [6] : A'=1, F'=free_10, G'=0, H'=1, Q'=free_9, J'=free_9, [ free_10>=1 && 0>=free_9 ], cost: INF 4.65/2.22 4.65/2.22 17: f0 -> [6] : A'=0, B'=free_2, C'=free_5, D'=free_1, E'=free_5, F'=free_6, G'=free_6, [ 0>=free_6 && 999+free_5>=free_1 ], cost: INF 4.65/2.22 4.65/2.22 18: f0 -> [6] : A'=1, B'=free_4, C'=free_5, D'=free_3, E'=free_5, F'=free_6, G'=free_6, [ 0>=free_6 && free_3>=1000+free_5 ], cost: INF 4.65/2.22 4.65/2.22 19: f0 -> [6] : A'=0, B'=free_2, C'=free_5, D'=free_1, E'=free_5, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 && 999+free_5>=free_1 ], cost: INF 4.65/2.22 4.65/2.22 20: f0 -> [6] : A'=1, B'=free_4, C'=free_5, D'=free_3, E'=free_5, F'=free_8, G'=0, H'=1, Q'=free_7, J'=free_7, [ free_8>=1 && free_7>=1 && free_3>=1000+free_5 ], cost: INF 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Computing asymptotic complexity for rule 14 4.65/2.22 4.65/2.22 Resulting cost INF has complexity: Nonterm 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Found new complexity Nonterm. 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 Obtained the following overall complexity (w.r.t. the length of the input n): 4.65/2.22 4.65/2.22 Complexity: Nonterm 4.65/2.22 4.65/2.22 Cpx degree: Nonterm 4.65/2.22 4.65/2.22 Solved cost: INF 4.65/2.22 4.65/2.22 Rule cost: INF 4.65/2.22 4.65/2.22 Rule guard: [ free_10>=1 && 0>=free_9 ] 4.65/2.22 4.65/2.22 4.65/2.22 4.65/2.22 NO 4.65/2.22 4.65/2.22 4.65/2.22 ---------------------------------------- 4.65/2.22 4.65/2.22 (2) 4.65/2.22 BOUNDS(INF, INF) 4.65/2.25 EOF