/export/starexec/sandbox/solver/bin/starexec_run_complexity /export/starexec/sandbox/benchmark/theBenchmark.koat /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- WORST_CASE(?, O(n^1)) proof of /export/starexec/sandbox/benchmark/theBenchmark.koat # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty The runtime complexity of the given CpxIntTrs could be proven to be BOUNDS(1, max(3 + Arg_0 + -1 * Arg_1, 3)). (0) CpxIntTrs (1) Koat2 Proof [FINISHED, 430 ms] (2) BOUNDS(1, max(3 + Arg_0 + -1 * Arg_1, 3)) ---------------------------------------- (0) Obligation: Complexity Int TRS consisting of the following rules: f4(A, B, C, D, E, F, G) -> Com_1(f4(A + B, B, C, D, E, F, G)) :|: A >= 0 f4(A, B, C, D, E, F, G) -> Com_1(f6(A, B, 0, 0, 0, 0, 0)) :|: 0 >= A + 1 f5(A, B, C, D, E, F, G) -> Com_1(f4(A, B, C, D, E, F, G)) :|: 0 >= B + 1 f5(A, B, C, D, E, F, G) -> Com_1(f6(A, B, 0, 0, 0, 0, 0)) :|: B >= 0 The start-symbols are:[f5_7] ---------------------------------------- (1) Koat2 Proof (FINISHED) YES( ?, max([3, 3+Arg_0-Arg_1]) {O(n)}) Initial Complexity Problem: Start: f5 Program_Vars: Arg_0, Arg_1, Arg_2, Arg_3, Arg_4, Arg_5, Arg_6 Temp_Vars: Locations: f4, f5, f6 Transitions: f4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6) -> f4(Arg_0+Arg_1,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6):|:1+Arg_1 <= 0 && 0 <= Arg_0 f4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6) -> f6(Arg_0,Arg_1,0,0,0,0,0):|:1+Arg_1 <= 0 && Arg_0+1 <= 0 f5(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6) -> f4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6):|:Arg_1+1 <= 0 f5(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6) -> f6(Arg_0,Arg_1,0,0,0,0,0):|:0 <= Arg_1 Timebounds: Overall timebound: max([3, 3+Arg_0-Arg_1]) {O(n)} 0: f4->f4: max([0, Arg_0-Arg_1]) {O(n)} 1: f4->f6: 1 {O(1)} 2: f5->f4: 1 {O(1)} 3: f5->f6: 1 {O(1)} Costbounds: Overall costbound: max([3, 3+Arg_0-Arg_1]) {O(n)} 0: f4->f4: max([0, Arg_0-Arg_1]) {O(n)} 1: f4->f6: 1 {O(1)} 2: f5->f4: 1 {O(1)} 3: f5->f6: 1 {O(1)} Sizebounds: `Lower: 0: f4->f4, Arg_0: Arg_1 {O(n)} 0: f4->f4, Arg_1: Arg_1 {O(n)} 0: f4->f4, Arg_2: Arg_2 {O(n)} 0: f4->f4, Arg_3: Arg_3 {O(n)} 0: f4->f4, Arg_4: Arg_4 {O(n)} 0: f4->f4, Arg_5: Arg_5 {O(n)} 0: f4->f4, Arg_6: Arg_6 {O(n)} 1: f4->f6, Arg_0: min([Arg_0, Arg_1]) {O(n)} 1: f4->f6, Arg_1: Arg_1 {O(n)} 1: f4->f6, Arg_2: 0 {O(1)} 1: f4->f6, Arg_3: 0 {O(1)} 1: f4->f6, Arg_4: 0 {O(1)} 1: f4->f6, Arg_5: 0 {O(1)} 1: f4->f6, Arg_6: 0 {O(1)} 2: f5->f4, Arg_0: Arg_0 {O(n)} 2: f5->f4, Arg_1: Arg_1 {O(n)} 2: f5->f4, Arg_2: Arg_2 {O(n)} 2: f5->f4, Arg_3: Arg_3 {O(n)} 2: f5->f4, Arg_4: Arg_4 {O(n)} 2: f5->f4, Arg_5: Arg_5 {O(n)} 2: f5->f4, Arg_6: Arg_6 {O(n)} 3: f5->f6, Arg_0: Arg_0 {O(n)} 3: f5->f6, Arg_1: 0 {O(1)} 3: f5->f6, Arg_2: 0 {O(1)} 3: f5->f6, Arg_3: 0 {O(1)} 3: f5->f6, Arg_4: 0 {O(1)} 3: f5->f6, Arg_5: 0 {O(1)} 3: f5->f6, Arg_6: 0 {O(1)} `Upper: 0: f4->f4, Arg_0: Arg_0 {O(n)} 0: f4->f4, Arg_1: -1 {O(1)} 0: f4->f4, Arg_2: Arg_2 {O(n)} 0: f4->f4, Arg_3: Arg_3 {O(n)} 0: f4->f4, Arg_4: Arg_4 {O(n)} 0: f4->f4, Arg_5: Arg_5 {O(n)} 0: f4->f4, Arg_6: Arg_6 {O(n)} 1: f4->f6, Arg_0: -1 {O(1)} 1: f4->f6, Arg_1: -1 {O(1)} 1: f4->f6, Arg_2: 0 {O(1)} 1: f4->f6, Arg_3: 0 {O(1)} 1: f4->f6, Arg_4: 0 {O(1)} 1: f4->f6, Arg_5: 0 {O(1)} 1: f4->f6, Arg_6: 0 {O(1)} 2: f5->f4, Arg_0: Arg_0 {O(n)} 2: f5->f4, Arg_1: -1 {O(1)} 2: f5->f4, Arg_2: Arg_2 {O(n)} 2: f5->f4, Arg_3: Arg_3 {O(n)} 2: f5->f4, Arg_4: Arg_4 {O(n)} 2: f5->f4, Arg_5: Arg_5 {O(n)} 2: f5->f4, Arg_6: Arg_6 {O(n)} 3: f5->f6, Arg_0: Arg_0 {O(n)} 3: f5->f6, Arg_1: Arg_1 {O(n)} 3: f5->f6, Arg_2: 0 {O(1)} 3: f5->f6, Arg_3: 0 {O(1)} 3: f5->f6, Arg_4: 0 {O(1)} 3: f5->f6, Arg_5: 0 {O(1)} 3: f5->f6, Arg_6: 0 {O(1)} ---------------------------------------- (2) BOUNDS(1, max(3 + Arg_0 + -1 * Arg_1, 3))