WORST_CASE(Omega(1),?) ### Pre-processing the ITS problem ### Initial linear ITS problem Start location: l6 0: l0 -> l1 : oldX0^0'=oldX0^post_1, oldX1^0'=oldX1^post_1, oldX2^0'=oldX2^post_1, oldX3^0'=oldX3^post_1, oldX4^0'=oldX4^post_1, oldX5^0'=oldX5^post_1, oldX6^0'=oldX6^post_1, oldX7^0'=oldX7^post_1, x0^0'=x0^post_1, x1^0'=x1^post_1, x2^0'=x2^post_1, x3^0'=x3^post_1, [ oldX0^post_1==x0^0 && oldX1^post_1==x1^0 && oldX2^post_1==x2^0 && oldX3^post_1==x3^0 && oldX4^post_1==oldX4^post_1 && oldX5^post_1==oldX5^post_1 && oldX6^post_1==oldX6^post_1 && oldX7^post_1==oldX7^post_1 && x0^post_1==oldX4^post_1 && x1^post_1==oldX5^post_1 && x2^post_1==oldX6^post_1 && x3^post_1==oldX7^post_1 ], cost: 1 1: l2 -> l1 : oldX0^0'=oldX0^post_2, oldX1^0'=oldX1^post_2, oldX2^0'=oldX2^post_2, oldX3^0'=oldX3^post_2, oldX4^0'=oldX4^post_2, oldX5^0'=oldX5^post_2, oldX6^0'=oldX6^post_2, oldX7^0'=oldX7^post_2, x0^0'=x0^post_2, x1^0'=x1^post_2, x2^0'=x2^post_2, x3^0'=x3^post_2, [ oldX0^post_2==x0^0 && oldX1^post_2==x1^0 && oldX2^post_2==x2^0 && oldX3^post_2==x3^0 && oldX4^post_2==oldX4^post_2 && oldX5^post_2==oldX5^post_2 && oldX6^post_2==oldX6^post_2 && oldX7^post_2==oldX7^post_2 && x0^post_2==oldX4^post_2 && x1^post_2==oldX5^post_2 && x2^post_2==oldX6^post_2 && x3^post_2==oldX7^post_2 ], cost: 1 2: l2 -> l3 : oldX0^0'=oldX0^post_3, oldX1^0'=oldX1^post_3, oldX2^0'=oldX2^post_3, oldX3^0'=oldX3^post_3, oldX4^0'=oldX4^post_3, oldX5^0'=oldX5^post_3, oldX6^0'=oldX6^post_3, oldX7^0'=oldX7^post_3, x0^0'=x0^post_3, x1^0'=x1^post_3, x2^0'=x2^post_3, x3^0'=x3^post_3, [ oldX0^post_3==x0^0 && oldX1^post_3==x1^0 && oldX2^post_3==x2^0 && oldX3^post_3==x3^0 && x0^post_3==-1+oldX0^post_3 && x1^post_3==oldX3^post_3 && x2^post_3==oldX2^post_3 && x3^post_3==oldX1^post_3 && oldX4^0==oldX4^post_3 && oldX5^0==oldX5^post_3 && oldX6^0==oldX6^post_3 && oldX7^0==oldX7^post_3 ], cost: 1 3: l2 -> l3 : oldX0^0'=oldX0^post_4, oldX1^0'=oldX1^post_4, oldX2^0'=oldX2^post_4, oldX3^0'=oldX3^post_4, oldX4^0'=oldX4^post_4, oldX5^0'=oldX5^post_4, oldX6^0'=oldX6^post_4, oldX7^0'=oldX7^post_4, x0^0'=x0^post_4, x1^0'=x1^post_4, x2^0'=x2^post_4, x3^0'=x3^post_4, [ oldX0^post_4==x0^0 && oldX1^post_4==x1^0 && oldX2^post_4==x2^0 && oldX3^post_4==x3^0 && x0^post_4==-1+oldX0^post_4 && x1^post_4==oldX1^post_4 && x2^post_4==oldX3^post_4 && x3^post_4==oldX2^post_4 && oldX4^0==oldX4^post_4 && oldX5^0==oldX5^post_4 && oldX6^0==oldX6^post_4 && oldX7^0==oldX7^post_4 ], cost: 1 8: l3 -> l4 : oldX0^0'=oldX0^post_9, oldX1^0'=oldX1^post_9, oldX2^0'=oldX2^post_9, oldX3^0'=oldX3^post_9, oldX4^0'=oldX4^post_9, oldX5^0'=oldX5^post_9, oldX6^0'=oldX6^post_9, oldX7^0'=oldX7^post_9, x0^0'=x0^post_9, x1^0'=x1^post_9, x2^0'=x2^post_9, x3^0'=x3^post_9, [ oldX0^post_9==x0^0 && oldX1^post_9==x1^0 && oldX2^post_9==x2^0 && oldX3^post_9==x3^0 && x0^post_9==oldX0^post_9 && x1^post_9==oldX1^post_9 && x2^post_9==oldX2^post_9 && x3^post_9==oldX3^post_9 && oldX4^0==oldX4^post_9 && oldX5^0==oldX5^post_9 && oldX6^0==oldX6^post_9 && oldX7^0==oldX7^post_9 ], cost: 1 4: l4 -> l0 : oldX0^0'=oldX0^post_5, oldX1^0'=oldX1^post_5, oldX2^0'=oldX2^post_5, oldX3^0'=oldX3^post_5, oldX4^0'=oldX4^post_5, oldX5^0'=oldX5^post_5, oldX6^0'=oldX6^post_5, oldX7^0'=oldX7^post_5, x0^0'=x0^post_5, x1^0'=x1^post_5, x2^0'=x2^post_5, x3^0'=x3^post_5, [ oldX0^post_5==x0^0 && oldX1^post_5==x1^0 && oldX2^post_5==x2^0 && oldX3^post_5==x3^0 && oldX0^post_5<=1 && 1<=oldX0^post_5 && x0^post_5==oldX0^post_5 && x1^post_5==oldX1^post_5 && x2^post_5==oldX2^post_5 && x3^post_5==oldX3^post_5 && oldX4^0==oldX4^post_5 && oldX5^0==oldX5^post_5 && oldX6^0==oldX6^post_5 && oldX7^0==oldX7^post_5 ], cost: 1 5: l4 -> l0 : oldX0^0'=oldX0^post_6, oldX1^0'=oldX1^post_6, oldX2^0'=oldX2^post_6, oldX3^0'=oldX3^post_6, oldX4^0'=oldX4^post_6, oldX5^0'=oldX5^post_6, oldX6^0'=oldX6^post_6, oldX7^0'=oldX7^post_6, x0^0'=x0^post_6, x1^0'=x1^post_6, x2^0'=x2^post_6, x3^0'=x3^post_6, [ oldX0^post_6==x0^0 && oldX1^post_6==x1^0 && oldX2^post_6==x2^0 && oldX3^post_6==x3^0 && oldX0^post_6<=0 && x0^post_6==oldX0^post_6 && x1^post_6==oldX1^post_6 && x2^post_6==oldX2^post_6 && x3^post_6==oldX3^post_6 && oldX4^0==oldX4^post_6 && oldX5^0==oldX5^post_6 && oldX6^0==oldX6^post_6 && oldX7^0==oldX7^post_6 ], cost: 1 6: l4 -> l2 : oldX0^0'=oldX0^post_7, oldX1^0'=oldX1^post_7, oldX2^0'=oldX2^post_7, oldX3^0'=oldX3^post_7, oldX4^0'=oldX4^post_7, oldX5^0'=oldX5^post_7, oldX6^0'=oldX6^post_7, oldX7^0'=oldX7^post_7, x0^0'=x0^post_7, x1^0'=x1^post_7, x2^0'=x2^post_7, x3^0'=x3^post_7, [ oldX0^post_7==x0^0 && oldX1^post_7==x1^0 && oldX2^post_7==x2^0 && oldX3^post_7==x3^0 && 1<=oldX0^post_7 && 2<=oldX0^post_7 && x0^post_7==oldX0^post_7 && x1^post_7==oldX1^post_7 && x2^post_7==oldX2^post_7 && x3^post_7==oldX3^post_7 && oldX4^0==oldX4^post_7 && oldX5^0==oldX5^post_7 && oldX6^0==oldX6^post_7 && oldX7^0==oldX7^post_7 ], cost: 1 7: l4 -> l2 : oldX0^0'=oldX0^post_8, oldX1^0'=oldX1^post_8, oldX2^0'=oldX2^post_8, oldX3^0'=oldX3^post_8, oldX4^0'=oldX4^post_8, oldX5^0'=oldX5^post_8, oldX6^0'=oldX6^post_8, oldX7^0'=oldX7^post_8, x0^0'=x0^post_8, x1^0'=x1^post_8, x2^0'=x2^post_8, x3^0'=x3^post_8, [ oldX0^post_8==x0^0 && oldX1^post_8==x1^0 && oldX2^post_8==x2^0 && oldX3^post_8==x3^0 && 1<=oldX0^post_8 && 1+oldX0^post_8<=1 && x0^post_8==oldX0^post_8 && x1^post_8==oldX1^post_8 && x2^post_8==oldX2^post_8 && x3^post_8==oldX3^post_8 && oldX4^0==oldX4^post_8 && oldX5^0==oldX5^post_8 && oldX6^0==oldX6^post_8 && oldX7^0==oldX7^post_8 ], cost: 1 9: l5 -> l1 : oldX0^0'=oldX0^post_10, oldX1^0'=oldX1^post_10, oldX2^0'=oldX2^post_10, oldX3^0'=oldX3^post_10, oldX4^0'=oldX4^post_10, oldX5^0'=oldX5^post_10, oldX6^0'=oldX6^post_10, oldX7^0'=oldX7^post_10, x0^0'=x0^post_10, x1^0'=x1^post_10, x2^0'=x2^post_10, x3^0'=x3^post_10, [ oldX0^0==oldX0^post_10 && oldX1^0==oldX1^post_10 && oldX2^0==oldX2^post_10 && oldX3^0==oldX3^post_10 && oldX4^0==oldX4^post_10 && oldX5^0==oldX5^post_10 && oldX6^0==oldX6^post_10 && oldX7^0==oldX7^post_10 && x0^0==x0^post_10 && x1^0==x1^post_10 && x2^0==x2^post_10 && x3^0==x3^post_10 ], cost: 1 10: l5 -> l0 : oldX0^0'=oldX0^post_11, oldX1^0'=oldX1^post_11, oldX2^0'=oldX2^post_11, oldX3^0'=oldX3^post_11, oldX4^0'=oldX4^post_11, oldX5^0'=oldX5^post_11, oldX6^0'=oldX6^post_11, oldX7^0'=oldX7^post_11, x0^0'=x0^post_11, x1^0'=x1^post_11, x2^0'=x2^post_11, x3^0'=x3^post_11, [ oldX0^0==oldX0^post_11 && oldX1^0==oldX1^post_11 && oldX2^0==oldX2^post_11 && oldX3^0==oldX3^post_11 && oldX4^0==oldX4^post_11 && oldX5^0==oldX5^post_11 && oldX6^0==oldX6^post_11 && oldX7^0==oldX7^post_11 && x0^0==x0^post_11 && x1^0==x1^post_11 && x2^0==x2^post_11 && x3^0==x3^post_11 ], cost: 1 11: l5 -> l2 : oldX0^0'=oldX0^post_12, oldX1^0'=oldX1^post_12, oldX2^0'=oldX2^post_12, oldX3^0'=oldX3^post_12, oldX4^0'=oldX4^post_12, oldX5^0'=oldX5^post_12, oldX6^0'=oldX6^post_12, oldX7^0'=oldX7^post_12, x0^0'=x0^post_12, x1^0'=x1^post_12, x2^0'=x2^post_12, x3^0'=x3^post_12, [ oldX0^0==oldX0^post_12 && oldX1^0==oldX1^post_12 && oldX2^0==oldX2^post_12 && oldX3^0==oldX3^post_12 && oldX4^0==oldX4^post_12 && oldX5^0==oldX5^post_12 && oldX6^0==oldX6^post_12 && oldX7^0==oldX7^post_12 && x0^0==x0^post_12 && x1^0==x1^post_12 && x2^0==x2^post_12 && x3^0==x3^post_12 ], cost: 1 12: l5 -> l4 : oldX0^0'=oldX0^post_13, oldX1^0'=oldX1^post_13, oldX2^0'=oldX2^post_13, oldX3^0'=oldX3^post_13, oldX4^0'=oldX4^post_13, oldX5^0'=oldX5^post_13, oldX6^0'=oldX6^post_13, oldX7^0'=oldX7^post_13, x0^0'=x0^post_13, x1^0'=x1^post_13, x2^0'=x2^post_13, x3^0'=x3^post_13, [ oldX0^0==oldX0^post_13 && oldX1^0==oldX1^post_13 && oldX2^0==oldX2^post_13 && oldX3^0==oldX3^post_13 && oldX4^0==oldX4^post_13 && oldX5^0==oldX5^post_13 && oldX6^0==oldX6^post_13 && oldX7^0==oldX7^post_13 && x0^0==x0^post_13 && x1^0==x1^post_13 && x2^0==x2^post_13 && x3^0==x3^post_13 ], cost: 1 13: l5 -> l3 : oldX0^0'=oldX0^post_14, oldX1^0'=oldX1^post_14, oldX2^0'=oldX2^post_14, oldX3^0'=oldX3^post_14, oldX4^0'=oldX4^post_14, oldX5^0'=oldX5^post_14, oldX6^0'=oldX6^post_14, oldX7^0'=oldX7^post_14, x0^0'=x0^post_14, x1^0'=x1^post_14, x2^0'=x2^post_14, x3^0'=x3^post_14, [ oldX0^0==oldX0^post_14 && oldX1^0==oldX1^post_14 && oldX2^0==oldX2^post_14 && oldX3^0==oldX3^post_14 && oldX4^0==oldX4^post_14 && oldX5^0==oldX5^post_14 && oldX6^0==oldX6^post_14 && oldX7^0==oldX7^post_14 && x0^0==x0^post_14 && x1^0==x1^post_14 && x2^0==x2^post_14 && x3^0==x3^post_14 ], cost: 1 14: l6 -> l5 : oldX0^0'=oldX0^post_15, oldX1^0'=oldX1^post_15, oldX2^0'=oldX2^post_15, oldX3^0'=oldX3^post_15, oldX4^0'=oldX4^post_15, oldX5^0'=oldX5^post_15, oldX6^0'=oldX6^post_15, oldX7^0'=oldX7^post_15, x0^0'=x0^post_15, x1^0'=x1^post_15, x2^0'=x2^post_15, x3^0'=x3^post_15, [ oldX0^0==oldX0^post_15 && oldX1^0==oldX1^post_15 && oldX2^0==oldX2^post_15 && oldX3^0==oldX3^post_15 && oldX4^0==oldX4^post_15 && oldX5^0==oldX5^post_15 && oldX6^0==oldX6^post_15 && oldX7^0==oldX7^post_15 && x0^0==x0^post_15 && x1^0==x1^post_15 && x2^0==x2^post_15 && x3^0==x3^post_15 ], cost: 1 Checking for constant complexity: The following rule is satisfiable with cost >= 1, yielding constant complexity: 14: l6 -> l5 : oldX0^0'=oldX0^post_15, oldX1^0'=oldX1^post_15, oldX2^0'=oldX2^post_15, oldX3^0'=oldX3^post_15, oldX4^0'=oldX4^post_15, oldX5^0'=oldX5^post_15, oldX6^0'=oldX6^post_15, oldX7^0'=oldX7^post_15, x0^0'=x0^post_15, x1^0'=x1^post_15, x2^0'=x2^post_15, x3^0'=x3^post_15, [ oldX0^0==oldX0^post_15 && oldX1^0==oldX1^post_15 && oldX2^0==oldX2^post_15 && oldX3^0==oldX3^post_15 && oldX4^0==oldX4^post_15 && oldX5^0==oldX5^post_15 && oldX6^0==oldX6^post_15 && oldX7^0==oldX7^post_15 && x0^0==x0^post_15 && x1^0==x1^post_15 && x2^0==x2^post_15 && x3^0==x3^post_15 ], cost: 1 Removed unreachable and leaf rules: Start location: l6 2: l2 -> l3 : oldX0^0'=oldX0^post_3, oldX1^0'=oldX1^post_3, oldX2^0'=oldX2^post_3, oldX3^0'=oldX3^post_3, oldX4^0'=oldX4^post_3, oldX5^0'=oldX5^post_3, oldX6^0'=oldX6^post_3, oldX7^0'=oldX7^post_3, x0^0'=x0^post_3, x1^0'=x1^post_3, x2^0'=x2^post_3, x3^0'=x3^post_3, [ oldX0^post_3==x0^0 && oldX1^post_3==x1^0 && oldX2^post_3==x2^0 && oldX3^post_3==x3^0 && x0^post_3==-1+oldX0^post_3 && x1^post_3==oldX3^post_3 && x2^post_3==oldX2^post_3 && x3^post_3==oldX1^post_3 && oldX4^0==oldX4^post_3 && oldX5^0==oldX5^post_3 && oldX6^0==oldX6^post_3 && oldX7^0==oldX7^post_3 ], cost: 1 3: l2 -> l3 : oldX0^0'=oldX0^post_4, oldX1^0'=oldX1^post_4, oldX2^0'=oldX2^post_4, oldX3^0'=oldX3^post_4, oldX4^0'=oldX4^post_4, oldX5^0'=oldX5^post_4, oldX6^0'=oldX6^post_4, oldX7^0'=oldX7^post_4, x0^0'=x0^post_4, x1^0'=x1^post_4, x2^0'=x2^post_4, x3^0'=x3^post_4, [ oldX0^post_4==x0^0 && oldX1^post_4==x1^0 && oldX2^post_4==x2^0 && oldX3^post_4==x3^0 && x0^post_4==-1+oldX0^post_4 && x1^post_4==oldX1^post_4 && x2^post_4==oldX3^post_4 && x3^post_4==oldX2^post_4 && oldX4^0==oldX4^post_4 && oldX5^0==oldX5^post_4 && oldX6^0==oldX6^post_4 && oldX7^0==oldX7^post_4 ], cost: 1 8: l3 -> l4 : oldX0^0'=oldX0^post_9, oldX1^0'=oldX1^post_9, oldX2^0'=oldX2^post_9, oldX3^0'=oldX3^post_9, oldX4^0'=oldX4^post_9, oldX5^0'=oldX5^post_9, oldX6^0'=oldX6^post_9, oldX7^0'=oldX7^post_9, x0^0'=x0^post_9, x1^0'=x1^post_9, x2^0'=x2^post_9, x3^0'=x3^post_9, [ oldX0^post_9==x0^0 && oldX1^post_9==x1^0 && oldX2^post_9==x2^0 && oldX3^post_9==x3^0 && x0^post_9==oldX0^post_9 && x1^post_9==oldX1^post_9 && x2^post_9==oldX2^post_9 && x3^post_9==oldX3^post_9 && oldX4^0==oldX4^post_9 && oldX5^0==oldX5^post_9 && oldX6^0==oldX6^post_9 && oldX7^0==oldX7^post_9 ], cost: 1 6: l4 -> l2 : oldX0^0'=oldX0^post_7, oldX1^0'=oldX1^post_7, oldX2^0'=oldX2^post_7, oldX3^0'=oldX3^post_7, oldX4^0'=oldX4^post_7, oldX5^0'=oldX5^post_7, oldX6^0'=oldX6^post_7, oldX7^0'=oldX7^post_7, x0^0'=x0^post_7, x1^0'=x1^post_7, x2^0'=x2^post_7, x3^0'=x3^post_7, [ oldX0^post_7==x0^0 && oldX1^post_7==x1^0 && oldX2^post_7==x2^0 && oldX3^post_7==x3^0 && 1<=oldX0^post_7 && 2<=oldX0^post_7 && x0^post_7==oldX0^post_7 && x1^post_7==oldX1^post_7 && x2^post_7==oldX2^post_7 && x3^post_7==oldX3^post_7 && oldX4^0==oldX4^post_7 && oldX5^0==oldX5^post_7 && oldX6^0==oldX6^post_7 && oldX7^0==oldX7^post_7 ], cost: 1 7: l4 -> l2 : oldX0^0'=oldX0^post_8, oldX1^0'=oldX1^post_8, oldX2^0'=oldX2^post_8, oldX3^0'=oldX3^post_8, oldX4^0'=oldX4^post_8, oldX5^0'=oldX5^post_8, oldX6^0'=oldX6^post_8, oldX7^0'=oldX7^post_8, x0^0'=x0^post_8, x1^0'=x1^post_8, x2^0'=x2^post_8, x3^0'=x3^post_8, [ oldX0^post_8==x0^0 && oldX1^post_8==x1^0 && oldX2^post_8==x2^0 && oldX3^post_8==x3^0 && 1<=oldX0^post_8 && 1+oldX0^post_8<=1 && x0^post_8==oldX0^post_8 && x1^post_8==oldX1^post_8 && x2^post_8==oldX2^post_8 && x3^post_8==oldX3^post_8 && oldX4^0==oldX4^post_8 && oldX5^0==oldX5^post_8 && oldX6^0==oldX6^post_8 && oldX7^0==oldX7^post_8 ], cost: 1 11: l5 -> l2 : oldX0^0'=oldX0^post_12, oldX1^0'=oldX1^post_12, oldX2^0'=oldX2^post_12, oldX3^0'=oldX3^post_12, oldX4^0'=oldX4^post_12, oldX5^0'=oldX5^post_12, oldX6^0'=oldX6^post_12, oldX7^0'=oldX7^post_12, x0^0'=x0^post_12, x1^0'=x1^post_12, x2^0'=x2^post_12, x3^0'=x3^post_12, [ oldX0^0==oldX0^post_12 && oldX1^0==oldX1^post_12 && oldX2^0==oldX2^post_12 && oldX3^0==oldX3^post_12 && oldX4^0==oldX4^post_12 && oldX5^0==oldX5^post_12 && oldX6^0==oldX6^post_12 && oldX7^0==oldX7^post_12 && x0^0==x0^post_12 && x1^0==x1^post_12 && x2^0==x2^post_12 && x3^0==x3^post_12 ], cost: 1 12: l5 -> l4 : oldX0^0'=oldX0^post_13, oldX1^0'=oldX1^post_13, oldX2^0'=oldX2^post_13, oldX3^0'=oldX3^post_13, oldX4^0'=oldX4^post_13, oldX5^0'=oldX5^post_13, oldX6^0'=oldX6^post_13, oldX7^0'=oldX7^post_13, x0^0'=x0^post_13, x1^0'=x1^post_13, x2^0'=x2^post_13, x3^0'=x3^post_13, [ oldX0^0==oldX0^post_13 && oldX1^0==oldX1^post_13 && oldX2^0==oldX2^post_13 && oldX3^0==oldX3^post_13 && oldX4^0==oldX4^post_13 && oldX5^0==oldX5^post_13 && oldX6^0==oldX6^post_13 && oldX7^0==oldX7^post_13 && x0^0==x0^post_13 && x1^0==x1^post_13 && x2^0==x2^post_13 && x3^0==x3^post_13 ], cost: 1 13: l5 -> l3 : oldX0^0'=oldX0^post_14, oldX1^0'=oldX1^post_14, oldX2^0'=oldX2^post_14, oldX3^0'=oldX3^post_14, oldX4^0'=oldX4^post_14, oldX5^0'=oldX5^post_14, oldX6^0'=oldX6^post_14, oldX7^0'=oldX7^post_14, x0^0'=x0^post_14, x1^0'=x1^post_14, x2^0'=x2^post_14, x3^0'=x3^post_14, [ oldX0^0==oldX0^post_14 && oldX1^0==oldX1^post_14 && oldX2^0==oldX2^post_14 && oldX3^0==oldX3^post_14 && oldX4^0==oldX4^post_14 && oldX5^0==oldX5^post_14 && oldX6^0==oldX6^post_14 && oldX7^0==oldX7^post_14 && x0^0==x0^post_14 && x1^0==x1^post_14 && x2^0==x2^post_14 && x3^0==x3^post_14 ], cost: 1 14: l6 -> l5 : oldX0^0'=oldX0^post_15, oldX1^0'=oldX1^post_15, oldX2^0'=oldX2^post_15, oldX3^0'=oldX3^post_15, oldX4^0'=oldX4^post_15, oldX5^0'=oldX5^post_15, oldX6^0'=oldX6^post_15, oldX7^0'=oldX7^post_15, x0^0'=x0^post_15, x1^0'=x1^post_15, x2^0'=x2^post_15, x3^0'=x3^post_15, [ oldX0^0==oldX0^post_15 && oldX1^0==oldX1^post_15 && oldX2^0==oldX2^post_15 && oldX3^0==oldX3^post_15 && oldX4^0==oldX4^post_15 && oldX5^0==oldX5^post_15 && oldX6^0==oldX6^post_15 && oldX7^0==oldX7^post_15 && x0^0==x0^post_15 && x1^0==x1^post_15 && x2^0==x2^post_15 && x3^0==x3^post_15 ], cost: 1 Removed rules with unsatisfiable guard: Start location: l6 2: l2 -> l3 : oldX0^0'=oldX0^post_3, oldX1^0'=oldX1^post_3, oldX2^0'=oldX2^post_3, oldX3^0'=oldX3^post_3, oldX4^0'=oldX4^post_3, oldX5^0'=oldX5^post_3, oldX6^0'=oldX6^post_3, oldX7^0'=oldX7^post_3, x0^0'=x0^post_3, x1^0'=x1^post_3, x2^0'=x2^post_3, x3^0'=x3^post_3, [ oldX0^post_3==x0^0 && oldX1^post_3==x1^0 && oldX2^post_3==x2^0 && oldX3^post_3==x3^0 && x0^post_3==-1+oldX0^post_3 && x1^post_3==oldX3^post_3 && x2^post_3==oldX2^post_3 && x3^post_3==oldX1^post_3 && oldX4^0==oldX4^post_3 && oldX5^0==oldX5^post_3 && oldX6^0==oldX6^post_3 && oldX7^0==oldX7^post_3 ], cost: 1 3: l2 -> l3 : oldX0^0'=oldX0^post_4, oldX1^0'=oldX1^post_4, oldX2^0'=oldX2^post_4, oldX3^0'=oldX3^post_4, oldX4^0'=oldX4^post_4, oldX5^0'=oldX5^post_4, oldX6^0'=oldX6^post_4, oldX7^0'=oldX7^post_4, x0^0'=x0^post_4, x1^0'=x1^post_4, x2^0'=x2^post_4, x3^0'=x3^post_4, [ oldX0^post_4==x0^0 && oldX1^post_4==x1^0 && oldX2^post_4==x2^0 && oldX3^post_4==x3^0 && x0^post_4==-1+oldX0^post_4 && x1^post_4==oldX1^post_4 && x2^post_4==oldX3^post_4 && x3^post_4==oldX2^post_4 && oldX4^0==oldX4^post_4 && oldX5^0==oldX5^post_4 && oldX6^0==oldX6^post_4 && oldX7^0==oldX7^post_4 ], cost: 1 8: l3 -> l4 : oldX0^0'=oldX0^post_9, oldX1^0'=oldX1^post_9, oldX2^0'=oldX2^post_9, oldX3^0'=oldX3^post_9, oldX4^0'=oldX4^post_9, oldX5^0'=oldX5^post_9, oldX6^0'=oldX6^post_9, oldX7^0'=oldX7^post_9, x0^0'=x0^post_9, x1^0'=x1^post_9, x2^0'=x2^post_9, x3^0'=x3^post_9, [ oldX0^post_9==x0^0 && oldX1^post_9==x1^0 && oldX2^post_9==x2^0 && oldX3^post_9==x3^0 && x0^post_9==oldX0^post_9 && x1^post_9==oldX1^post_9 && x2^post_9==oldX2^post_9 && x3^post_9==oldX3^post_9 && oldX4^0==oldX4^post_9 && oldX5^0==oldX5^post_9 && oldX6^0==oldX6^post_9 && oldX7^0==oldX7^post_9 ], cost: 1 6: l4 -> l2 : oldX0^0'=oldX0^post_7, oldX1^0'=oldX1^post_7, oldX2^0'=oldX2^post_7, oldX3^0'=oldX3^post_7, oldX4^0'=oldX4^post_7, oldX5^0'=oldX5^post_7, oldX6^0'=oldX6^post_7, oldX7^0'=oldX7^post_7, x0^0'=x0^post_7, x1^0'=x1^post_7, x2^0'=x2^post_7, x3^0'=x3^post_7, [ oldX0^post_7==x0^0 && oldX1^post_7==x1^0 && oldX2^post_7==x2^0 && oldX3^post_7==x3^0 && 1<=oldX0^post_7 && 2<=oldX0^post_7 && x0^post_7==oldX0^post_7 && x1^post_7==oldX1^post_7 && x2^post_7==oldX2^post_7 && x3^post_7==oldX3^post_7 && oldX4^0==oldX4^post_7 && oldX5^0==oldX5^post_7 && oldX6^0==oldX6^post_7 && oldX7^0==oldX7^post_7 ], cost: 1 11: l5 -> l2 : oldX0^0'=oldX0^post_12, oldX1^0'=oldX1^post_12, oldX2^0'=oldX2^post_12, oldX3^0'=oldX3^post_12, oldX4^0'=oldX4^post_12, oldX5^0'=oldX5^post_12, oldX6^0'=oldX6^post_12, oldX7^0'=oldX7^post_12, x0^0'=x0^post_12, x1^0'=x1^post_12, x2^0'=x2^post_12, x3^0'=x3^post_12, [ oldX0^0==oldX0^post_12 && oldX1^0==oldX1^post_12 && oldX2^0==oldX2^post_12 && oldX3^0==oldX3^post_12 && oldX4^0==oldX4^post_12 && oldX5^0==oldX5^post_12 && oldX6^0==oldX6^post_12 && oldX7^0==oldX7^post_12 && x0^0==x0^post_12 && x1^0==x1^post_12 && x2^0==x2^post_12 && x3^0==x3^post_12 ], cost: 1 12: l5 -> l4 : oldX0^0'=oldX0^post_13, oldX1^0'=oldX1^post_13, oldX2^0'=oldX2^post_13, oldX3^0'=oldX3^post_13, oldX4^0'=oldX4^post_13, oldX5^0'=oldX5^post_13, oldX6^0'=oldX6^post_13, oldX7^0'=oldX7^post_13, x0^0'=x0^post_13, x1^0'=x1^post_13, x2^0'=x2^post_13, x3^0'=x3^post_13, [ oldX0^0==oldX0^post_13 && oldX1^0==oldX1^post_13 && oldX2^0==oldX2^post_13 && oldX3^0==oldX3^post_13 && oldX4^0==oldX4^post_13 && oldX5^0==oldX5^post_13 && oldX6^0==oldX6^post_13 && oldX7^0==oldX7^post_13 && x0^0==x0^post_13 && x1^0==x1^post_13 && x2^0==x2^post_13 && x3^0==x3^post_13 ], cost: 1 13: l5 -> l3 : oldX0^0'=oldX0^post_14, oldX1^0'=oldX1^post_14, oldX2^0'=oldX2^post_14, oldX3^0'=oldX3^post_14, oldX4^0'=oldX4^post_14, oldX5^0'=oldX5^post_14, oldX6^0'=oldX6^post_14, oldX7^0'=oldX7^post_14, x0^0'=x0^post_14, x1^0'=x1^post_14, x2^0'=x2^post_14, x3^0'=x3^post_14, [ oldX0^0==oldX0^post_14 && oldX1^0==oldX1^post_14 && oldX2^0==oldX2^post_14 && oldX3^0==oldX3^post_14 && oldX4^0==oldX4^post_14 && oldX5^0==oldX5^post_14 && oldX6^0==oldX6^post_14 && oldX7^0==oldX7^post_14 && x0^0==x0^post_14 && x1^0==x1^post_14 && x2^0==x2^post_14 && x3^0==x3^post_14 ], cost: 1 14: l6 -> l5 : oldX0^0'=oldX0^post_15, oldX1^0'=oldX1^post_15, oldX2^0'=oldX2^post_15, oldX3^0'=oldX3^post_15, oldX4^0'=oldX4^post_15, oldX5^0'=oldX5^post_15, oldX6^0'=oldX6^post_15, oldX7^0'=oldX7^post_15, x0^0'=x0^post_15, x1^0'=x1^post_15, x2^0'=x2^post_15, x3^0'=x3^post_15, [ oldX0^0==oldX0^post_15 && oldX1^0==oldX1^post_15 && oldX2^0==oldX2^post_15 && oldX3^0==oldX3^post_15 && oldX4^0==oldX4^post_15 && oldX5^0==oldX5^post_15 && oldX6^0==oldX6^post_15 && oldX7^0==oldX7^post_15 && x0^0==x0^post_15 && x1^0==x1^post_15 && x2^0==x2^post_15 && x3^0==x3^post_15 ], cost: 1 Simplified all rules, resulting in: Start location: l6 2: l2 -> l3 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [], cost: 1 3: l2 -> l3 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [], cost: 1 8: l3 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, [], cost: 1 6: l4 -> l2 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, [ 2<=x0^0 ], cost: 1 11: l5 -> l2 : [], cost: 1 12: l5 -> l4 : [], cost: 1 13: l5 -> l3 : [], cost: 1 14: l6 -> l5 : [], cost: 1 ### Simplification by acceleration and chaining ### Eliminated locations (on tree-shaped paths): Start location: l6 2: l2 -> l3 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [], cost: 1 3: l2 -> l3 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [], cost: 1 8: l3 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, [], cost: 1 6: l4 -> l2 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, [ 2<=x0^0 ], cost: 1 15: l6 -> l2 : [], cost: 2 16: l6 -> l4 : [], cost: 2 17: l6 -> l3 : [], cost: 2 Eliminated location l2 (as a last resort): Start location: l6 8: l3 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, [], cost: 1 18: l4 -> l3 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [ 2<=x0^0 ], cost: 2 19: l4 -> l3 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ 2<=x0^0 ], cost: 2 16: l6 -> l4 : [], cost: 2 17: l6 -> l3 : [], cost: 2 20: l6 -> l3 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [], cost: 3 21: l6 -> l3 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [], cost: 3 Eliminated location l3 (as a last resort): Start location: l6 23: l4 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [ 2<=x0^0 ], cost: 3 24: l4 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ 2<=x0^0 ], cost: 3 16: l6 -> l4 : [], cost: 2 22: l6 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, [], cost: 3 25: l6 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [], cost: 4 26: l6 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [], cost: 4 Accelerating simple loops of location 4. Accelerating the following rules: 23: l4 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [ 2<=x0^0 ], cost: 3 24: l4 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ 2<=x0^0 ], cost: 3 Accelerated rule 23 with backward acceleration, yielding the new rule 27. Accelerated rule 24 with backward acceleration, yielding the new rule 28. [accelerate] Nesting with 2 inner and 2 outer candidates Removing the simple loops: 23 24. Accelerated all simple loops using metering functions (where possible): Start location: l6 27: l4 -> l4 : oldX0^0'=-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k+x0^0, x1^0'=x1^0, x3^0'=x3^0, [ k>=1 && 2<=1-2*k+x0^0 ], cost: 6*k 28: l4 -> l4 : oldX0^0'=-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k_1+x0^0, x2^0'=x2^0, x3^0'=x3^0, [ k_1>=1 && 2<=1-2*k_1+x0^0 ], cost: 6*k_1 16: l6 -> l4 : [], cost: 2 22: l6 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, [], cost: 3 25: l6 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [], cost: 4 26: l6 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [], cost: 4 Chained accelerated rules (with incoming rules): Start location: l6 16: l6 -> l4 : [], cost: 2 22: l6 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, [], cost: 3 25: l6 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [], cost: 4 26: l6 -> l4 : oldX0^0'=-1+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [], cost: 4 29: l6 -> l4 : oldX0^0'=-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k+x0^0, [ k>=1 && 2<=1-2*k+x0^0 ], cost: 2+6*k 30: l6 -> l4 : oldX0^0'=-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k+x0^0, [ k>=1 && 2<=1-2*k+x0^0 ], cost: 3+6*k 31: l6 -> l4 : oldX0^0'=-1-2*k+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1-2*k+x0^0, x1^0'=x3^0, x3^0'=x1^0, [ k>=1 && 2<=-2*k+x0^0 ], cost: 4+6*k 32: l6 -> l4 : oldX0^0'=-1-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1-2*k+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ k>=1 && 2<=-2*k+x0^0 ], cost: 4+6*k 33: l6 -> l4 : oldX0^0'=-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k_1+x0^0, [ k_1>=1 && 2<=1-2*k_1+x0^0 ], cost: 2+6*k_1 34: l6 -> l4 : oldX0^0'=-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k_1+x0^0, [ k_1>=1 && 2<=1-2*k_1+x0^0 ], cost: 3+6*k_1 35: l6 -> l4 : oldX0^0'=-1-2*k_1+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1-2*k_1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [ k_1>=1 && 2<=-2*k_1+x0^0 ], cost: 4+6*k_1 36: l6 -> l4 : oldX0^0'=-1-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1-2*k_1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ k_1>=1 && 2<=-2*k_1+x0^0 ], cost: 4+6*k_1 Removed unreachable locations (and leaf rules with constant cost): Start location: l6 29: l6 -> l4 : oldX0^0'=-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k+x0^0, [ k>=1 && 2<=1-2*k+x0^0 ], cost: 2+6*k 30: l6 -> l4 : oldX0^0'=-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k+x0^0, [ k>=1 && 2<=1-2*k+x0^0 ], cost: 3+6*k 31: l6 -> l4 : oldX0^0'=-1-2*k+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1-2*k+x0^0, x1^0'=x3^0, x3^0'=x1^0, [ k>=1 && 2<=-2*k+x0^0 ], cost: 4+6*k 32: l6 -> l4 : oldX0^0'=-1-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1-2*k+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ k>=1 && 2<=-2*k+x0^0 ], cost: 4+6*k 33: l6 -> l4 : oldX0^0'=-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k_1+x0^0, [ k_1>=1 && 2<=1-2*k_1+x0^0 ], cost: 2+6*k_1 34: l6 -> l4 : oldX0^0'=-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k_1+x0^0, [ k_1>=1 && 2<=1-2*k_1+x0^0 ], cost: 3+6*k_1 35: l6 -> l4 : oldX0^0'=-1-2*k_1+x0^0, oldX1^0'=x3^0, oldX2^0'=x2^0, oldX3^0'=x1^0, x0^0'=-1-2*k_1+x0^0, x1^0'=x3^0, x3^0'=x1^0, [ k_1>=1 && 2<=-2*k_1+x0^0 ], cost: 4+6*k_1 36: l6 -> l4 : oldX0^0'=-1-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1-2*k_1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ k_1>=1 && 2<=-2*k_1+x0^0 ], cost: 4+6*k_1 ### Computing asymptotic complexity ### Fully simplified ITS problem Start location: l6 30: l6 -> l4 : oldX0^0'=-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k+x0^0, [ k>=1 && 2<=1-2*k+x0^0 ], cost: 3+6*k 32: l6 -> l4 : oldX0^0'=-1-2*k+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1-2*k+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ k>=1 && 2<=-2*k+x0^0 ], cost: 4+6*k 34: l6 -> l4 : oldX0^0'=-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x2^0, oldX3^0'=x3^0, x0^0'=-2*k_1+x0^0, [ k_1>=1 && 2<=1-2*k_1+x0^0 ], cost: 3+6*k_1 36: l6 -> l4 : oldX0^0'=-1-2*k_1+x0^0, oldX1^0'=x1^0, oldX2^0'=x3^0, oldX3^0'=x2^0, x0^0'=-1-2*k_1+x0^0, x2^0'=x3^0, x3^0'=x2^0, [ k_1>=1 && 2<=-2*k_1+x0^0 ], cost: 4+6*k_1 Computing asymptotic complexity for rule 30 Resulting cost 0 has complexity: Unknown Computing asymptotic complexity for rule 32 Resulting cost 0 has complexity: Unknown Computing asymptotic complexity for rule 34 Resulting cost 0 has complexity: Unknown Computing asymptotic complexity for rule 36 Resulting cost 0 has complexity: Unknown Obtained the following overall complexity (w.r.t. the length of the input n): Complexity: Constant Cpx degree: 0 Solved cost: 1 Rule cost: 1 Rule guard: [ oldX0^0==oldX0^post_15 && oldX1^0==oldX1^post_15 && oldX2^0==oldX2^post_15 && oldX3^0==oldX3^post_15 && oldX4^0==oldX4^post_15 && oldX5^0==oldX5^post_15 && oldX6^0==oldX6^post_15 && oldX7^0==oldX7^post_15 && x0^0==x0^post_15 && x1^0==x1^post_15 && x2^0==x2^post_15 && x3^0==x3^post_15 ] WORST_CASE(Omega(1),?)