NO Initial ITS Start location: __init 0: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=arg3P0, (1+arg1P0 > 0 /\ -arg3P0 == 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 1 1: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P1, arg4'=arg4P1, arg1'=arg1P1, arg3'=arg3P1, (-arg1P1+arg1 == 0 /\ arg4-arg4P1 == 0 /\ 1-arg3 == 0 /\ arg4 > 0 /\ 1-arg3P1 == 0 /\ -arg2P1+arg2 == 0 /\ arg2-x200 >= 0), cost: 1 3: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P3, arg4'=arg4P3, arg1'=arg1P3, arg3'=arg3P3, (arg1-arg1P3 == 0 /\ -arg3 == 0 /\ -arg3P3 == 0 /\ arg4 > 0 /\ arg2-arg2P3 == 0 /\ -x310+arg1 >= 0 /\ arg4-arg4P3 == 0), cost: 1 5: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P5, arg4'=arg4P5, arg1'=arg1P5, arg3'=arg3P5, (-arg4 == 0 /\ arg2-arg2P5 == 0 /\ 1-arg3 == 0 /\ arg1 > 0 /\ -arg1P5+arg1 == 0 /\ 1-arg3P5 == 0 /\ -arg4P5 == 0 /\ arg2-x410 >= 0), cost: 1 7: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P7, arg4'=arg4P7, arg1'=arg1P7, arg3'=arg3P7, (-arg4 == 0 /\ -arg4P7 == 0 /\ arg2-arg2P7 == 0 /\ -arg3 == 0 /\ arg1-x510 > 0 /\ -arg3P7 == 0 /\ arg1 > 0 /\ arg1-arg1P7 == 0), cost: 1 9: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P9, arg4'=arg4P9, arg1'=arg1P9, arg3'=arg3P9, (-arg4 == 0 /\ arg2 > 0 /\ -arg1P9 == 0 /\ 1-arg3 == 0 /\ arg2-x610 > 0 /\ -arg4P9 == 0 /\ -arg1 == 0 /\ 1-arg3P9 == 0 /\ arg2-arg2P9 == 0), cost: 1 11: f257_0_loop_GT -> f257_0_loop_GT : arg2'=arg2P11, arg4'=arg4P11, arg1'=arg1P11, arg3'=arg3P11, (-arg4 == 0 /\ arg2 > 0 /\ -arg3 == 0 /\ -arg4P11 == 0 /\ -arg1P11 == 0 /\ 1-arg3P11 == 0 /\ -arg1 == 0 /\ arg2-arg2P11 == 0), cost: 1 2: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P2, arg4'=arg4P2, arg1'=arg1P2, arg3'=arg3P2, (-2-2*arg1P2+arg2 < 0 /\ 1-arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ arg4-arg4P2 == 0 /\ -arg1P2+arg2 >= 0 /\ -arg3P2 == 0 /\ -arg2P2+2*arg1 == 0), cost: 1 4: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P4, arg4'=arg4P4, arg1'=arg1P4, arg3'=arg3P4, (-arg4P4+arg1 >= 0 /\ -arg3 == 0 /\ -arg1P4+2*arg4 == 0 /\ arg4 > 0 /\ 1-arg3P4 == 0 /\ -2*arg4P4+arg1 >= 0 /\ arg2-arg2P4 == 0 /\ -2-2*arg4P4+arg1 < 0), cost: 1 6: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P6, arg4'=arg4P6, arg1'=arg1P6, arg3'=arg3P6, (-arg4 == 0 /\ -arg2P6+2*arg1 == 0 /\ arg2-2*arg1P6 >= 0 /\ 1-arg3 == 0 /\ -2+arg2-2*arg1P6 < 0 /\ arg1 > 0 /\ -arg4P6 == 0 /\ arg2-arg1P6 >= 0 /\ -arg3P6 == 0), cost: 1 8: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P8, arg4'=arg4P8, arg1'=arg1P8, arg3'=arg3P8, (-2-2*arg4P8+arg1 < 0 /\ -arg4 == 0 /\ -2*arg4P8+arg1 >= 0 /\ 1-arg3P8 == 0 /\ -arg3 == 0 /\ arg2-arg2P8 == 0 /\ arg1 > 0 /\ -arg4P8+arg1 > 0 /\ -arg1P8 == 0), cost: 1 10: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P10, arg4'=arg4P10, arg1'=arg1P10, arg3'=arg3P10, (-arg4P10 == 0 /\ -arg4 == 0 /\ -2+arg2-2*arg1P10 < 0 /\ arg2 > 0 /\ arg2-2*arg1P10 >= 0 /\ -arg3P10 == 0 /\ 1-arg3 == 0 /\ -arg1 == 0 /\ arg2-arg1P10 > 0 /\ -arg2P10 == 0), cost: 1 12: __init -> f1_0_main_Load : arg2'=arg2P12, arg4'=arg4P12, arg1'=arg1P12, arg3'=arg3P12, TRUE, cost: 1 Applied preprocessing Original rule: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=arg3P0, (1+arg1P0 > 0 /\ -arg3P0 == 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 1 New rule: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P1, arg4'=arg4P1, arg1'=arg1P1, arg3'=arg3P1, (-arg1P1+arg1 == 0 /\ arg4-arg4P1 == 0 /\ 1-arg3 == 0 /\ arg4 > 0 /\ 1-arg3P1 == 0 /\ -arg2P1+arg2 == 0 /\ arg2-x200 >= 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=1, (-1+arg3 == 0 /\ arg4 > 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P2, arg4'=arg4P2, arg1'=arg1P2, arg3'=arg3P2, (-2-2*arg1P2+arg2 < 0 /\ 1-arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ arg4-arg4P2 == 0 /\ -arg1P2+arg2 >= 0 /\ -arg3P2 == 0 /\ -arg2P2+2*arg1 == 0), cost: 1 New rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P3, arg4'=arg4P3, arg1'=arg1P3, arg3'=arg3P3, (arg1-arg1P3 == 0 /\ -arg3 == 0 /\ -arg3P3 == 0 /\ arg4 > 0 /\ arg2-arg2P3 == 0 /\ -x310+arg1 >= 0 /\ arg4-arg4P3 == 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=0, (arg4 > 0 /\ arg3 == 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P4, arg4'=arg4P4, arg1'=arg1P4, arg3'=arg3P4, (-arg4P4+arg1 >= 0 /\ -arg3 == 0 /\ -arg1P4+2*arg4 == 0 /\ arg4 > 0 /\ 1-arg3P4 == 0 /\ -2*arg4P4+arg1 >= 0 /\ arg2-arg2P4 == 0 /\ -2-2*arg4P4+arg1 < 0), cost: 1 New rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P5, arg4'=arg4P5, arg1'=arg1P5, arg3'=arg3P5, (-arg4 == 0 /\ arg2-arg2P5 == 0 /\ 1-arg3 == 0 /\ arg1 > 0 /\ -arg1P5+arg1 == 0 /\ 1-arg3P5 == 0 /\ -arg4P5 == 0 /\ arg2-x410 >= 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=1, (-1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P6, arg4'=arg4P6, arg1'=arg1P6, arg3'=arg3P6, (-arg4 == 0 /\ -arg2P6+2*arg1 == 0 /\ arg2-2*arg1P6 >= 0 /\ 1-arg3 == 0 /\ -2+arg2-2*arg1P6 < 0 /\ arg1 > 0 /\ -arg4P6 == 0 /\ arg2-arg1P6 >= 0 /\ -arg3P6 == 0), cost: 1 New rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P7, arg4'=arg4P7, arg1'=arg1P7, arg3'=arg3P7, (-arg4 == 0 /\ -arg4P7 == 0 /\ arg2-arg2P7 == 0 /\ -arg3 == 0 /\ arg1-x510 > 0 /\ -arg3P7 == 0 /\ arg1 > 0 /\ arg1-arg1P7 == 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=0, (arg4 == 0 /\ arg1 > 0 /\ arg3 == 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P8, arg4'=arg4P8, arg1'=arg1P8, arg3'=arg3P8, (-2-2*arg4P8+arg1 < 0 /\ -arg4 == 0 /\ -2*arg4P8+arg1 >= 0 /\ 1-arg3P8 == 0 /\ -arg3 == 0 /\ arg2-arg2P8 == 0 /\ arg1 > 0 /\ -arg4P8+arg1 > 0 /\ -arg1P8 == 0), cost: 1 New rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg2'=arg2P9, arg4'=arg4P9, arg1'=arg1P9, arg3'=arg3P9, (-arg4 == 0 /\ arg2 > 0 /\ -arg1P9 == 0 /\ 1-arg3 == 0 /\ arg2-x610 > 0 /\ -arg4P9 == 0 /\ -arg1 == 0 /\ 1-arg3P9 == 0 /\ arg2-arg2P9 == 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=arg2P10, arg4'=arg4P10, arg1'=arg1P10, arg3'=arg3P10, (-arg4P10 == 0 /\ -arg4 == 0 /\ -2+arg2-2*arg1P10 < 0 /\ arg2 > 0 /\ arg2-2*arg1P10 >= 0 /\ -arg3P10 == 0 /\ 1-arg3 == 0 /\ -arg1 == 0 /\ arg2-arg1P10 > 0 /\ -arg2P10 == 0), cost: 1 New rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 1 Applied preprocessing Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=arg2P11, arg4'=arg4P11, arg1'=arg1P11, arg3'=arg3P11, (-arg4 == 0 /\ arg2 > 0 /\ -arg3 == 0 /\ -arg4P11 == 0 /\ -arg1P11 == 0 /\ 1-arg3P11 == 0 /\ -arg1 == 0 /\ arg2-arg2P11 == 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ arg4 == 0 /\ arg1 == 0 /\ arg3 == 0), cost: 1 Simplified rules Start location: __init 13: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 1 14: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=1, (-1+arg3 == 0 /\ arg4 > 0), cost: 1 16: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=0, (arg4 > 0 /\ arg3 == 0), cost: 1 18: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=1, (-1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0), cost: 1 20: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=0, (arg4 == 0 /\ arg1 > 0 /\ arg3 == 0), cost: 1 22: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0), cost: 1 24: f257_0_loop_GT -> f257_0_loop_GT : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ arg4 == 0 /\ arg1 == 0 /\ arg3 == 0), cost: 1 15: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 1 17: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 1 19: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 1 21: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 1 23: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 1 12: __init -> f1_0_main_Load : arg2'=arg2P12, arg4'=arg4P12, arg1'=arg1P12, arg3'=arg3P12, TRUE, cost: 1 Accelerated simple loops Start location: __init 13: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 1 14: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=1, (-1+arg3 == 0 /\ arg4 > 0), cost: 1 16: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=0, (arg4 > 0 /\ arg3 == 0), cost: 1 18: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=1, (-1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0), cost: 1 20: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=0, (arg4 == 0 /\ arg1 > 0 /\ arg3 == 0), cost: 1 22: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0), cost: 1 24: f257_0_loop_GT -> f257_0_loop_GT : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ arg4 == 0 /\ arg1 == 0 /\ arg3 == 0), cost: 1 15: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 1 17: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 1 19: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 1 21: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 1 23: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 1 12: __init -> f1_0_main_Load : arg2'=arg2P12, arg4'=arg4P12, arg1'=arg1P12, arg3'=arg3P12, TRUE, cost: 1 Applied chaining First rule: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 1 Second rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ arg4 == 0 /\ arg1 == 0 /\ arg3 == 0), cost: 1 New rule: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 2 Applied chaining First rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 1 Second rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ arg4 == 0 /\ arg1 == 0 /\ arg3 == 0), cost: 1 New rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 2 Applied deletion Removed the following rules: 24 Chained accelerated rules with incoming rules Start location: __init 13: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 1 25: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 2 14: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=1, (-1+arg3 == 0 /\ arg4 > 0), cost: 1 16: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=0, (arg4 > 0 /\ arg3 == 0), cost: 1 18: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=1, (-1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0), cost: 1 20: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=0, (arg4 == 0 /\ arg1 > 0 /\ arg3 == 0), cost: 1 22: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0), cost: 1 15: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 1 17: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 1 19: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 1 21: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 1 23: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 1 26: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 2 12: __init -> f1_0_main_Load : arg2'=arg2P12, arg4'=arg4P12, arg1'=arg1P12, arg3'=arg3P12, TRUE, cost: 1 Eliminating location f1_0_main_Load by chaining: Applied chaining First rule: __init -> f1_0_main_Load : arg2'=arg2P12, arg4'=arg4P12, arg1'=arg1P12, arg3'=arg3P12, TRUE, cost: 1 Second rule: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 1 New rule: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ arg1P12 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 2 Applied chaining First rule: __init -> f1_0_main_Load : arg2'=arg2P12, arg4'=arg4P12, arg1'=arg1P12, arg3'=arg3P12, TRUE, cost: 1 Second rule: f1_0_main_Load -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg2P0 > 0 /\ -2+arg2 > 0 /\ arg1 > 0), cost: 2 New rule: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg1P12 > 0 /\ arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 3 Applied deletion Removed the following rules: 12 13 25 Eliminating location f257_0_loop_GT\' by chaining: Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=1, (-1+arg3 == 0 /\ arg4 > 0), cost: 1 Second rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (0 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 Applied simplification Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (0 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg3'=0, (arg4 > 0 /\ arg3 == 0), cost: 1 Second rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (0 == 0 /\ -arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 Applied simplification Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (0 == 0 /\ -arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=1, (-1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0), cost: 1 Second rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (0 == 0 /\ arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 2 Applied simplification Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (0 == 0 /\ arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 2 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 2 Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=1, (-1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0), cost: 1 Second rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 2 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (0 == 0 /\ arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 3 Applied simplification Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (0 == 0 /\ arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 3 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 3 Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg3'=0, (arg4 == 0 /\ arg1 > 0 /\ arg3 == 0), cost: 1 Second rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (0 == 0 /\ 2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ arg1 > 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 2 Applied simplification Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (0 == 0 /\ 2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ arg1 > 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 2 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 2 Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT\' : arg4'=0, arg1'=0, arg3'=1, (arg2 > 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0), cost: 1 Second rule: f257_0_loop_GT\' -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 1 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (0 == 0 /\ arg2 > 0 /\ arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 2 Applied simplification Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (0 == 0 /\ arg2 > 0 /\ arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 2 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 2 Applied deletion Removed the following rules: 14 15 16 17 18 19 20 21 22 23 26 Eliminated locations on tree-shaped paths Start location: __init 29: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 30: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 31: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 2 32: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 3 33: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P8, arg1'=0, arg3'=1, (2+2*arg4P8-arg1 > 0 /\ -2*arg4P8+arg1 >= 0 /\ arg4 == 0 /\ -arg4P8+arg1 > 0 /\ arg3 == 0), cost: 2 34: f257_0_loop_GT -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 2 27: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ arg1P12 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 2 28: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg1P12 > 0 /\ arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 3 Applied pruning (of leafs and parallel rules): Start location: __init 29: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 30: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 31: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 2 32: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 3 34: f257_0_loop_GT -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 2 27: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ arg1P12 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 2 28: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg1P12 > 0 /\ arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 3 Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 Second rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=4*arg4, arg4'=arg4P4, arg1'=arg1P2, arg3'=0, (arg4P4 > 0 /\ 2+2*arg1P2-arg2 > 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 4 Applied acceleration Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=4*arg4, arg4'=arg4P4, arg1'=arg1P2, arg3'=0, (arg4P4 > 0 /\ 2+2*arg1P2-arg2 > 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 4 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=4*arg4P4, arg4'=arg4P4, arg1'=arg1P2, arg3'=0, (0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ arg4P4 > 0 /\ arg2-4*arg4 == 0 /\ -arg3 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ -2+n7 >= 0 /\ arg3 >= 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0 /\ -arg4P4+arg4 == 0), cost: 4*n7 Sub-proof via acceration calculus written to file:///tmp/tmpnam_pmHEFa.txt Applied nonterm Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=4*arg4, arg4'=arg4P4, arg1'=arg1P2, arg3'=0, (arg4P4 > 0 /\ 2+2*arg1P2-arg2 > 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 4 New rule: f257_0_loop_GT -> [5] : (0 == 0 /\ arg4P4 > 0 /\ arg2-4*arg4 == 0 /\ -arg3 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ arg1P2-arg1 <= 0 /\ arg3 >= 0 /\ -arg1P2+arg1 <= 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0 /\ -arg4P4+arg4 <= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_OegNen.txt Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 Second rule: f257_0_loop_GT -> [5] : (0 == 0 /\ arg4P4 > 0 /\ arg2-4*arg4 == 0 /\ -arg3 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ arg1P2-arg1 <= 0 /\ arg3 >= 0 /\ -arg1P2+arg1 <= 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0 /\ -arg4P4+arg4 <= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM New rule: f257_0_loop_GT -> [5] : (0 <= 0 /\ 0 >= 0 /\ 0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ arg4P4 > 0 /\ -2*arg1P2+2*arg1 >= 0 /\ -4*arg4+2*arg1 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ -arg1P2+2*arg1 >= 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ 2+2*arg1P2-2*arg1 > 0 /\ -arg4P4+arg4 <= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 Second rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (arg1P2-2*arg4P4 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ 2-arg1P2+2*arg4P4 > 0), cost: 4 Applied acceleration Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (arg1P2-2*arg4P4 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ 2-arg1P2+2*arg4P4 > 0), cost: 4 New rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=4*arg4P4, arg4'=arg4P4, arg1'=2*arg4P4, arg3'=1, (0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ arg4P4 > 0 /\ 2+2*arg1P2-arg2 > 0 /\ 1-arg3 >= 0 /\ -1+arg3 >= 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -3+n8 >= 0 /\ -arg1P2+arg2 >= 0 /\ -2*arg4+arg1 == 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ arg2-2*arg1 == 0 /\ -arg4P4+arg4 == 0), cost: 4*n8 Sub-proof via acceration calculus written to file:///tmp/tmpnam_FfCLoF.txt Applied nonterm Original rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (arg1P2-2*arg4P4 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ 2-arg1P2+2*arg4P4 > 0), cost: 4 New rule: f257_0_loop_GT -> [5] : (0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ 1-arg3 >= 0 /\ -1+arg3 >= 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ -2*arg4+arg1 == 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ arg2-2*arg1 == 0 /\ -arg4P4+arg4 <= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_fnGMPo.txt Applied chaining First rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 Second rule: f257_0_loop_GT -> [5] : (0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ 1-arg3 >= 0 /\ -1+arg3 >= 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ -2*arg4+arg1 == 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ arg2-2*arg1 == 0 /\ -arg4P4+arg4 <= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM New rule: f257_0_loop_GT -> [5] : (0 <= 0 /\ 0 >= 0 /\ 0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ -arg4P4+arg1 >= 0 /\ arg4P4 > 0 /\ arg2-4*arg4 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -2*arg4P4+2*arg4 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: NONTERM Applied simplification Original rule: f257_0_loop_GT -> [5] : (0 == 0 /\ arg4P4 > 0 /\ arg2-4*arg4 == 0 /\ -arg3 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ arg1P2-arg1 <= 0 /\ arg3 >= 0 /\ -arg1P2+arg1 <= 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0 /\ -arg4P4+arg4 <= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM New rule: f257_0_loop_GT -> [5] : (arg2-4*arg4 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ arg3 <= 0 /\ arg3 >= 0 /\ -arg1P2+arg1 <= 0 /\ -2*arg4P4+arg1 >= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM Applied simplification Original rule: f257_0_loop_GT -> [5] : (0 <= 0 /\ 0 >= 0 /\ 0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ arg4P4 > 0 /\ -2*arg1P2+2*arg1 >= 0 /\ -4*arg4+2*arg1 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ -arg1P2+2*arg1 >= 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ 2+2*arg1P2-2*arg1 > 0 /\ -arg4P4+arg4 <= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM New rule: f257_0_loop_GT -> [5] : (-2*arg1P2+2*arg1 >= 0 /\ -4*arg4+2*arg1 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ 2+2*arg1P2-2*arg1 > 0 /\ -arg4P4+arg4 == 0), cost: NONTERM Applied simplification Original rule: f257_0_loop_GT -> [5] : (0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ 2+2*arg1P2-arg2 > 0 /\ 1-arg3 >= 0 /\ -1+arg3 >= 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ -2*arg4+arg1 == 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ arg2-2*arg1 == 0 /\ -arg4P4+arg4 <= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM New rule: f257_0_loop_GT -> [5] : (2+2*arg1P2-arg2 > 0 /\ -1+arg3 <= 0 /\ -1+arg3 >= 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -2*arg4+arg1 == 0 /\ arg2-2*arg1 == 0 /\ -arg4P4+arg4 == 0), cost: NONTERM Applied simplification Original rule: f257_0_loop_GT -> [5] : (0 <= 0 /\ 0 >= 0 /\ 0 == 0 /\ arg1P2-2*arg4P4 >= 0 /\ -arg4P4+arg1 >= 0 /\ arg4P4 > 0 /\ arg2-4*arg4 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -2*arg4P4+2*arg4 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0 /\ 2-arg1P2+2*arg4P4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: NONTERM New rule: f257_0_loop_GT -> [5] : (arg2-4*arg4 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -2*arg4P4+2*arg4 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: NONTERM Accelerated simple loops Start location: __init 29: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg1'=arg1P2, arg3'=0, (2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -arg1P2+arg2 >= 0), cost: 2 30: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 31: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=arg1P6, arg3'=0, (arg2-2*arg1P6 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ arg2-arg1P6 >= 0 /\ 2-arg2+2*arg1P6 > 0), cost: 2 32: f257_0_loop_GT -> f257_0_loop_GT : arg2'=2*arg1, arg4'=0, arg1'=0, arg3'=1, (arg2 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 > 0 /\ 2-arg2 > 0), cost: 3 34: f257_0_loop_GT -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 2 39: f257_0_loop_GT -> [5] : (arg2-4*arg4 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ arg3 <= 0 /\ arg3 >= 0 /\ -arg1P2+arg1 <= 0 /\ -2*arg4P4+arg1 >= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM 40: f257_0_loop_GT -> [5] : (-2*arg1P2+2*arg1 >= 0 /\ -4*arg4+2*arg1 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -1+arg3 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ 2+2*arg1P2-2*arg1 > 0 /\ -arg4P4+arg4 == 0), cost: NONTERM 41: f257_0_loop_GT -> [5] : (2+2*arg1P2-arg2 > 0 /\ -1+arg3 <= 0 /\ -1+arg3 >= 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ -2*arg4+arg1 == 0 /\ arg2-2*arg1 == 0 /\ -arg4P4+arg4 == 0), cost: NONTERM 42: f257_0_loop_GT -> [5] : (arg2-4*arg4 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -2*arg4P4+2*arg4 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: NONTERM 27: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ arg1P12 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 2 28: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg1P12 > 0 /\ arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 3 Applied chaining First rule: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ arg1P12 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 2 Second rule: f257_0_loop_GT -> f257_0_loop_GT : arg4'=arg4P4, arg1'=2*arg4, arg3'=1, (-arg4P4+arg1 >= 0 /\ arg4 > 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: 2 New rule: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P4, arg1'=2*arg4P0, arg3'=1, (arg4P4 >= 0 /\ 1+arg2P0 > 0 /\ arg4P0 > 0), cost: 4 Applied chaining First rule: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg1P12 > 0 /\ arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 3 Second rule: f257_0_loop_GT -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, (arg2-2*arg1P10 >= 0 /\ -1+arg3 == 0 /\ arg4 == 0 /\ arg1 == 0 /\ 2-arg2+2*arg1P10 > 0 /\ arg2-arg1P10 > 0), cost: 2 New rule: __init -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, arg1P10 >= 0, cost: 5 Applied chaining First rule: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ arg1P12 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 2 Second rule: f257_0_loop_GT -> [5] : (arg2-4*arg4 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ arg3 <= 0 /\ arg3 >= 0 /\ -arg1P2+arg1 <= 0 /\ -2*arg4P4+arg1 >= 0 /\ -arg4P4+arg4 == 0), cost: NONTERM New rule: __init -> [5] : (arg4P0 > 0 /\ -2*arg1P2+4*arg4P0 >= 0 /\ -arg1P2+2*arg4P0 <= 0), cost: NONTERM Applied chaining First rule: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ arg1P12 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 2 Second rule: f257_0_loop_GT -> [5] : (arg2-4*arg4 == 0 /\ 2+2*arg1P2-arg2 > 0 /\ -2*arg4P4+2*arg4 == 0 /\ arg4 > 0 /\ -2*arg1P2+arg2 >= 0 /\ arg3 == 0 /\ -2*arg4P4+arg1 >= 0 /\ 2+2*arg4P4-arg1 > 0), cost: NONTERM New rule: __init -> [5] : (arg4P0 > 0 /\ -2*arg1P2+4*arg4P0 >= 0 /\ 2+2*arg1P2-4*arg4P0 > 0), cost: NONTERM Applied deletion Removed the following rules: 29 30 31 32 34 39 40 41 42 Chained accelerated rules with incoming rules Start location: __init 27: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P0, arg1'=arg1P0, arg3'=0, (1+arg1P0 > 0 /\ arg1P12 > 0 /\ 1+arg4P0 > 0 /\ 1+arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 2 28: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=0, arg1'=0, arg3'=1, (arg1P12 > 0 /\ arg2P0 > 0 /\ -2+arg2P12 > 0), cost: 3 43: __init -> f257_0_loop_GT : arg2'=arg2P0, arg4'=arg4P4, arg1'=2*arg4P0, arg3'=1, (arg4P4 >= 0 /\ 1+arg2P0 > 0 /\ arg4P0 > 0), cost: 4 44: __init -> f257_0_loop_GT : arg2'=0, arg4'=0, arg1'=arg1P10, arg3'=0, arg1P10 >= 0, cost: 5 45: __init -> [5] : (arg4P0 > 0 /\ -2*arg1P2+4*arg4P0 >= 0 /\ -arg1P2+2*arg4P0 <= 0), cost: NONTERM 46: __init -> [5] : (arg4P0 > 0 /\ -2*arg1P2+4*arg4P0 >= 0 /\ 2+2*arg1P2-4*arg4P0 > 0), cost: NONTERM Removed unreachable locations and irrelevant leafs Start location: __init 45: __init -> [5] : (arg4P0 > 0 /\ -2*arg1P2+4*arg4P0 >= 0 /\ -arg1P2+2*arg4P0 <= 0), cost: NONTERM 46: __init -> [5] : (arg4P0 > 0 /\ -2*arg1P2+4*arg4P0 >= 0 /\ 2+2*arg1P2-4*arg4P0 > 0), cost: NONTERM Computing asymptotic complexity Proved nontermination of rule 45 via SMT. Proved the following lower bound Complexity: Nonterm Cpx degree: Nonterm Solved cost: NONTERM Rule cost: NONTERM Rule guard: (arg4P0 > 0 /\ -2*arg1P2+4*arg4P0 >= 0 /\ -arg1P2+2*arg4P0 <= 0)