Initial Problem

Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: nondef_0, nondef_1
Locations: l0, l1, l10, l11, l12, l13, l14, l15, l16, l17, l18, l2, l3, l4, l5, l6, l7, l8, l9
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄)
t₃: l1(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄)
t₆: l10(X₀, X₁, X₂, X₃, X₄) → l11(X₀, X₁, X₂, X₃, X₄)
t₇: l11(X₀, X₁, X₂, X₃, X₄) → l12(X₀, X₁, X₂, X₃, X₄)
t₈: l12(X₀, X₁, X₂, X₃, X₄) → l9(X₀, X₁, 1, X₃, X₄)
t₁₁: l13(X₀, X₁, X₂, X₃, X₄) → l15(X₀, nondef_0, X₂, X₂-1, X₄)
t₂₀: l14(X₀, X₁, X₂, X₃, X₄) → l18(X₀, X₁, X₂, X₃, X₄)
t₁₂: l15(X₀, X₁, X₂, X₃, X₄) → l16(X₀, X₁, X₂, X₃, X₄) :|: 0 ≤ X₃
t₁₃: l15(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: X₃ < 0
t₁₄: l16(X₀, X₁, X₂, X₃, X₄) → l17(X₀, X₁, X₂, X₃, X₄) :|: X₁ < nondef_1
t₁₅: l16(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: nondef_1 ≤ X₁
t₁₆: l17(X₀, X₁, X₂, X₃, X₄) → l15(X₀, X₁, X₂, X₃-1, X₄)
t₁: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄)
t₂: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₄)
t₄: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀, X₁, X₂, X₃, X₄)
t₅: l5(X₀, X₁, X₂, X₃, X₄) → l10(X₀, X₁, X₂, X₃, X₄)
t₁₉: l6(X₀, X₁, X₂, X₃, X₄) → l9(X₀, X₁, X₀, X₃, X₄)
t₁₇: l7(X₀, X₁, X₂, X₃, X₄) → l8(X₂+1, X₁, X₂, X₃, X₄)
t₁₈: l8(X₀, X₁, X₂, X₃, X₄) → l6(X₀, X₁, X₂, X₃, X₄)
t₉: l9(X₀, X₁, X₂, X₃, X₄) → l13(X₀, X₁, X₂, X₃, X₄) :|: X₂ < X₄
t₁₀: l9(X₀, X₁, X₂, X₃, X₄) → l14(X₀, X₁, X₂, X₃, X₄) :|: X₄ ≤ X₂

Preprocessing

Found invariant 2 ≤ X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 4 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₀ ∧ 1+X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ X₀ ≤ 1+X₂ ∧ 2 ≤ X₀ for location l6

Found invariant 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ for location l15

Found invariant 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂ for location l17

Found invariant 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ for location l7

Found invariant 2 ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1 ≤ X₂ for location l13

Found invariant 2 ≤ X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 4 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₀ ∧ 1+X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ X₀ ≤ 1+X₂ ∧ 2 ≤ X₀ for location l8

Found invariant 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂ for location l16

Found invariant X₄ ≤ X₂ ∧ 1 ≤ X₂ for location l18

Found invariant 1 ≤ X₂ for location l9

Found invariant X₄ ≤ X₂ ∧ 1 ≤ X₂ for location l14

