10.62/4.72 WORST_CASE(Omega(n^1), O(n^1)) 10.68/4.73 proof of /export/starexec/sandbox/benchmark/theBenchmark.koat 10.68/4.73 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 10.68/4.73 10.68/4.73 10.68/4.73 The runtime complexity of the given CpxIntTrs could be proven to be BOUNDS(n^1, n^1). 10.68/4.73 10.68/4.73 (0) CpxIntTrs 10.68/4.73 (1) Koat Proof [FINISHED, 524 ms] 10.68/4.73 (2) BOUNDS(1, n^1) 10.68/4.73 (3) Loat Proof [FINISHED, 3041 ms] 10.68/4.73 (4) BOUNDS(n^1, INF) 10.68/4.73 10.68/4.73 10.68/4.73 ---------------------------------------- 10.68/4.73 10.68/4.73 (0) 10.68/4.73 Obligation: 10.68/4.73 Complexity Int TRS consisting of the following rules: 10.68/4.73 eval_random2d_start(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb0_in(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_bb0_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_0(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_0(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_1(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_1(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_2(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_2(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_3(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_3(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_4(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_4(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_5(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_5(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_6(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_6(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_7(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_7(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_8(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_8(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_9(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_9(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_10(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_10(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb1_in(v_1, v_2, v_N, 0)) :|: TRUE 10.68/4.73 eval_random2d_bb1_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb2_in(v_1, v_2, v_N, v_i_0)) :|: v_i_0 < v_N 10.68/4.73 eval_random2d_bb1_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb8_in(v_1, v_2, v_N, v_i_0)) :|: v_i_0 >= v_N 10.68/4.73 eval_random2d_bb2_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_12(v_i_0 + 1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_12(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_13(v_1, nondef_0, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_13(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb3_in(v_1, v_2, v_N, v_i_0)) :|: v_2 >= 0 && v_2 <= 3 10.68/4.73 eval_random2d_13(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb1_in(v_1, v_2, v_N, v_1)) :|: v_2 < 0 10.68/4.73 eval_random2d_13(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb1_in(v_1, v_2, v_N, v_1)) :|: v_2 > 3 10.68/4.73 eval_random2d_bb3_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NodeBlock9_in(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 eval_random2d_NodeBlock9_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NodeBlock_in(v_1, v_2, v_N, v_i_0)) :|: v_2 < 2 10.68/4.73 eval_random2d_NodeBlock9_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NodeBlock7_in(v_1, v_2, v_N, v_i_0)) :|: v_2 >= 2 10.68/4.73 eval_random2d_NodeBlock_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_LeafBlock_in(v_1, v_2, v_N, v_i_0)) :|: v_2 < 1 10.68/4.73 eval_random2d_NodeBlock_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_LeafBlock1_in(v_1, v_2, v_N, v_i_0)) :|: v_2 >= 1 10.68/4.73 eval_random2d_LeafBlock_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb4_in(v_1, v_2, v_N, v_i_0)) :|: v_2 >= 0 && v_2 <= 0 10.68/4.73 eval_random2d_LeafBlock_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0)) :|: v_2 < 0 10.68/4.73 eval_random2d_LeafBlock_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0)) :|: v_2 > 0 10.68/4.73 eval_random2d_bb4_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb1_in(v_1, v_2, v_N, v_1)) :|: TRUE 10.68/4.73 eval_random2d_LeafBlock1_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb5_in(v_1, v_2, v_N, v_i_0)) :|: v_2 >= 1 && v_2 <= 1 10.68/4.73 eval_random2d_LeafBlock1_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0)) :|: v_2 < 1 10.68/4.73 eval_random2d_LeafBlock1_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0)) :|: v_2 > 1 10.68/4.73 eval_random2d_bb5_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb1_in(v_1, v_2, v_N, v_1)) :|: TRUE 10.68/4.73 eval_random2d_NodeBlock7_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_LeafBlock3_in(v_1, v_2, v_N, v_i_0)) :|: v_2 < 3 10.68/4.73 eval_random2d_NodeBlock7_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_LeafBlock5_in(v_1, v_2, v_N, v_i_0)) :|: v_2 >= 3 10.68/4.73 eval_random2d_LeafBlock3_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb6_in(v_1, v_2, v_N, v_i_0)) :|: v_2 >= 2 && v_2 <= 2 10.68/4.73 eval_random2d_LeafBlock3_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0)) :|: v_2 < 2 10.68/4.73 eval_random2d_LeafBlock3_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0)) :|: v_2 > 2 10.68/4.73 eval_random2d_bb6_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb1_in(v_1, v_2, v_N, v_1)) :|: TRUE 10.68/4.73 eval_random2d_LeafBlock5_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb7_in(v_1, v_2, v_N, v_i_0)) :|: v_2 >= 3 && v_2 <= 3 10.68/4.73 eval_random2d_LeafBlock5_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0)) :|: v_2 < 3 10.68/4.73 eval_random2d_LeafBlock5_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0)) :|: v_2 > 3 10.68/4.73 eval_random2d_bb7_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb1_in(v_1, v_2, v_N, v_1)) :|: TRUE 10.68/4.73 eval_random2d_NewDefault_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_bb1_in(v_1, v_2, v_N, v_1)) :|: TRUE 10.68/4.73 eval_random2d_bb8_in(v_1, v_2, v_N, v_i_0) -> Com_1(eval_random2d_stop(v_1, v_2, v_N, v_i_0)) :|: TRUE 10.68/4.73 10.68/4.73 The start-symbols are:[eval_random2d_start_4] 10.68/4.73 10.68/4.73 10.68/4.73 ---------------------------------------- 10.68/4.73 10.68/4.73 (1) Koat Proof (FINISHED) 10.68/4.73 YES(?, 29*ar_1 + 17) 10.68/4.73 10.68/4.73 10.68/4.73 10.68/4.73 Initial complexity problem: 10.68/4.73 10.68/4.73 1: T: 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dstart(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d0(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d0(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d1(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d1(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d2(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d2(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d3(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d3(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d4(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d4(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d5(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d5(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d6(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d6(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d7(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d7(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d8(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d8(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d9(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d9(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d10(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d10(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3)) [ ar_1 >= ar_0 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3)) [ ar_0 >= ar_1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d12(ar_0, ar_1, ar_0 + 1, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d12(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d13(ar_0, ar_1, ar_2, e)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 0 /\ 3 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 0 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3)) [ 2 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 2 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstop(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstart(ar_0, ar_1, ar_2, ar_3)) [ 0 <= 0 ] 10.68/4.73 10.68/4.73 start location: koat_start 10.68/4.73 10.68/4.73 leaf cost: 0 10.68/4.73 10.68/4.73 10.68/4.73 10.68/4.73 Testing for reachability in the complexity graph removes the following transitions from problem 1: 10.68/4.73 10.68/4.73 evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 1 ] 10.68/4.73 10.68/4.73 evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 ] 10.68/4.73 10.68/4.73 evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 3 ] 10.68/4.73 10.68/4.73 evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 2 >= ar_3 ] 10.68/4.73 10.68/4.73 We thus obtain the following problem: 10.68/4.73 10.68/4.73 2: T: 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 0 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3)) [ 2 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 0 /\ 3 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d12(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d13(ar_0, ar_1, ar_2, e)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstop(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d12(ar_0, ar_1, ar_0 + 1, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3)) [ ar_0 >= ar_1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3)) [ ar_1 >= ar_0 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d10(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d9(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d10(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d8(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d9(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d7(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d8(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d6(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d7(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d5(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d6(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d4(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d5(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d3(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d4(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d2(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d3(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d1(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d2(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d0(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d1(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d0(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dstart(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstart(ar_0, ar_1, ar_2, ar_3)) [ 0 <= 0 ] 10.68/4.73 10.68/4.73 start location: koat_start 10.68/4.73 10.68/4.73 leaf cost: 0 10.68/4.73 10.68/4.73 10.68/4.73 10.68/4.73 Repeatedly propagating knowledge in problem 2 produces the following problem: 10.68/4.73 10.68/4.73 3: T: 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 0 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3)) [ 2 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 0 /\ 3 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d12(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d13(ar_0, ar_1, ar_2, e)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstop(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d12(ar_0, ar_1, ar_0 + 1, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3)) [ ar_0 >= ar_1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3)) [ ar_1 >= ar_0 + 1 ] 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d10(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d9(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d10(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d8(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d9(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d7(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d8(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d6(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d7(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d5(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d6(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d4(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d5(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d3(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d4(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d2(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d3(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d1(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d2(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d0(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d1(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d0(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2dstart(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstart(ar_0, ar_1, ar_2, ar_3)) [ 0 <= 0 ] 10.68/4.73 10.68/4.73 start location: koat_start 10.68/4.73 10.68/4.73 leaf cost: 0 10.68/4.73 10.68/4.73 10.68/4.73 10.68/4.73 A polynomial rank function with 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb7in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb1in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb6in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb5in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dNewDefaultin) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb4in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dLeafBlock5in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dLeafBlock3in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dLeafBlock1in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dLeafBlockin) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dNodeBlock7in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dNodeBlockin) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dNodeBlock9in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb3in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d13) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d12) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb8in) = 1 10.68/4.73 10.68/4.73 Pol(evalrandom2dstop) = 0 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb2in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d10) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d9) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d8) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d7) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d6) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d5) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d4) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d3) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d2) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d1) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2d0) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dbb0in) = 2 10.68/4.73 10.68/4.73 Pol(evalrandom2dstart) = 2 10.68/4.73 10.68/4.73 Pol(koat_start) = 2 10.68/4.73 10.68/4.73 orients all transitions weakly and the transitions 10.68/4.73 10.68/4.73 evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstop(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3)) [ ar_0 >= ar_1 ] 10.68/4.73 10.68/4.73 strictly and produces the following problem: 10.68/4.73 10.68/4.73 4: T: 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 0 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3)) [ 2 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 0 /\ 3 >= ar_3 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2d12(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d13(ar_0, ar_1, ar_2, e)) 10.68/4.73 10.68/4.73 (Comp: 2, Cost: 1) evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstop(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d12(ar_0, ar_1, ar_0 + 1, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 2, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3)) [ ar_0 >= ar_1 ] 10.68/4.73 10.68/4.73 (Comp: ?, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3)) [ ar_1 >= ar_0 + 1 ] 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d10(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d9(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d10(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d8(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d9(ar_0, ar_1, ar_2, ar_3)) 10.68/4.73 10.68/4.73 (Comp: 1, Cost: 1) evalrandom2d7(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d8(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d6(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d7(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d5(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d6(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d4(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d5(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d3(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d4(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d2(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d3(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d1(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d2(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d0(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d1(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d0(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2dstart(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstart(ar_0, ar_1, ar_2, ar_3)) [ 0 <= 0 ] 10.68/4.74 10.68/4.74 start location: koat_start 10.68/4.74 10.68/4.74 leaf cost: 0 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 A polynomial rank function with 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb7in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb1in) = -V_1 + V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb6in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb5in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dNewDefaultin) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb4in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dLeafBlock5in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dLeafBlock3in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dLeafBlock1in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dLeafBlockin) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dNodeBlock7in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dNodeBlockin) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dNodeBlock9in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb3in) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2d13) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2d12) = V_2 - V_3 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb8in) = -V_1 + V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2dstop) = -V_1 + V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb2in) = -V_1 + V_2 - 1 10.68/4.74 10.68/4.74 Pol(evalrandom2d10) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d9) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d8) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d7) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d6) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d5) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d4) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d3) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d2) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d1) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2d0) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2dbb0in) = V_2 10.68/4.74 10.68/4.74 Pol(evalrandom2dstart) = V_2 10.68/4.74 10.68/4.74 Pol(koat_start) = V_2 10.68/4.74 10.68/4.74 orients all transitions weakly and the transition 10.68/4.74 10.68/4.74 evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3)) [ ar_1 >= ar_0 + 1 ] 10.68/4.74 10.68/4.74 strictly and produces the following problem: 10.68/4.74 10.68/4.74 5: T: 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 3 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 2 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 1 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 0 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 3 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3)) [ 2 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 1 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 0 /\ 3 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2d12(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d13(ar_0, ar_1, ar_2, e)) 10.68/4.74 10.68/4.74 (Comp: 2, Cost: 1) evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstop(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ?, Cost: 1) evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d12(ar_0, ar_1, ar_0 + 1, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 2, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3)) [ ar_0 >= ar_1 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3)) [ ar_1 >= ar_0 + 1 ] 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d10(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d9(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d10(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d8(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d9(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d7(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d8(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d6(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d7(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d5(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d6(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d4(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d5(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d3(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d4(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d2(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d3(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d1(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d2(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d0(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d1(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d0(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2dstart(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstart(ar_0, ar_1, ar_2, ar_3)) [ 0 <= 0 ] 10.68/4.74 10.68/4.74 start location: koat_start 10.68/4.74 10.68/4.74 leaf cost: 0 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Repeatedly propagating knowledge in problem 5 produces the following problem: 10.68/4.74 10.68/4.74 6: T: 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 4*ar_1, Cost: 1) evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 3 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb6in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 2 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 1 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNewDefaultin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb4in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 = 0 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock5in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 3 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock3in(ar_0, ar_1, ar_2, ar_3)) [ 2 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlock1in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 1 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dLeafBlockin(ar_0, ar_1, ar_2, ar_3)) [ 0 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock7in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 2 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlockin(ar_0, ar_1, ar_2, ar_3)) [ 1 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dNodeBlock9in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ ar_3 >= 4 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(ar_2, ar_1, ar_2, ar_3)) [ 0 >= ar_3 + 1 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2d13(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb3in(ar_0, ar_1, ar_2, ar_3)) [ ar_3 >= 0 /\ 3 >= ar_3 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2d12(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d13(ar_0, ar_1, ar_2, e)) 10.68/4.74 10.68/4.74 (Comp: 2, Cost: 1) evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstop(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d12(ar_0, ar_1, ar_0 + 1, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 2, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb8in(ar_0, ar_1, ar_2, ar_3)) [ ar_0 >= ar_1 ] 10.68/4.74 10.68/4.74 (Comp: ar_1, Cost: 1) evalrandom2dbb1in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb2in(ar_0, ar_1, ar_2, ar_3)) [ ar_1 >= ar_0 + 1 ] 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d10(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb1in(0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d9(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d10(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d8(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d9(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d7(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d8(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d6(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d7(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d5(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d6(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d4(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d5(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d3(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d4(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d2(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d3(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d1(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d2(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2d0(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d1(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2d0(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 1) evalrandom2dstart(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dbb0in(ar_0, ar_1, ar_2, ar_3)) 10.68/4.74 10.68/4.74 (Comp: 1, Cost: 0) koat_start(ar_0, ar_1, ar_2, ar_3) -> Com_1(evalrandom2dstart(ar_0, ar_1, ar_2, ar_3)) [ 0 <= 0 ] 10.68/4.74 10.68/4.74 start location: koat_start 10.68/4.74 10.68/4.74 leaf cost: 0 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Complexity upper bound 29*ar_1 + 17 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Time: 0.495 sec (SMT: 0.374 sec) 10.68/4.74 10.68/4.74 10.68/4.74 ---------------------------------------- 10.68/4.74 10.68/4.74 (2) 10.68/4.74 BOUNDS(1, n^1) 10.68/4.74 10.68/4.74 ---------------------------------------- 10.68/4.74 10.68/4.74 (3) Loat Proof (FINISHED) 10.68/4.74 10.68/4.74 10.68/4.74 ### Pre-processing the ITS problem ### 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Initial linear ITS problem 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 0: evalrandom2dstart -> evalrandom2dbb0in : [], cost: 1 10.68/4.74 10.68/4.74 1: evalrandom2dbb0in -> evalrandom2d0 : [], cost: 1 10.68/4.74 10.68/4.74 2: evalrandom2d0 -> evalrandom2d1 : [], cost: 1 10.68/4.74 10.68/4.74 3: evalrandom2d1 -> evalrandom2d2 : [], cost: 1 10.68/4.74 10.68/4.74 4: evalrandom2d2 -> evalrandom2d3 : [], cost: 1 10.68/4.74 10.68/4.74 5: evalrandom2d3 -> evalrandom2d4 : [], cost: 1 10.68/4.74 10.68/4.74 6: evalrandom2d4 -> evalrandom2d5 : [], cost: 1 10.68/4.74 10.68/4.74 7: evalrandom2d5 -> evalrandom2d6 : [], cost: 1 10.68/4.74 10.68/4.74 8: evalrandom2d6 -> evalrandom2d7 : [], cost: 1 10.68/4.74 10.68/4.74 9: evalrandom2d7 -> evalrandom2d8 : [], cost: 1 10.68/4.74 10.68/4.74 10: evalrandom2d8 -> evalrandom2d9 : [], cost: 1 10.68/4.74 10.68/4.74 11: evalrandom2d9 -> evalrandom2d10 : [], cost: 1 10.68/4.74 10.68/4.74 12: evalrandom2d10 -> evalrandom2dbb1in : A'=0, [], cost: 1 10.68/4.74 10.68/4.74 13: evalrandom2dbb1in -> evalrandom2dbb2in : [ B>=1+A ], cost: 1 10.68/4.74 10.68/4.74 14: evalrandom2dbb1in -> evalrandom2dbb8in : [ A>=B ], cost: 1 10.68/4.74 10.68/4.74 15: evalrandom2dbb2in -> evalrandom2d12 : C'=1+A, [], cost: 1 10.68/4.74 10.68/4.74 16: evalrandom2d12 -> evalrandom2d13 : D'=free, [], cost: 1 10.68/4.74 10.68/4.74 17: evalrandom2d13 -> evalrandom2dbb3in : [ D>=0 && 3>=D ], cost: 1 10.68/4.74 10.68/4.74 18: evalrandom2d13 -> evalrandom2dbb1in : A'=C, [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 19: evalrandom2d13 -> evalrandom2dbb1in : A'=C, [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 20: evalrandom2dbb3in -> evalrandom2dNodeBlock9in : [], cost: 1 10.68/4.74 10.68/4.74 21: evalrandom2dNodeBlock9in -> evalrandom2dNodeBlockin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 22: evalrandom2dNodeBlock9in -> evalrandom2dNodeBlock7in : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 23: evalrandom2dNodeBlockin -> evalrandom2dLeafBlockin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 24: evalrandom2dNodeBlockin -> evalrandom2dLeafBlock1in : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 25: evalrandom2dLeafBlockin -> evalrandom2dbb4in : [ D==0 ], cost: 1 10.68/4.74 10.68/4.74 26: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 27: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 28: evalrandom2dbb4in -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 29: evalrandom2dLeafBlock1in -> evalrandom2dbb5in : [ D==1 ], cost: 1 10.68/4.74 10.68/4.74 30: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 31: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 32: evalrandom2dbb5in -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 33: evalrandom2dNodeBlock7in -> evalrandom2dLeafBlock3in : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 34: evalrandom2dNodeBlock7in -> evalrandom2dLeafBlock5in : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 35: evalrandom2dLeafBlock3in -> evalrandom2dbb6in : [ D==2 ], cost: 1 10.68/4.74 10.68/4.74 36: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 37: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 38: evalrandom2dbb6in -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 39: evalrandom2dLeafBlock5in -> evalrandom2dbb7in : [ D==3 ], cost: 1 10.68/4.74 10.68/4.74 40: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 41: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 42: evalrandom2dbb7in -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 43: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 44: evalrandom2dbb8in -> evalrandom2dstop : [], cost: 1 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Removed unreachable and leaf rules: 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 0: evalrandom2dstart -> evalrandom2dbb0in : [], cost: 1 10.68/4.74 10.68/4.74 1: evalrandom2dbb0in -> evalrandom2d0 : [], cost: 1 10.68/4.74 10.68/4.74 2: evalrandom2d0 -> evalrandom2d1 : [], cost: 1 10.68/4.74 10.68/4.74 3: evalrandom2d1 -> evalrandom2d2 : [], cost: 1 10.68/4.74 10.68/4.74 4: evalrandom2d2 -> evalrandom2d3 : [], cost: 1 10.68/4.74 10.68/4.74 5: evalrandom2d3 -> evalrandom2d4 : [], cost: 1 10.68/4.74 10.68/4.74 6: evalrandom2d4 -> evalrandom2d5 : [], cost: 1 10.68/4.74 10.68/4.74 7: evalrandom2d5 -> evalrandom2d6 : [], cost: 1 10.68/4.74 10.68/4.74 8: evalrandom2d6 -> evalrandom2d7 : [], cost: 1 10.68/4.74 10.68/4.74 9: evalrandom2d7 -> evalrandom2d8 : [], cost: 1 10.68/4.74 10.68/4.74 10: evalrandom2d8 -> evalrandom2d9 : [], cost: 1 10.68/4.74 10.68/4.74 11: evalrandom2d9 -> evalrandom2d10 : [], cost: 1 10.68/4.74 10.68/4.74 12: evalrandom2d10 -> evalrandom2dbb1in : A'=0, [], cost: 1 10.68/4.74 10.68/4.74 13: evalrandom2dbb1in -> evalrandom2dbb2in : [ B>=1+A ], cost: 1 10.68/4.74 10.68/4.74 15: evalrandom2dbb2in -> evalrandom2d12 : C'=1+A, [], cost: 1 10.68/4.74 10.68/4.74 16: evalrandom2d12 -> evalrandom2d13 : D'=free, [], cost: 1 10.68/4.74 10.68/4.74 17: evalrandom2d13 -> evalrandom2dbb3in : [ D>=0 && 3>=D ], cost: 1 10.68/4.74 10.68/4.74 18: evalrandom2d13 -> evalrandom2dbb1in : A'=C, [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 19: evalrandom2d13 -> evalrandom2dbb1in : A'=C, [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 20: evalrandom2dbb3in -> evalrandom2dNodeBlock9in : [], cost: 1 10.68/4.74 10.68/4.74 21: evalrandom2dNodeBlock9in -> evalrandom2dNodeBlockin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 22: evalrandom2dNodeBlock9in -> evalrandom2dNodeBlock7in : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 23: evalrandom2dNodeBlockin -> evalrandom2dLeafBlockin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 24: evalrandom2dNodeBlockin -> evalrandom2dLeafBlock1in : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 25: evalrandom2dLeafBlockin -> evalrandom2dbb4in : [ D==0 ], cost: 1 10.68/4.74 10.68/4.74 26: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 27: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 28: evalrandom2dbb4in -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 29: evalrandom2dLeafBlock1in -> evalrandom2dbb5in : [ D==1 ], cost: 1 10.68/4.74 10.68/4.74 30: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 31: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 32: evalrandom2dbb5in -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 33: evalrandom2dNodeBlock7in -> evalrandom2dLeafBlock3in : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 34: evalrandom2dNodeBlock7in -> evalrandom2dLeafBlock5in : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 35: evalrandom2dLeafBlock3in -> evalrandom2dbb6in : [ D==2 ], cost: 1 10.68/4.74 10.68/4.74 36: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 37: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 38: evalrandom2dbb6in -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 39: evalrandom2dLeafBlock5in -> evalrandom2dbb7in : [ D==3 ], cost: 1 10.68/4.74 10.68/4.74 40: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 41: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 42: evalrandom2dbb7in -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 43: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 ### Simplification by acceleration and chaining ### 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Eliminated locations (on linear paths): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 58: evalrandom2dbb1in -> evalrandom2d13 : C'=1+A, D'=free, [ B>=1+A ], cost: 3 10.68/4.74 10.68/4.74 18: evalrandom2d13 -> evalrandom2dbb1in : A'=C, [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 19: evalrandom2d13 -> evalrandom2dbb1in : A'=C, [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 59: evalrandom2d13 -> evalrandom2dNodeBlock9in : [ D>=0 && 3>=D ], cost: 2 10.68/4.74 10.68/4.74 21: evalrandom2dNodeBlock9in -> evalrandom2dNodeBlockin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 22: evalrandom2dNodeBlock9in -> evalrandom2dNodeBlock7in : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 23: evalrandom2dNodeBlockin -> evalrandom2dLeafBlockin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 24: evalrandom2dNodeBlockin -> evalrandom2dLeafBlock1in : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 26: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 27: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 60: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=C, [ D==0 ], cost: 2 10.68/4.74 10.68/4.74 30: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 31: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 61: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=C, [ D==1 ], cost: 2 10.68/4.74 10.68/4.74 33: evalrandom2dNodeBlock7in -> evalrandom2dLeafBlock3in : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 34: evalrandom2dNodeBlock7in -> evalrandom2dLeafBlock5in : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 36: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 37: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 62: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=C, [ D==2 ], cost: 2 10.68/4.74 10.68/4.74 40: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 41: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 63: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=C, [ D==3 ], cost: 2 10.68/4.74 10.68/4.74 43: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Eliminated locations (on tree-shaped paths): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 64: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && 0>=1+free ], cost: 4 10.68/4.74 10.68/4.74 65: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free>=4 ], cost: 4 10.68/4.74 10.68/4.74 66: evalrandom2dbb1in -> evalrandom2dNodeBlock9in : C'=1+A, D'=free, [ B>=1+A && free>=0 && 3>=free ], cost: 5 10.68/4.74 10.68/4.74 67: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlockin : [ 0>=D ], cost: 2 10.68/4.74 10.68/4.74 68: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock1in : [ 1>=D && D>=1 ], cost: 2 10.68/4.74 10.68/4.74 69: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock3in : [ D>=2 && 2>=D ], cost: 2 10.68/4.74 10.68/4.74 70: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock5in : [ D>=3 ], cost: 2 10.68/4.74 10.68/4.74 26: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 27: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 60: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=C, [ D==0 ], cost: 2 10.68/4.74 10.68/4.74 30: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 31: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 61: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=C, [ D==1 ], cost: 2 10.68/4.74 10.68/4.74 36: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 37: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 62: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=C, [ D==2 ], cost: 2 10.68/4.74 10.68/4.74 40: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 41: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 63: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=C, [ D==3 ], cost: 2 10.68/4.74 10.68/4.74 43: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Accelerating simple loops of location 13. 10.68/4.74 10.68/4.74 Accelerating the following rules: 10.68/4.74 10.68/4.74 64: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && 0>=1+free ], cost: 4 10.68/4.74 10.68/4.74 65: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free>=4 ], cost: 4 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Accelerated rule 64 with metering function -A+B, yielding the new rule 71. 10.68/4.74 10.68/4.74 Accelerated rule 65 with metering function -A+B, yielding the new rule 72. 10.68/4.74 10.68/4.74 Removing the simple loops: 64 65. 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Accelerated all simple loops using metering functions (where possible): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 66: evalrandom2dbb1in -> evalrandom2dNodeBlock9in : C'=1+A, D'=free, [ B>=1+A && free>=0 && 3>=free ], cost: 5 10.68/4.74 10.68/4.74 71: evalrandom2dbb1in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1+A && 0>=1+free ], cost: -4*A+4*B 10.68/4.74 10.68/4.74 72: evalrandom2dbb1in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1+A && free>=4 ], cost: -4*A+4*B 10.68/4.74 10.68/4.74 67: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlockin : [ 0>=D ], cost: 2 10.68/4.74 10.68/4.74 68: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock1in : [ 1>=D && D>=1 ], cost: 2 10.68/4.74 10.68/4.74 69: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock3in : [ D>=2 && 2>=D ], cost: 2 10.68/4.74 10.68/4.74 70: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock5in : [ D>=3 ], cost: 2 10.68/4.74 10.68/4.74 26: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 27: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 60: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=C, [ D==0 ], cost: 2 10.68/4.74 10.68/4.74 30: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 31: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 61: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=C, [ D==1 ], cost: 2 10.68/4.74 10.68/4.74 36: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 37: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 62: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=C, [ D==2 ], cost: 2 10.68/4.74 10.68/4.74 40: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 41: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 63: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=C, [ D==3 ], cost: 2 10.68/4.74 10.68/4.74 43: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Chained accelerated rules (with incoming rules): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 74: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && 0>=1+free ], cost: 13+4*B 10.68/4.74 10.68/4.74 80: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && free>=4 ], cost: 13+4*B 10.68/4.74 10.68/4.74 66: evalrandom2dbb1in -> evalrandom2dNodeBlock9in : C'=1+A, D'=free, [ B>=1+A && free>=0 && 3>=free ], cost: 5 10.68/4.74 10.68/4.74 67: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlockin : [ 0>=D ], cost: 2 10.68/4.74 10.68/4.74 68: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock1in : [ 1>=D && D>=1 ], cost: 2 10.68/4.74 10.68/4.74 69: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock3in : [ D>=2 && 2>=D ], cost: 2 10.68/4.74 10.68/4.74 70: evalrandom2dNodeBlock9in -> evalrandom2dLeafBlock5in : [ D>=3 ], cost: 2 10.68/4.74 10.68/4.74 26: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 27: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 60: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=C, [ D==0 ], cost: 2 10.68/4.74 10.68/4.74 75: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==0 && B>=1+C && 0>=1+free ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 81: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==0 && B>=1+C && free>=4 ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 30: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 31: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 61: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=C, [ D==1 ], cost: 2 10.68/4.74 10.68/4.74 76: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==1 && B>=1+C && 0>=1+free ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 82: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==1 && B>=1+C && free>=4 ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 36: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 37: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 62: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=C, [ D==2 ], cost: 2 10.68/4.74 10.68/4.74 77: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==2 && B>=1+C && 0>=1+free ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 83: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==2 && B>=1+C && free>=4 ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 40: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 41: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 63: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=C, [ D==3 ], cost: 2 10.68/4.74 10.68/4.74 78: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==3 && B>=1+C && 0>=1+free ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 84: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==3 && B>=1+C && free>=4 ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 43: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 73: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1+C && 0>=1+free ], cost: 1-4*C+4*B 10.68/4.74 10.68/4.74 79: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1+C && free>=4 ], cost: 1-4*C+4*B 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Eliminated locations (on tree-shaped paths): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 74: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && 0>=1+free ], cost: 13+4*B 10.68/4.74 10.68/4.74 80: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && free>=4 ], cost: 13+4*B 10.68/4.74 10.68/4.74 85: evalrandom2dbb1in -> evalrandom2dLeafBlockin : C'=1+A, D'=free, [ B>=1+A && free>=0 && 0>=free ], cost: 7 10.68/4.74 10.68/4.74 86: evalrandom2dbb1in -> evalrandom2dLeafBlock1in : C'=1+A, D'=free, [ B>=1+A && 1>=free && free>=1 ], cost: 7 10.68/4.74 10.68/4.74 87: evalrandom2dbb1in -> evalrandom2dLeafBlock3in : C'=1+A, D'=free, [ B>=1+A && free>=2 && 2>=free ], cost: 7 10.68/4.74 10.68/4.74 88: evalrandom2dbb1in -> evalrandom2dLeafBlock5in : C'=1+A, D'=free, [ B>=1+A && 3>=free && free>=3 ], cost: 7 10.68/4.74 10.68/4.74 26: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ 0>=1+D ], cost: 1 10.68/4.74 10.68/4.74 27: evalrandom2dLeafBlockin -> evalrandom2dNewDefaultin : [ D>=1 ], cost: 1 10.68/4.74 10.68/4.74 60: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=C, [ D==0 ], cost: 2 10.68/4.74 10.68/4.74 75: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==0 && B>=1+C && 0>=1+free ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 81: evalrandom2dLeafBlockin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==0 && B>=1+C && free>=4 ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 30: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ 0>=D ], cost: 1 10.68/4.74 10.68/4.74 31: evalrandom2dLeafBlock1in -> evalrandom2dNewDefaultin : [ D>=2 ], cost: 1 10.68/4.74 10.68/4.74 61: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=C, [ D==1 ], cost: 2 10.68/4.74 10.68/4.74 76: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==1 && B>=1+C && 0>=1+free ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 82: evalrandom2dLeafBlock1in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==1 && B>=1+C && free>=4 ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 36: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ 1>=D ], cost: 1 10.68/4.74 10.68/4.74 37: evalrandom2dLeafBlock3in -> evalrandom2dNewDefaultin : [ D>=3 ], cost: 1 10.68/4.74 10.68/4.74 62: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=C, [ D==2 ], cost: 2 10.68/4.74 10.68/4.74 77: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==2 && B>=1+C && 0>=1+free ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 83: evalrandom2dLeafBlock3in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==2 && B>=1+C && free>=4 ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 40: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ 2>=D ], cost: 1 10.68/4.74 10.68/4.74 41: evalrandom2dLeafBlock5in -> evalrandom2dNewDefaultin : [ D>=4 ], cost: 1 10.68/4.74 10.68/4.74 63: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=C, [ D==3 ], cost: 2 10.68/4.74 10.68/4.74 78: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==3 && B>=1+C && 0>=1+free ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 84: evalrandom2dLeafBlock5in -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ D==3 && B>=1+C && free>=4 ], cost: 2-4*C+4*B 10.68/4.74 10.68/4.74 43: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 73: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1+C && 0>=1+free ], cost: 1-4*C+4*B 10.68/4.74 10.68/4.74 79: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1+C && free>=4 ], cost: 1-4*C+4*B 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Eliminated locations (on tree-shaped paths): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 74: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && 0>=1+free ], cost: 13+4*B 10.68/4.74 10.68/4.74 80: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && free>=4 ], cost: 13+4*B 10.68/4.74 10.68/4.74 89: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free==0 ], cost: 9 10.68/4.74 10.68/4.74 90: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free==1 ], cost: 9 10.68/4.74 10.68/4.74 91: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free==2 ], cost: 9 10.68/4.74 10.68/4.74 92: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free==3 ], cost: 9 10.68/4.74 10.68/4.74 43: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=C, [], cost: 1 10.68/4.74 10.68/4.74 73: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1+C && 0>=1+free ], cost: 1-4*C+4*B 10.68/4.74 10.68/4.74 79: evalrandom2dNewDefaultin -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1+C && free>=4 ], cost: 1-4*C+4*B 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Applied pruning (of leafs and parallel rules): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 74: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && 0>=1+free ], cost: 13+4*B 10.68/4.74 10.68/4.74 80: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && free>=4 ], cost: 13+4*B 10.68/4.74 10.68/4.74 89: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free==0 ], cost: 9 10.68/4.74 10.68/4.74 90: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free==1 ], cost: 9 10.68/4.74 10.68/4.74 91: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free==2 ], cost: 9 10.68/4.74 10.68/4.74 92: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=free, [ B>=1+A && free==3 ], cost: 9 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Accelerating simple loops of location 13. 10.68/4.74 10.68/4.74 Simplified some of the simple loops (and removed duplicate rules). 10.68/4.74 10.68/4.74 Accelerating the following rules: 10.68/4.74 10.68/4.74 89: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=0, [ B>=1+A ], cost: 9 10.68/4.74 10.68/4.74 90: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=1, [ B>=1+A ], cost: 9 10.68/4.74 10.68/4.74 91: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=2, [ B>=1+A ], cost: 9 10.68/4.74 10.68/4.74 92: evalrandom2dbb1in -> evalrandom2dbb1in : A'=1+A, C'=1+A, D'=3, [ B>=1+A ], cost: 9 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Accelerated rule 89 with metering function -A+B, yielding the new rule 93. 10.68/4.74 10.68/4.74 Accelerated rule 90 with metering function -A+B, yielding the new rule 94. 10.68/4.74 10.68/4.74 Accelerated rule 91 with metering function -A+B, yielding the new rule 95. 10.68/4.74 10.68/4.74 Accelerated rule 92 with metering function -A+B, yielding the new rule 96. 10.68/4.74 10.68/4.74 Removing the simple loops: 89 90 91 92. 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Accelerated all simple loops using metering functions (where possible): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 74: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && 0>=1+free ], cost: 13+4*B 10.68/4.74 10.68/4.74 80: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && free>=4 ], cost: 13+4*B 10.68/4.74 10.68/4.74 93: evalrandom2dbb1in -> evalrandom2dbb1in : A'=B, C'=B, D'=0, [ B>=1+A ], cost: -9*A+9*B 10.68/4.74 10.68/4.74 94: evalrandom2dbb1in -> evalrandom2dbb1in : A'=B, C'=B, D'=1, [ B>=1+A ], cost: -9*A+9*B 10.68/4.74 10.68/4.74 95: evalrandom2dbb1in -> evalrandom2dbb1in : A'=B, C'=B, D'=2, [ B>=1+A ], cost: -9*A+9*B 10.68/4.74 10.68/4.74 96: evalrandom2dbb1in -> evalrandom2dbb1in : A'=B, C'=B, D'=3, [ B>=1+A ], cost: -9*A+9*B 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Chained accelerated rules (with incoming rules): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 56: evalrandom2dstart -> evalrandom2dbb1in : A'=0, [], cost: 13 10.68/4.74 10.68/4.74 74: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && 0>=1+free ], cost: 13+4*B 10.68/4.74 10.68/4.74 80: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && free>=4 ], cost: 13+4*B 10.68/4.74 10.68/4.74 97: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=0, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 98: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=1, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 99: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=2, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 100: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=3, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Removed unreachable locations (and leaf rules with constant cost): 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 74: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && 0>=1+free ], cost: 13+4*B 10.68/4.74 10.68/4.74 80: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && free>=4 ], cost: 13+4*B 10.68/4.74 10.68/4.74 97: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=0, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 98: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=1, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 99: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=2, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 100: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=3, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 ### Computing asymptotic complexity ### 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Fully simplified ITS problem 10.68/4.74 10.68/4.74 Start location: evalrandom2dstart 10.68/4.74 10.68/4.74 74: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && 0>=1+free ], cost: 13+4*B 10.68/4.74 10.68/4.74 80: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=free, [ B>=1 && free>=4 ], cost: 13+4*B 10.68/4.74 10.68/4.74 100: evalrandom2dstart -> evalrandom2dbb1in : A'=B, C'=B, D'=3, [ B>=1 ], cost: 13+9*B 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Computing asymptotic complexity for rule 74 10.68/4.74 10.68/4.74 Solved the limit problem by the following transformations: 10.68/4.74 10.68/4.74 Created initial limit problem: 10.68/4.74 10.68/4.74 13+4*B (+), B (+/+!), -free (+/+!) [not solved] 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 removing all constraints (solved by SMT) 10.68/4.74 10.68/4.74 resulting limit problem: [solved] 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 applying transformation rule (C) using substitution {free==-n,B==n} 10.68/4.74 10.68/4.74 resulting limit problem: 10.68/4.74 10.68/4.74 [solved] 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Solution: 10.68/4.74 10.68/4.74 free / -n 10.68/4.74 10.68/4.74 B / n 10.68/4.74 10.68/4.74 Resulting cost 13+4*n has complexity: Poly(n^1) 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Found new complexity Poly(n^1). 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 Obtained the following overall complexity (w.r.t. the length of the input n): 10.68/4.74 10.68/4.74 Complexity: Poly(n^1) 10.68/4.74 10.68/4.74 Cpx degree: 1 10.68/4.74 10.68/4.74 Solved cost: 13+4*n 10.68/4.74 10.68/4.74 Rule cost: 13+4*B 10.68/4.74 10.68/4.74 Rule guard: [ B>=1 && 0>=1+free ] 10.68/4.74 10.68/4.74 10.68/4.74 10.68/4.74 WORST_CASE(Omega(n^1),?) 10.68/4.74 10.68/4.74 10.68/4.74 ---------------------------------------- 10.68/4.74 10.68/4.74 (4) 10.68/4.74 BOUNDS(n^1, INF) 10.68/4.77 EOF