/export/starexec/sandbox2/solver/bin/starexec_run_complexity /export/starexec/sandbox2/benchmark/theBenchmark.koat /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- WORST_CASE(NON_POLY, ?) proof of /export/starexec/sandbox2/benchmark/theBenchmark.koat # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty The runtime complexity of the given CpxIntTrs could be proven to be BOUNDS(INF, INF). (0) CpxIntTrs (1) Loat Proof [FINISHED, 634 ms] (2) BOUNDS(INF, INF) ---------------------------------------- (0) Obligation: Complexity Int TRS consisting of the following rules: f21(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f29(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)) :|: 0 >= A f41(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f41(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)) :|: TRUE f43(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f46(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)) :|: TRUE f29(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f41(A, R, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)) :|: A >= 1 f29(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f41(A, S, C, 0, R, R, R, H, I, J, K, L, M, N, O, P, Q)) :|: 0 >= A && 999 + C >= R f29(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f41(1, S, C, 0, R, R, R, H, I, J, K, L, M, N, O, P, Q)) :|: 0 >= A && R >= C + 1000 f21(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f29(0, B, R, D, E, F, G, 0, R, R, K, L, M, N, O, P, Q)) :|: A >= 1 f0(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f21(1, B, C, D, E, F, G, H, I, J, K, R, K, N, O, P, Q)) :|: 0 >= K f0(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f21(1, B, C, D, E, F, G, H, I, J, S, R, 0, 1, S, S, S)) :|: S >= 1 && K >= 1 f0(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Com_1(f41(1, B, C, D, E, F, G, H, I, J, S, R, 0, 1, S, S, S)) :|: 0 >= S && K >= 1 The start-symbols are:[f0_17] ---------------------------------------- (1) Loat Proof (FINISHED) ### Pre-processing the ITS problem ### Initial linear ITS problem Start location: f0 0: f21 -> f29 : [ 0>=A ], cost: 1 6: f21 -> f29 : A'=0, C'=free_5, H'=0, Q'=free_5, J'=free_5, [ A>=1 ], cost: 1 1: f41 -> f41 : [], cost: 1 2: f43 -> f46 : [], cost: 1 3: f29 -> f41 : B'=free, [ A>=1 ], cost: 1 4: f29 -> f41 : B'=free_2, D'=0, E'=free_1, F'=free_1, G'=free_1, [ 0>=A && 999+C>=free_1 ], cost: 1 5: f29 -> f41 : A'=1, B'=free_4, D'=0, E'=free_3, F'=free_3, G'=free_3, [ 0>=A && free_3>=1000+C ], cost: 1 7: f0 -> f21 : A'=1, L'=free_6, M'=K, [ 0>=K ], cost: 1 8: f0 -> f21 : A'=1, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 ], cost: 1 9: f0 -> f41 : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: 1 Checking for constant complexity: The following rule is satisfiable with cost >= 1, yielding constant complexity: 7: f0 -> f21 : A'=1, L'=free_6, M'=K, [ 0>=K ], cost: 1 Removed unreachable and leaf rules: Start location: f0 0: f21 -> f29 : [ 0>=A ], cost: 1 6: f21 -> f29 : A'=0, C'=free_5, H'=0, Q'=free_5, J'=free_5, [ A>=1 ], cost: 1 1: f41 -> f41 : [], cost: 1 3: f29 -> f41 : B'=free, [ A>=1 ], cost: 1 4: f29 -> f41 : B'=free_2, D'=0, E'=free_1, F'=free_1, G'=free_1, [ 0>=A && 999+C>=free_1 ], cost: 1 5: f29 -> f41 : A'=1, B'=free_4, D'=0, E'=free_3, F'=free_3, G'=free_3, [ 0>=A && free_3>=1000+C ], cost: 1 7: f0 -> f21 : A'=1, L'=free_6, M'=K, [ 0>=K ], cost: 1 8: f0 -> f21 : A'=1, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 ], cost: 1 9: f0 -> f41 : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: 1 ### Simplification by acceleration and chaining ### Accelerating simple loops of location 1. Accelerating the following rules: 1: f41 -> f41 : [], cost: 1 Accelerated rule 1 with NONTERM, yielding the new rule 10. Removing the simple loops: 1. Accelerated all simple loops using metering functions (where possible): Start location: f0 0: f21 -> f29 : [ 0>=A ], cost: 1 6: f21 -> f29 : A'=0, C'=free_5, H'=0, Q'=free_5, J'=free_5, [ A>=1 ], cost: 1 10: f41 -> [6] : [], cost: NONTERM 3: f29 -> f41 : B'=free, [ A>=1 ], cost: 1 4: f29 -> f41 : B'=free_2, D'=0, E'=free_1, F'=free_1, G'=free_1, [ 0>=A && 999+C>=free_1 ], cost: 1 5: f29 -> f41 : A'=1, B'=free_4, D'=0, E'=free_3, F'=free_3, G'=free_3, [ 0>=A && free_3>=1000+C ], cost: 1 7: f0 -> f21 : A'=1, L'=free_6, M'=K, [ 0>=K ], cost: 1 8: f0 -> f21 : A'=1, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 ], cost: 1 9: f0 -> f41 : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: 1 Chained accelerated rules (with incoming rules): Start location: f0 0: f21 -> f29 : [ 0>=A ], cost: 1 6: f21 -> f29 : A'=0, C'=free_5, H'=0, Q'=free_5, J'=free_5, [ A>=1 ], cost: 1 3: f29 -> f41 : B'=free, [ A>=1 ], cost: 1 4: f29 -> f41 : B'=free_2, D'=0, E'=free_1, F'=free_1, G'=free_1, [ 0>=A && 999+C>=free_1 ], cost: 1 5: f29 -> f41 : A'=1, B'=free_4, D'=0, E'=free_3, F'=free_3, G'=free_3, [ 0>=A && free_3>=1000+C ], cost: 1 11: f29 -> [6] : B'=free, [ A>=1 ], cost: NONTERM 12: f29 -> [6] : B'=free_2, D'=0, E'=free_1, F'=free_1, G'=free_1, [ 0>=A && 999+C>=free_1 ], cost: NONTERM 13: f29 -> [6] : A'=1, B'=free_4, D'=0, E'=free_3, F'=free_3, G'=free_3, [ 0>=A && free_3>=1000+C ], cost: NONTERM 7: f0 -> f21 : A'=1, L'=free_6, M'=K, [ 0>=K ], cost: 1 8: f0 -> f21 : A'=1, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 ], cost: 1 9: f0 -> f41 : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: 1 14: f0 -> [6] : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: NONTERM Removed unreachable locations (and leaf rules with constant cost): Start location: f0 0: f21 -> f29 : [ 0>=A ], cost: 1 6: f21 -> f29 : A'=0, C'=free_5, H'=0, Q'=free_5, J'=free_5, [ A>=1 ], cost: 1 11: f29 -> [6] : B'=free, [ A>=1 ], cost: NONTERM 12: f29 -> [6] : B'=free_2, D'=0, E'=free_1, F'=free_1, G'=free_1, [ 0>=A && 999+C>=free_1 ], cost: NONTERM 13: f29 -> [6] : A'=1, B'=free_4, D'=0, E'=free_3, F'=free_3, G'=free_3, [ 0>=A && free_3>=1000+C ], cost: NONTERM 7: f0 -> f21 : A'=1, L'=free_6, M'=K, [ 0>=K ], cost: 1 8: f0 -> f21 : A'=1, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 ], cost: 1 14: f0 -> [6] : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: NONTERM Eliminated locations (on tree-shaped paths): Start location: f0 11: f29 -> [6] : B'=free, [ A>=1 ], cost: NONTERM 12: f29 -> [6] : B'=free_2, D'=0, E'=free_1, F'=free_1, G'=free_1, [ 0>=A && 999+C>=free_1 ], cost: NONTERM 13: f29 -> [6] : A'=1, B'=free_4, D'=0, E'=free_3, F'=free_3, G'=free_3, [ 0>=A && free_3>=1000+C ], cost: NONTERM 14: f0 -> [6] : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: NONTERM 15: f0 -> f29 : A'=0, C'=free_5, H'=0, Q'=free_5, J'=free_5, L'=free_6, M'=K, [ 0>=K ], cost: 2 16: f0 -> f29 : A'=0, C'=free_5, H'=0, Q'=free_5, J'=free_5, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 ], cost: 2 Eliminated locations (on tree-shaped paths): Start location: f0 14: f0 -> [6] : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: NONTERM 17: f0 -> [6] : A'=0, B'=free_2, C'=free_5, D'=0, E'=free_1, F'=free_1, G'=free_1, H'=0, Q'=free_5, J'=free_5, L'=free_6, M'=K, [ 0>=K && 999+free_5>=free_1 ], cost: NONTERM 18: f0 -> [6] : A'=1, B'=free_4, C'=free_5, D'=0, E'=free_3, F'=free_3, G'=free_3, H'=0, Q'=free_5, J'=free_5, L'=free_6, M'=K, [ 0>=K && free_3>=1000+free_5 ], cost: NONTERM 19: f0 -> [6] : A'=0, B'=free_2, C'=free_5, D'=0, E'=free_1, F'=free_1, G'=free_1, H'=0, Q'=free_5, J'=free_5, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 && 999+free_5>=free_1 ], cost: NONTERM 20: f0 -> [6] : A'=1, B'=free_4, C'=free_5, D'=0, E'=free_3, F'=free_3, G'=free_3, H'=0, Q'=free_5, J'=free_5, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 && free_3>=1000+free_5 ], cost: NONTERM ### Computing asymptotic complexity ### Fully simplified ITS problem Start location: f0 14: f0 -> [6] : A'=1, K'=free_10, L'=free_9, M'=0, N'=1, O'=free_10, P'=free_10, Q_1'=free_10, [ 0>=free_10 && K>=1 ], cost: NONTERM 17: f0 -> [6] : A'=0, B'=free_2, C'=free_5, D'=0, E'=free_1, F'=free_1, G'=free_1, H'=0, Q'=free_5, J'=free_5, L'=free_6, M'=K, [ 0>=K && 999+free_5>=free_1 ], cost: NONTERM 18: f0 -> [6] : A'=1, B'=free_4, C'=free_5, D'=0, E'=free_3, F'=free_3, G'=free_3, H'=0, Q'=free_5, J'=free_5, L'=free_6, M'=K, [ 0>=K && free_3>=1000+free_5 ], cost: NONTERM 19: f0 -> [6] : A'=0, B'=free_2, C'=free_5, D'=0, E'=free_1, F'=free_1, G'=free_1, H'=0, Q'=free_5, J'=free_5, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 && 999+free_5>=free_1 ], cost: NONTERM 20: f0 -> [6] : A'=1, B'=free_4, C'=free_5, D'=0, E'=free_3, F'=free_3, G'=free_3, H'=0, Q'=free_5, J'=free_5, K'=free_8, L'=free_7, M'=0, N'=1, O'=free_8, P'=free_8, Q_1'=free_8, [ free_8>=1 && K>=1 && free_3>=1000+free_5 ], cost: NONTERM Computing asymptotic complexity for rule 14 Guard is satisfiable, yielding nontermination Resulting cost NONTERM has complexity: Nonterm Found new complexity Nonterm. Obtained the following overall complexity (w.r.t. the length of the input n): Complexity: Nonterm Cpx degree: Nonterm Solved cost: NONTERM Rule cost: NONTERM Rule guard: [ 0>=free_10 && K>=1 ] NO ---------------------------------------- (2) BOUNDS(INF, INF)