Problem after Preprocessing

Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: nondef_0, nondef_1
Locations: l0, l1, l10, l11, l12, l13, l14, l15, l16, l17, l18, l2, l3, l4, l5, l6, l7, l8, l9
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄)
t₃: l1(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄)
t₆: l10(X₀, X₁, X₂, X₃, X₄) → l11(X₀, X₁, X₂, X₃, X₄)
t₇: l11(X₀, X₁, X₂, X₃, X₄) → l12(X₀, X₁, X₂, X₃, X₄)
t₈: l12(X₀, X₁, X₂, X₃, X₄) → l9(X₀, X₁, 1, X₃, X₄)
t₁₁: l13(X₀, X₁, X₂, X₃, X₄) → l15(X₀, nondef_0, X₂, X₂-1, X₄) :|: 2 ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1 ≤ X₂
t₂₀: l14(X₀, X₁, X₂, X₃, X₄) → l18(X₀, X₁, X₂, X₃, X₄) :|: X₄ ≤ X₂ ∧ 1 ≤ X₂
t₁₂: l15(X₀, X₁, X₂, X₃, X₄) → l16(X₀, X₁, X₂, X₃, X₄) :|: 0 ≤ X₃ ∧ 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂
t₁₃: l15(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: X₃ < 0 ∧ 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂
t₁₄: l16(X₀, X₁, X₂, X₃, X₄) → l17(X₀, X₁, X₂, X₃, X₄) :|: X₁ < nondef_1 ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂
t₁₅: l16(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: nondef_1 ≤ X₁ ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂
t₁₆: l17(X₀, X₁, X₂, X₃, X₄) → l15(X₀, X₁, X₂, X₃-1, X₄) :|: 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂
t₁: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄)
t₂: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₄)
t₄: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀, X₁, X₂, X₃, X₄)
t₅: l5(X₀, X₁, X₂, X₃, X₄) → l10(X₀, X₁, X₂, X₃, X₄)
t₁₉: l6(X₀, X₁, X₂, X₃, X₄) → l9(X₀, X₁, X₀, X₃, X₄) :|: 2 ≤ X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 4 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₀ ∧ 1+X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ X₀ ≤ 1+X₂ ∧ 2 ≤ X₀
t₁₇: l7(X₀, X₁, X₂, X₃, X₄) → l8(X₂+1, X₁, X₂, X₃, X₄) :|: 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂
t₁₈: l8(X₀, X₁, X₂, X₃, X₄) → l6(X₀, X₁, X₂, X₃, X₄) :|: 2 ≤ X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 4 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₀ ∧ 1+X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ X₀ ≤ 1+X₂ ∧ 2 ≤ X₀
t₉: l9(X₀, X₁, X₂, X₃, X₄) → l13(X₀, X₁, X₂, X₃, X₄) :|: X₂ < X₄ ∧ 1 ≤ X₂
t₁₀: l9(X₀, X₁, X₂, X₃, X₄) → l14(X₀, X₁, X₂, X₃, X₄) :|: X₄ ≤ X₂ ∧ 1 ≤ X₂

MPRF for transition t₉: l9(X₀, X₁, X₂, X₃, X₄) → l13(X₀, X₁, X₂, X₃, X₄) :|: X₂ < X₄ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄+2 {O(n)}

MPRF for transition t₁₁: l13(X₀, X₁, X₂, X₃, X₄) → l15(X₀, nondef_0, X₂, X₂-1, X₄) :|: 2 ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄+2 {O(n)}

