YES(?,O(n^1)) * Step 1: UnsatPaths WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (?,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (?,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1,8},8->{}] + Applied Processor: UnsatPaths + Details: We remove following edges from the transition graph: [(7,8)] * Step 2: TrivialSCCs WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (?,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (?,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1},8->{}] + Applied Processor: TrivialSCCs + Details: All trivial SCCs of the transition graph admit timebound 1. * Step 3: PolyRank WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (?,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (1,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1},8->{}] + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [], shape = Linear} + Details: We apply a polynomial interpretation of shape linear: p(f0) = x2 p(f16) = 1 + -1*x1 + x2 + x3 p(f20) = -1*x1 + x2 p(f4) = -1*x1 + x2 p(f8) = 1 + -1*x1 + x2 + x3 Following rules are strictly oriented: [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] f16(A,B,C,D) = 1 + -1*A + B + C > 1 + -1*A + B = f4(-1 + A,B,C,D) Following rules are weakly oriented: True ==> f0(A,B,C,D) = B >= B = f4(0,B,C,D) [A >= 0 && B >= 1 + A] ==> f4(A,B,C,D) = -1*A + B >= -1*A + B = f8(1 + A,B,0,D) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] f8(A,B,C,D) = 1 + -1*A + B + C >= 1 + -1*A + B + C = f16(A,B,C,0) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] f8(A,B,C,D) = 1 + -1*A + B + C >= 1 + -1*A + B + C = f16(A,B,C,D) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] f8(A,B,C,D) = 1 + -1*A + B + C >= 1 + -1*A + B + C = f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] f8(A,B,C,D) = 1 + -1*A + B + C >= 1 + -1*A + B + C = f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] f16(A,B,C,D) = 1 + -1*A + B + C >= -1*A + B = f4(A,B,C,D) [A >= 0 && A >= B] ==> f4(A,B,C,D) = -1*A + B >= -1*A + B = f20(A,B,C,D) * Step 4: PolyRank WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (?,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (1,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1},8->{}] + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [], shape = Linear} + Details: We apply a polynomial interpretation of shape linear: p(f0) = x2 p(f16) = 1 + -1*x1 + x2 p(f20) = -1*x1 + x2 p(f4) = -1*x1 + x2 p(f8) = 1 + -1*x1 + x2 Following rules are strictly oriented: [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] f16(A,B,C,D) = 1 + -1*A + B > -1*A + B = f4(A,B,C,D) Following rules are weakly oriented: True ==> f0(A,B,C,D) = B >= B = f4(0,B,C,D) [A >= 0 && B >= 1 + A] ==> f4(A,B,C,D) = -1*A + B >= -1*A + B = f8(1 + A,B,0,D) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] f8(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f16(A,B,C,0) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] f8(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f16(A,B,C,D) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] f8(A,B,C,D) = 1 + -1*A + B >= -1*A + B = f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] f8(A,B,C,D) = 1 + -1*A + B >= -1*A + B = f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] f16(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f4(-1 + A,B,C,D) [A >= 0 && A >= B] ==> f4(A,B,C,D) = -1*A + B >= -1*A + B = f20(A,B,C,D) * Step 5: KnowledgePropagation WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (?,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (1,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1},8->{}] + Applied Processor: KnowledgePropagation + Details: We propagate bounds from predecessors. * Step 6: PolyRank WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (1 + 2*B,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (1,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1},8->{}] + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [], shape = Linear} + Details: We apply a polynomial interpretation of shape linear: p(f0) = x2 p(f16) = 1 + -1*x1 + x2 p(f20) = -1*x1 + x2 p(f4) = -1*x1 + x2 p(f8) = 1 + -1*x1 + x2 Following rules are strictly oriented: [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] f8(A,B,C,D) = 1 + -1*A + B > -1*A + B = f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] f16(A,B,C,D) = 1 + -1*A + B > -1*A + B = f4(A,B,C,D) Following rules are weakly oriented: True ==> f0(A,B,C,D) = B >= B = f4(0,B,C,D) [A >= 0 && B >= 1 + A] ==> f4(A,B,C,D) = -1*A + B >= -1*A + B = f8(1 + A,B,0,D) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] f8(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f16(A,B,C,0) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] f8(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f16(A,B,C,D) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] f8(A,B,C,D) = 1 + -1*A + B >= -1*A + B = f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] f16(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f4(-1 + A,B,C,D) [A >= 0 && A >= B] ==> f4(A,B,C,D) = -1*A + B >= -1*A + B = f20(A,B,C,D) * Step 7: PolyRank WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (1 + 2*B,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (1,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1},8->{}] + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [], shape = Linear} + Details: We apply a polynomial interpretation of shape linear: p(f0) = x2 p(f16) = 1 + -1*x1 + x2 p(f20) = -1*x1 + x2 p(f4) = -1*x1 + x2 p(f8) = 1 + -1*x1 + x2 Following rules are strictly oriented: [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] f8(A,B,C,D) = 1 + -1*A + B > -1*A + B = f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] f8(A,B,C,D) = 1 + -1*A + B > -1*A + B = f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] f16(A,B,C,D) = 1 + -1*A + B > -1*A + B = f4(A,B,C,D) Following rules are weakly oriented: True ==> f0(A,B,C,D) = B >= B = f4(0,B,C,D) [A >= 0 && B >= 1 + A] ==> f4(A,B,C,D) = -1*A + B >= -1*A + B = f8(1 + A,B,0,D) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] f8(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f16(A,B,C,0) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] f8(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f16(A,B,C,D) [-1 + B + -1*C >= 0 ==> && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] f16(A,B,C,D) = 1 + -1*A + B >= 1 + -1*A + B = f4(-1 + A,B,C,D) [A >= 0 && A >= B] ==> f4(A,B,C,D) = -1*A + B >= -1*A + B = f20(A,B,C,D) * Step 8: KnowledgePropagation WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (1 + 2*B,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (?,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (1,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1},8->{}] + Applied Processor: KnowledgePropagation + Details: We propagate bounds from predecessors. * Step 9: PolyRank WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. f0(A,B,C,D) -> f4(0,B,C,D) True (1,1) 1. f4(A,B,C,D) -> f8(1 + A,B,0,D) [A >= 0 && B >= 1 + A] (1 + 2*B,1) 2. f8(A,B,C,D) -> f16(A,B,C,0) [-1 + B + -1*C >= 0 (1 + 4*B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A] 3. f8(A,B,C,D) -> f16(A,B,C,D) [-1 + B + -1*C >= 0 (1 + 4*B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && A >= B] 4. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && 0 >= 1 + E] 5. f8(A,B,C,D) -> f8(1 + A,B,1 + C,E) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && B >= 1 + A && E >= 1] 6. f16(A,B,C,D) -> f4(A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && 0 >= C] 7. f16(A,B,C,D) -> f4(-1 + A,B,C,D) [-1 + B + -1*C >= 0 (B,1) && -1 + A + -1*C >= 0 && C >= 0 && -1 + B + C >= 0 && -1 + A + C >= 0 && -1 + B >= 0 && -2 + A + B >= 0 && -1*A + B >= 0 && -1 + A >= 0 && C >= 1] 8. f4(A,B,C,D) -> f20(A,B,C,D) [A >= 0 && A >= B] (1,1) Signature: {(f0,4);(f16,4);(f20,4);(f4,4);(f8,4)} Flow Graph: [0->{1,8},1->{2,3,4,5},2->{6,7},3->{6,7},4->{2,3,4,5},5->{2,3,4,5},6->{1,8},7->{1},8->{}] + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [], shape = Linear} + Details: The problem is already solved. YES(?,O(n^1))