3.33/1.73 WORST_CASE(?, O(1)) 3.33/1.74 proof of /export/starexec/sandbox/benchmark/theBenchmark.koat 3.33/1.74 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 3.33/1.74 3.33/1.74 3.33/1.74 The runtime complexity of the given CpxIntTrs could be proven to be BOUNDS(1, 1). 3.33/1.74 3.33/1.74 (0) CpxIntTrs 3.33/1.74 (1) Koat Proof [FINISHED, 18 ms] 3.33/1.74 (2) BOUNDS(1, 1) 3.33/1.74 3.33/1.74 3.33/1.74 ---------------------------------------- 3.33/1.74 3.33/1.74 (0) 3.33/1.74 Obligation: 3.33/1.74 Complexity Int TRS consisting of the following rules: 3.33/1.74 f0(A, B) -> Com_1(f6(0, C)) :|: TRUE 3.33/1.74 f6(A, B) -> Com_1(f6(A + 1, B)) :|: 49 >= A 3.33/1.74 f6(A, B) -> Com_1(f14(A, B)) :|: A >= 50 3.33/1.74 3.33/1.74 The start-symbols are:[f0_2] 3.33/1.74 3.33/1.74 3.33/1.74 ---------------------------------------- 3.33/1.74 3.33/1.74 (1) Koat Proof (FINISHED) 3.33/1.74 YES(?, 52) 3.33/1.74 3.33/1.74 3.33/1.74 3.33/1.74 Initial complexity problem: 3.33/1.74 3.33/1.74 1: T: 3.33/1.74 3.33/1.74 (Comp: ?, Cost: 1) f0(ar_0, ar_1) -> Com_1(f6(0, c)) 3.33/1.74 3.33/1.74 (Comp: ?, Cost: 1) f6(ar_0, ar_1) -> Com_1(f6(ar_0 + 1, ar_1)) [ 49 >= ar_0 ] 3.33/1.74 3.33/1.74 (Comp: ?, Cost: 1) f6(ar_0, ar_1) -> Com_1(f14(ar_0, ar_1)) [ ar_0 >= 50 ] 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1) -> Com_1(f0(ar_0, ar_1)) [ 0 <= 0 ] 3.33/1.74 3.33/1.74 start location: koat_start 3.33/1.74 3.33/1.74 leaf cost: 0 3.33/1.74 3.33/1.74 3.33/1.74 3.33/1.74 Repeatedly propagating knowledge in problem 1 produces the following problem: 3.33/1.74 3.33/1.74 2: T: 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 1) f0(ar_0, ar_1) -> Com_1(f6(0, c)) 3.33/1.74 3.33/1.74 (Comp: ?, Cost: 1) f6(ar_0, ar_1) -> Com_1(f6(ar_0 + 1, ar_1)) [ 49 >= ar_0 ] 3.33/1.74 3.33/1.74 (Comp: ?, Cost: 1) f6(ar_0, ar_1) -> Com_1(f14(ar_0, ar_1)) [ ar_0 >= 50 ] 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1) -> Com_1(f0(ar_0, ar_1)) [ 0 <= 0 ] 3.33/1.74 3.33/1.74 start location: koat_start 3.33/1.74 3.33/1.74 leaf cost: 0 3.33/1.74 3.33/1.74 3.33/1.74 3.33/1.74 A polynomial rank function with 3.33/1.74 3.33/1.74 Pol(f0) = 1 3.33/1.74 3.33/1.74 Pol(f6) = 1 3.33/1.74 3.33/1.74 Pol(f14) = 0 3.33/1.74 3.33/1.74 Pol(koat_start) = 1 3.33/1.74 3.33/1.74 orients all transitions weakly and the transition 3.33/1.74 3.33/1.74 f6(ar_0, ar_1) -> Com_1(f14(ar_0, ar_1)) [ ar_0 >= 50 ] 3.33/1.74 3.33/1.74 strictly and produces the following problem: 3.33/1.74 3.33/1.74 3: T: 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 1) f0(ar_0, ar_1) -> Com_1(f6(0, c)) 3.33/1.74 3.33/1.74 (Comp: ?, Cost: 1) f6(ar_0, ar_1) -> Com_1(f6(ar_0 + 1, ar_1)) [ 49 >= ar_0 ] 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 1) f6(ar_0, ar_1) -> Com_1(f14(ar_0, ar_1)) [ ar_0 >= 50 ] 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1) -> Com_1(f0(ar_0, ar_1)) [ 0 <= 0 ] 3.33/1.74 3.33/1.74 start location: koat_start 3.33/1.74 3.33/1.74 leaf cost: 0 3.33/1.74 3.33/1.74 3.33/1.74 3.33/1.74 A polynomial rank function with 3.33/1.74 3.33/1.74 Pol(f0) = 50 3.33/1.74 3.33/1.74 Pol(f6) = -V_1 + 50 3.33/1.74 3.33/1.74 Pol(f14) = -V_1 3.33/1.74 3.33/1.74 Pol(koat_start) = 50 3.33/1.74 3.33/1.74 orients all transitions weakly and the transition 3.33/1.74 3.33/1.74 f6(ar_0, ar_1) -> Com_1(f6(ar_0 + 1, ar_1)) [ 49 >= ar_0 ] 3.33/1.74 3.33/1.74 strictly and produces the following problem: 3.33/1.74 3.33/1.74 4: T: 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 1) f0(ar_0, ar_1) -> Com_1(f6(0, c)) 3.33/1.74 3.33/1.74 (Comp: 50, Cost: 1) f6(ar_0, ar_1) -> Com_1(f6(ar_0 + 1, ar_1)) [ 49 >= ar_0 ] 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 1) f6(ar_0, ar_1) -> Com_1(f14(ar_0, ar_1)) [ ar_0 >= 50 ] 3.33/1.74 3.33/1.74 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1) -> Com_1(f0(ar_0, ar_1)) [ 0 <= 0 ] 3.33/1.74 3.33/1.74 start location: koat_start 3.33/1.74 3.33/1.74 leaf cost: 0 3.33/1.74 3.33/1.74 3.33/1.74 3.33/1.74 Complexity upper bound 52 3.33/1.74 3.33/1.74 3.33/1.74 3.33/1.74 Time: 0.043 sec (SMT: 0.041 sec) 3.33/1.74 3.33/1.74 3.33/1.74 ---------------------------------------- 3.33/1.74 3.33/1.74 (2) 3.33/1.74 BOUNDS(1, 1) 3.33/1.76 EOF