MPRF for transition t₁₃: l15(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: X₃ < 0 ∧ 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄+3 {O(n)}

MPRF for transition t₁₅: l16(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: nondef_1 ≤ X₁ ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄+3 {O(n)}

MPRF for transition t₁₇: l7(X₀, X₁, X₂, X₃, X₄) → l8(X₂+1, X₁, X₂, X₃, X₄) :|: 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄+1 {O(n)}

MPRF for transition t₁₈: l8(X₀, X₁, X₂, X₃, X₄) → l6(X₀, X₁, X₂, X₃, X₄) :|: 2 ≤ X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 4 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₀ ∧ 1+X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ X₀ ≤ 1+X₂ ∧ 2 ≤ X₀ of depth 1:

new bound:

X₄+1 {O(n)}

MPRF for transition t₁₉: l6(X₀, X₁, X₂, X₃, X₄) → l9(X₀, X₁, X₀, X₃, X₄) :|: 2 ≤ X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 4 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₀ ∧ 1+X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ X₀ ≤ 1+X₂ ∧ 2 ≤ X₀ of depth 1:

new bound:

X₄+1 {O(n)}

MPRF for transition t₁₂: l15(X₀, X₁, X₂, X₃, X₄) → l16(X₀, X₁, X₂, X₃, X₄) :|: 0 ≤ X₃ ∧ 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄⋅X₄+4⋅X₄+5 {O(n^2)}

MPRF for transition t₁₄: l16(X₀, X₁, X₂, X₃, X₄) → l17(X₀, X₁, X₂, X₃, X₄) :|: X₁ < nondef_1 ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄⋅X₄+3⋅X₄+3 {O(n^2)}

MPRF for transition t₁₆: l17(X₀, X₁, X₂, X₃, X₄) → l15(X₀, X₁, X₂, X₃-1, X₄) :|: 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄⋅X₄+3⋅X₄+3 {O(n^2)}

Chain transitions t₉: l9→l13 and t₁₁: l13→l15 to t₁₂₆: l9→l15

Chain transitions t₁₂₆: l9→l15 and t₁₃: l15→l7 to t₁₂₇: l9→l7

Chain transitions t₁₆: l17→l15 and t₁₃: l15→l7 to t₁₂₈: l17→l7

Chain transitions t₁₆: l17→l15 and t₁₂: l15→l16 to t₁₂₉: l17→l16

Chain transitions t₁₂₆: l9→l15 and t₁₂: l15→l16 to t₁₃₀: l9→l16

Chain transitions t₁₃₀: l9→l16 and t₁₅: l16→l7 to t₁₃₁: l9→l7

Chain transitions t₁₂₉: l17→l16 and t₁₅: l16→l7 to t₁₃₂: l17→l7

Chain transitions t₁₂₉: l17→l16 and t₁₄: l16→l17 to t₁₃₃: l17→l17

Chain transitions t₁₃₀: l9→l16 and t₁₄: l16→l17 to t₁₃₄: l9→l17

Chain transitions t₁₈: l8→l6 and t₁₉: l6→l9 to t₁₃₅: l8→l9

Chain transitions t₁₃₁: l9→l7 and t₁₇: l7→l8 to t₁₃₆: l9→l8

Chain transitions t₁₂₇: l9→l7 and t₁₇: l7→l8 to t₁₃₇: l9→l8

Chain transitions t₁₃₂: l17→l7 and t₁₇: l7→l8 to t₁₃₈: l17→l8

Chain transitions t₁₂₈: l17→l7 and t₁₇: l7→l8 to t₁₃₉: l17→l8

Chain transitions t₁₃₇: l9→l8 and t₁₃₅: l8→l9 to t₁₄₀: l9→l9

Chain transitions t₁₃₆: l9→l8 and t₁₃₅: l8→l9 to t₁₄₁: l9→l9

Chain transitions t₁₃₆: l9→l8 and t₁₈: l8→l6 to t₁₄₂: l9→l6

Chain transitions t₁₃₇: l9→l8 and t₁₈: l8→l6 to t₁₄₃: l9→l6

Chain transitions t₁₃₉: l17→l8 and t₁₈: l8→l6 to t₁₄₄: l17→l6

Chain transitions t₁₃₉: l17→l8 and t₁₃₅: l8→l9 to t₁₄₅: l17→l9

Chain transitions t₁₃₈: l17→l8 and t₁₈: l8→l6 to t₁₄₆: l17→l6

Chain transitions t₁₃₈: l17→l8 and t₁₃₅: l8→l9 to t₁₄₇: l17→l9

Analysing control-flow refined program

Cut unsatisfiable transition t₁₂₇: l9→l7

Cut unsatisfiable transition t₁₃₇: l9→l8

Cut unsatisfiable transition t₁₄₀: l9→l9

Cut unsatisfiable transition t₁₄₃: l9→l6

Eliminate variables {X₀} that do not contribute to the problem

Found invariant 2 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ 1+X₂ ∧ 0 ≤ X₁+X₂ ∧ 1 ≤ X₁ for location l6

Found invariant 2 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ 1+X₂ ∧ 0 ≤ X₁+X₂ ∧ 1 ≤ X₁ for location l15

Found invariant 2 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁ for location l17

Found invariant 2 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ 1+X₂ ∧ 0 ≤ X₁+X₂ ∧ 1 ≤ X₁ for location l7

Found invariant 2 ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₁ for location l13

Found invariant 2 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ 1+X₂ ∧ 0 ≤ X₁+X₂ ∧ 1 ≤ X₁ for location l8

Found invariant 2 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁ for location l16

Found invariant X₃ ≤ X₁ ∧ 1 ≤ X₁ for location l18

Found invariant 1 ≤ X₁ for location l9

Found invariant X₃ ≤ X₁ ∧ 1 ≤ X₁ for location l14

MPRF for transition t₂₁₄: l17(X₀, X₁, X₂, X₃) -{5}> l9(X₀, 1+X₁, X₂-1, X₃) :|: X₂ < 1 ∧ 2 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁ of depth 1:

new bound:

X₃+1 {O(n)}

MPRF for transition t₂₁₅: l17(X₀, X₁, X₂, X₃) -{6}> l9(X₀, 1+X₁, X₂-1, X₃) :|: 1 ≤ X₂ ∧ Temp_Int₅₄₈ ≤ X₀ ∧ 2 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁ of depth 1:

new bound:

X₃+1 {O(n)}

MPRF for transition t₂₂₄: l9(X₀, X₁, X₂, X₃) -{4}> l17(Temp_Int₅₁₄, X₁, X₁-1, X₃) :|: X₁ < X₃ ∧ 1 ≤ X₁ ∧ Temp_Int₅₁₄ < Temp_Int₅₆₀ ∧ 1 ≤ X₁ of depth 1:

new bound:

X₃+1 {O(n)}

MPRF for transition t₂₂₈: l9(X₀, X₁, X₂, X₃) -{7}> l9(Temp_Int₅₁₄, 1+X₁, X₁-1, X₃) :|: X₁ < X₃ ∧ 1 ≤ X₁ ∧ Temp_Int₅₄₂ ≤ Temp_Int₅₁₄ ∧ 1 ≤ X₁ of depth 1:

new bound:

X₃+1 {O(n)}

MPRF for transition t₂₀₇: l17(X₀, X₁, X₂, X₃) -{3}> l17(X₀, X₁, X₂-1, X₃) :|: 1 ≤ X₂ ∧ X₀ < Temp_Int₅₅₄ ∧ 2 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2+X₂ ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁ of depth 1:

new bound:

9⋅X₃⋅X₃+23⋅X₃+14 {O(n^2)}

CFR did not improve the program. Rolling back

CFR did not improve the program. Rolling back

Analysing control-flow refined program

Cut unsatisfiable transition t₁₃: l15→l7

Found invariant 3 ≤ X₄ ∧ 3 ≤ X₃+X₄ ∧ 3+X₃ ≤ X₄ ∧ 5 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 2+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2 ≤ X₂ for location n_l16___2

Found invariant 2 ≤ X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 4 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₀ ∧ 1+X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ X₀ ≤ 1+X₂ ∧ 2 ≤ X₀ for location l6

Found invariant 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ X₂ ≤ 1+X₃ ∧ 1 ≤ X₂ for location l15

Found invariant 3 ≤ X₄ ∧ 3 ≤ X₃+X₄ ∧ 3+X₃ ≤ X₄ ∧ 5 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 2+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2 ≤ X₂ for location n_l17___1

Found invariant 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 3+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 2+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ for location n_l15___3

Found invariant 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ for location l7

Found invariant 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ X₂ ≤ 1+X₃ ∧ 1 ≤ X₂ for location n_l16___5

Found invariant 2 ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1 ≤ X₂ for location l13

Found invariant 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 4 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₀ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ X₀ ≤ 1+X₂ ∧ 2 ≤ X₀ for location l8

Found invariant X₄ ≤ X₂ ∧ 1 ≤ X₂ for location l18

Found invariant 1 ≤ X₂ for location l9

Found invariant X₄ ≤ X₂ ∧ 1 ≤ X₂ for location l14

Found invariant 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ X₂ ≤ 1+X₃ ∧ 1 ≤ X₂ for location n_l17___4

knowledge_propagation leads to new time bound X₄+2 {O(n)} for transition t₃₄₁: l15(X₀, X₁, X₂, X₃, X₄) → n_l16___5(X₀, X₁, X₂, X₃, X₄) :|: 0 ≤ X₃ ∧ X₂ ≤ 1+X₃ ∧ 0 ≤ X₃ ∧ 0 ≤ X₃ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 1+X₃ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 1+X₂ ≤ X₄ ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ X₂ ≤ 1+X₃ ∧ 1 ≤ X₂

knowledge_propagation leads to new time bound X₄+2 {O(n)} for transition t₃₄₃: n_l16___5(X₀, X₁, X₂, X₃, X₄) → n_l17___4(X₀, X₁, X₂, Arg3_P, Arg4_P) :|: X₂ ≤ X₃+1 ∧ 1+X₂ ≤ Arg4_P ∧ 1+Arg3_P ≤ X₂ ∧ 0 ≤ Arg3_P ∧ X₃ ≤ Arg3_P ∧ Arg3_P ≤ X₃ ∧ X₄ ≤ Arg4_P ∧ Arg4_P ≤ X₄ ∧ 1+X₂ ≤ X₄ ∧ 1 ≤ X₂ ∧ 1+X₃ ≤ X₂ ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ X₂ ≤ 1+X₃ ∧ 1 ≤ X₂

knowledge_propagation leads to new time bound X₄+2 {O(n)} for transition t₃₄₅: n_l17___4(X₀, X₁, X₂, X₃, X₄) → n_l15___3(X₀, X₁, X₂, X₃-1, X₄) :|: X₂ ≤ X₃+1 ∧ 1+X₂ ≤ X₄ ∧ 1 ≤ X₂ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1+X₃ ≤ X₂ ∧ 1+X₂ ≤ X₄ ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ X₂ ≤ 1+X₃ ∧ 1 ≤ X₂

knowledge_propagation leads to new time bound X₄+2 {O(n)} for transition t₃₅₃: n_l16___5(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: nondef_1 ≤ X₁ ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂ ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ X₂ ≤ 1+X₃ ∧ 1 ≤ X₂

MPRF for transition t₃₄₀: n_l15___3(X₀, X₁, X₂, X₃, X₄) → n_l16___2(X₀, X₁, X₂, X₃, X₄) :|: 2+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 1+X₂ ≤ X₄ ∧ 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 3+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 2+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ of depth 1:

new bound:

2⋅X₄⋅X₄+10⋅X₄+14 {O(n^2)}

MPRF for transition t₃₄₂: n_l16___2(X₀, X₁, X₂, X₃, X₄) → n_l17___1(X₀, X₁, X₂, Arg3_P, Arg4_P) :|: 2+X₃ ≤ X₂ ∧ 1+X₂ ≤ Arg4_P ∧ 1+Arg3_P ≤ X₂ ∧ 0 ≤ Arg3_P ∧ X₃ ≤ Arg3_P ∧ Arg3_P ≤ X₃ ∧ X₄ ≤ Arg4_P ∧ Arg4_P ≤ X₄ ∧ 1+X₂ ≤ X₄ ∧ 0 ≤ X₃ ∧ 3 ≤ X₄ ∧ 3 ≤ X₃+X₄ ∧ 3+X₃ ≤ X₄ ∧ 5 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 2+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2 ≤ X₂ of depth 1:

new bound:

2⋅X₄⋅X₄+10⋅X₄+13 {O(n^2)}

MPRF for transition t₃₄₄: n_l17___1(X₀, X₁, X₂, X₃, X₄) → n_l15___3(X₀, X₁, X₂, X₃-1, X₄) :|: 2+X₃ ≤ X₂ ∧ 1+X₂ ≤ X₄ ∧ 0 ≤ X₃ ∧ 0 ≤ X₃ ∧ 1+X₃ ≤ X₂ ∧ 1+X₂ ≤ X₄ ∧ 3 ≤ X₄ ∧ 3 ≤ X₃+X₄ ∧ 3+X₃ ≤ X₄ ∧ 5 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 2+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2 ≤ X₂ of depth 1:

new bound:

X₄⋅X₄+7⋅X₄+9 {O(n^2)}

MPRF for transition t₃₅₁: n_l15___3(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: X₃ < 0 ∧ 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ ∧ 2 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ 3+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 2+X₃ ≤ X₂ ∧ 0 ≤ 1+X₃ ∧ 0 ≤ X₂+X₃ ∧ 1 ≤ X₂ of depth 1:

new bound:

X₄+1 {O(n)}

MPRF for transition t₃₅₂: n_l16___2(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄) :|: nondef_1 ≤ X₁ ∧ 2 ≤ X₄ ∧ 2 ≤ X₃+X₄ ∧ 2+X₃ ≤ X₄ ∧ 3 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 1+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1 ≤ X₂ ∧ 3 ≤ X₄ ∧ 3 ≤ X₃+X₄ ∧ 3+X₃ ≤ X₄ ∧ 5 ≤ X₂+X₄ ∧ 1+X₂ ≤ X₄ ∧ 2+X₃ ≤ X₂ ∧ 0 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2 ≤ X₂ of depth 1:

new bound:

X₄+1 {O(n)}

CFR did not improve the program. Rolling back

CFR did not improve the program. Rolling back

All Bounds

Timebounds

Overall timebound:3⋅X₄⋅X₄+17⋅X₄+35 {O(n^2)}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: 1 {O(1)}
t₃: 1 {O(1)}
t₄: 1 {O(1)}
t₅: 1 {O(1)}
t₆: 1 {O(1)}
t₇: 1 {O(1)}
t₈: 1 {O(1)}
t₉: X₄+2 {O(n)}
t₁₀: 1 {O(1)}
t₁₁: X₄+2 {O(n)}
t₁₂: X₄⋅X₄+4⋅X₄+5 {O(n^2)}
t₁₃: X₄+3 {O(n)}
t₁₄: X₄⋅X₄+3⋅X₄+3 {O(n^2)}
t₁₅: X₄+3 {O(n)}
t₁₆: X₄⋅X₄+3⋅X₄+3 {O(n^2)}
t₁₇: X₄+1 {O(n)}
t₁₈: X₄+1 {O(n)}
t₁₉: X₄+1 {O(n)}
t₂₀: 1 {O(1)}

Costbounds

Overall costbound: 3⋅X₄⋅X₄+17⋅X₄+35 {O(n^2)}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: 1 {O(1)}
t₃: 1 {O(1)}
t₄: 1 {O(1)}
t₅: 1 {O(1)}
t₆: 1 {O(1)}
t₇: 1 {O(1)}
t₈: 1 {O(1)}
t₉: X₄+2 {O(n)}
t₁₀: 1 {O(1)}
t₁₁: X₄+2 {O(n)}
t₁₂: X₄⋅X₄+4⋅X₄+5 {O(n^2)}
t₁₃: X₄+3 {O(n)}
t₁₄: X₄⋅X₄+3⋅X₄+3 {O(n^2)}
t₁₅: X₄+3 {O(n)}
t₁₆: X₄⋅X₄+3⋅X₄+3 {O(n^2)}
t₁₇: X₄+1 {O(n)}
t₁₈: X₄+1 {O(n)}
t₁₉: X₄+1 {O(n)}
t₂₀: 1 {O(1)}

Sizebounds

t₀, X₀: X₀ {O(n)}
t₀, X₁: X₁ {O(n)}
t₀, X₂: X₂ {O(n)}
t₀, X₃: X₃ {O(n)}
t₀, X₄: X₄ {O(n)}
t₁, X₀: X₀ {O(n)}
t₁, X₁: X₁ {O(n)}
t₁, X₂: X₂ {O(n)}
t₁, X₃: X₃ {O(n)}
t₁, X₄: X₄ {O(n)}
t₂, X₀: X₀ {O(n)}
t₂, X₁: X₁ {O(n)}
t₂, X₂: X₂ {O(n)}
t₂, X₃: X₃ {O(n)}
t₂, X₄: X₄ {O(n)}
t₃, X₀: X₀ {O(n)}
t₃, X₁: X₁ {O(n)}
t₃, X₂: X₂ {O(n)}
t₃, X₃: X₃ {O(n)}
t₃, X₄: X₄ {O(n)}
t₄, X₀: X₀ {O(n)}
t₄, X₁: X₁ {O(n)}
t₄, X₂: X₂ {O(n)}
t₄, X₃: X₃ {O(n)}
t₄, X₄: X₄ {O(n)}
t₅, X₀: X₀ {O(n)}
t₅, X₁: X₁ {O(n)}
t₅, X₂: X₂ {O(n)}
t₅, X₃: X₃ {O(n)}
t₅, X₄: X₄ {O(n)}
t₆, X₀: X₀ {O(n)}
t₆, X₁: X₁ {O(n)}
t₆, X₂: X₂ {O(n)}
t₆, X₃: X₃ {O(n)}
t₆, X₄: X₄ {O(n)}
t₇, X₀: X₀ {O(n)}
t₇, X₁: X₁ {O(n)}
t₇, X₂: X₂ {O(n)}
t₇, X₃: X₃ {O(n)}
t₇, X₄: X₄ {O(n)}
t₈, X₀: X₀ {O(n)}
t₈, X₁: X₁ {O(n)}
t₈, X₂: 1 {O(1)}
t₈, X₃: X₃ {O(n)}
t₈, X₄: X₄ {O(n)}
t₉, X₀: X₀+X₄+2 {O(n)}
t₉, X₂: X₄+2 {O(n)}
t₉, X₃: X₃+X₄+4 {O(n)}
t₉, X₄: X₄ {O(n)}
t₁₀, X₀: X₀+X₄+2 {O(n)}
t₁₀, X₂: X₄+3 {O(n)}
t₁₀, X₃: X₃+X₄+4 {O(n)}
t₁₀, X₄: 2⋅X₄ {O(n)}
t₁₁, X₀: X₀+X₄+2 {O(n)}
t₁₁, X₂: X₄+2 {O(n)}
t₁₁, X₃: X₄+2 {O(n)}
t₁₁, X₄: X₄ {O(n)}
t₁₂, X₀: X₀+X₄+2 {O(n)}
t₁₂, X₂: X₄+2 {O(n)}
t₁₂, X₃: X₄+3 {O(n)}
t₁₂, X₄: X₄ {O(n)}
t₁₃, X₀: X₀+X₄+2 {O(n)}
t₁₃, X₂: X₄+2 {O(n)}
t₁₃, X₃: 1 {O(1)}
t₁₃, X₄: X₄ {O(n)}
t₁₄, X₀: X₀+X₄+2 {O(n)}
t₁₄, X₂: X₄+2 {O(n)}
t₁₄, X₃: X₄+3 {O(n)}
t₁₄, X₄: X₄ {O(n)}
t₁₅, X₀: X₀+X₄+2 {O(n)}
t₁₅, X₂: X₄+2 {O(n)}
t₁₅, X₃: X₄+3 {O(n)}
t₁₅, X₄: X₄ {O(n)}
t₁₆, X₀: X₀+X₄+2 {O(n)}
t₁₆, X₂: X₄+2 {O(n)}
t₁₆, X₃: X₄+3 {O(n)}
t₁₆, X₄: X₄ {O(n)}
t₁₇, X₀: X₄+2 {O(n)}
t₁₇, X₂: 2⋅X₄+4 {O(n)}
t₁₇, X₃: X₄+4 {O(n)}
t₁₇, X₄: X₄ {O(n)}
t₁₈, X₀: X₄+2 {O(n)}
t₁₈, X₂: 2⋅X₄+4 {O(n)}
t₁₈, X₃: X₄+4 {O(n)}
t₁₈, X₄: X₄ {O(n)}
t₁₉, X₀: X₄+2 {O(n)}
t₁₉, X₂: X₄+2 {O(n)}
t₁₉, X₃: X₄+4 {O(n)}
t₁₉, X₄: X₄ {O(n)}
t₂₀, X₀: X₀+X₄+2 {O(n)}
t₂₀, X₂: X₄+3 {O(n)}
t₂₀, X₃: X₃+X₄+4 {O(n)}
t₂₀, X₄: 2⋅X₄ {O(n)}