Initial Problem
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: F
Locations: l0, l1, l2, l3, l4, l5, l6, l7, l8
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄)
t₁₅: l1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, 1, X₄, X₄)
t₄: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄) :|: F+1 ≤ 0
t₅: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄) :|: 1 ≤ F
t₆: l2(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄)
t₇: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₃-1) :|: F+1 ≤ 0
t₈: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₃-1) :|: F+1 ≤ 0 ∧ 1 ≤ F
t₉: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₃-1) :|: 1 ≤ F
t₁₂: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₃) :|: 1 ≤ 0
t₁₃: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₃) :|: 1 ≤ 0
t₁₀: l3(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃-1, X₄) :|: 1 ≤ 0
t₁₁: l3(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃-1, X₄) :|: 1 ≤ 0
t₁₄: l3(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄)
t₁₆: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀+1, X₃, X₂, X₃, X₄) :|: X₂ ≤ 0 ∧ 0 ≤ X₂
t₁₇: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀, X₃, X₂, X₃, X₄) :|: X₂+1 ≤ 0
t₁₈: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀, X₃, X₂, X₃, X₄) :|: 1 ≤ X₂
t₂: l5(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, 0, X₁, X₄) :|: X₀+1 ≤ X₁
t₃: l5(X₀, X₁, X₂, X₃, X₄) → l6(X₀, X₁, X₂, X₃, X₄) :|: X₁ ≤ X₀
t₁₉: l6(X₀, X₁, X₂, X₃, X₄) → l8(X₀, X₁, X₂, X₃, X₄)
t₁: l7(X₀, X₁, X₂, X₃, X₄) → l5(0, X₀, X₂, X₃, X₄)
Preprocessing
Cut unsatisfiable transition t₈: l3→l1
Cut unsatisfiable transition t₁₀: l3→l2
Cut unsatisfiable transition t₁₁: l3→l2
Cut unsatisfiable transition t₁₂: l3→l1
Cut unsatisfiable transition t₁₃: l3→l1
Found invariant X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l2
Found invariant X₁ ≤ X₀ ∧ 0 ≤ X₀ for location l6
Found invariant 0 ≤ X₀ for location l5
Found invariant X₁ ≤ X₀ ∧ 0 ≤ X₀ for location l8
Found invariant 1+X₄ ≤ X₃ ∧ 1+X₄ ≤ X₁ ∧ X₃ ≤ 1+X₄ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l1
Found invariant X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l4
Found invariant X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l3
Cut unsatisfiable transition t₁₇: l4→l5
Problem after Preprocessing
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: F
Locations: l0, l1, l2, l3, l4, l5, l6, l7, l8
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l7(X₀, X₁, X₂, X₃, X₄)
t₁₅: l1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, 1, X₄, X₄) :|: 1+X₄ ≤ X₃ ∧ 1+X₄ ≤ X₁ ∧ X₃ ≤ 1+X₄ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₄: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄) :|: F+1 ≤ 0 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₅: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄) :|: 1 ≤ F ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₆: l2(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄) :|: X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₇: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₃-1) :|: F+1 ≤ 0 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₉: l3(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₃-1) :|: 1 ≤ F ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₁₄: l3(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₁₆: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀+1, X₃, X₂, X₃, X₄) :|: X₂ ≤ 0 ∧ 0 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₁₈: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀, X₃, X₂, X₃, X₄) :|: 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀
t₂: l5(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, 0, X₁, X₄) :|: X₀+1 ≤ X₁ ∧ 0 ≤ X₀
t₃: l5(X₀, X₁, X₂, X₃, X₄) → l6(X₀, X₁, X₂, X₃, X₄) :|: X₁ ≤ X₀ ∧ 0 ≤ X₀
t₁₉: l6(X₀, X₁, X₂, X₃, X₄) → l8(X₀, X₁, X₂, X₃, X₄) :|: X₁ ≤ X₀ ∧ 0 ≤ X₀
t₁: l7(X₀, X₁, X₂, X₃, X₄) → l5(0, X₀, X₂, X₃, X₄)
Solv. Size Bound: t₂: l5→l2 for X₀
Solv. Size Bound: t₂: l5→l2 for X₁
Solv. Size Bound: t₂: l5→l2 for X₃
cycle: [t₂: l5→l2; t₆: l2→l4; t₁₈: l4→l5]
loop: (X₀+1 ≤ X₁ ∧ 1 ≤ 0,(X₁,X₃) -> (X₁,X₁)
overappr. closed-form: 2⋅X₁ {O(n)}
runtime bound: 1 {O(1)}
Solv. Size Bound - Lifting for t₂: l5→l2 and X₃: inf {Infinity}
Solv. Size Bound: t₆: l2→l4 for X₀
Solv. Size Bound: t₆: l2→l4 for X₁
cycle: [t₆: l2→l4; t₁₆: l4→l5; t₂: l5→l2]
loop: (X₂ ≤ 0 ∧ 0 ≤ X₂ ∧ 2+X₀ ≤ X₃,(X₁,X₃) -> (X₃,X₃)
overappr. closed-form: 2⋅X₃ {O(n)}
runtime bound: X₀+X₃+1 {O(n)}
Solv. Size Bound - Lifting for t₆: l2→l4 and X₁: inf {Infinity}
Solv. Size Bound: t₁₆: l4→l5 for X₀
Solv. Size Bound: t₁₆: l4→l5 for X₁
cycle: [t₁₆: l4→l5; t₂: l5→l2; t₆: l2→l4]
loop: (X₂ ≤ 0 ∧ 0 ≤ X₂ ∧ 2+X₀ ≤ X₃,(X₁,X₃) -> (X₃,X₃)
overappr. closed-form: 2⋅X₃ {O(n)}
runtime bound: X₀+X₃+1 {O(n)}
Solv. Size Bound - Lifting for t₁₆: l4→l5 and X₁: inf {Infinity}
Solv. Size Bound: t₁₈: l4→l5 for X₀
Solv. Size Bound: t₁₈: l4→l5 for X₁
cycle: [t₁₈: l4→l5; t₂: l5→l2; t₆: l2→l4]
loop: (1 ≤ X₂ ∧ X₀+1 ≤ X₃,(X₁,X₃) -> (X₃,X₃)
overappr. closed-form: 2⋅X₃ {O(n)}
runtime bound: X₂+1 {O(n)}
Solv. Size Bound - Lifting for t₁₈: l4→l5 and X₁: inf {Infinity}
MPRF for transition t₂: l5(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, 0, X₁, X₄) :|: X₀+1 ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀+1 {O(n)}
MPRF for transition t₁₆: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀+1, X₃, X₂, X₃, X₄) :|: X₂ ≤ 0 ∧ 0 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
Solv. Size Bound: t₂: l5→l2 for X₁
Solv. Size Bound - Lifting for t₂: l5→l2 and X₃: inf {Infinity}
Solv. Size Bound - Lifting for t₆: l2→l4 and X₁: inf {Infinity}
Solv. Size Bound - Lifting for t₁₆: l4→l5 and X₁: inf {Infinity}
Solv. Size Bound - Lifting for t₁₈: l4→l5 and X₁: inf {Infinity}
MPRF for transition t₆: l2(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄) :|: X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀+1 {O(n)}
MPRF for transition t₁₈: l4(X₀, X₁, X₂, X₃, X₄) → l5(X₀, X₃, X₂, X₃, X₄) :|: 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀+1 {O(n)}
Solv. Size Bound: t₂: l5→l2 for X₁
Solv. Size Bound - Lifting for t₂: l5→l2 and X₃: inf {Infinity}
Solv. Size Bound - Lifting for t₆: l2→l4 and X₁: inf {Infinity}
Solv. Size Bound - Lifting for t₁₆: l4→l5 and X₁: inf {Infinity}
Solv. Size Bound - Lifting for t₁₈: l4→l5 and X₁: inf {Infinity}
Chain transitions t₉: l3→l1 and t₁₅: l1→l2 to t₂₈₁: l3→l2
Chain transitions t₇: l3→l1 and t₁₅: l1→l2 to t₂₈₂: l3→l2
Chain transitions t₂: l5→l2 and t₆: l2→l4 to t₂₈₃: l5→l4
Chain transitions t₂₈₂: l3→l2 and t₆: l2→l4 to t₂₈₄: l3→l4
Chain transitions t₂₈₂: l3→l2 and t₅: l2→l3 to t₂₈₅: l3→l3
Chain transitions t₂: l5→l2 and t₅: l2→l3 to t₂₈₆: l5→l3
Chain transitions t₂₈₁: l3→l2 and t₅: l2→l3 to t₂₈₇: l3→l3
Chain transitions t₂₈₁: l3→l2 and t₆: l2→l4 to t₂₈₈: l3→l4
Chain transitions t₂₈₁: l3→l2 and t₄: l2→l3 to t₂₈₉: l3→l3
Chain transitions t₂₈₂: l3→l2 and t₄: l2→l3 to t₂₉₀: l3→l3
Chain transitions t₂: l5→l2 and t₄: l2→l3 to t₂₉₁: l5→l3
Chain transitions t₁₄: l3→l2 and t₄: l2→l3 to t₂₉₂: l3→l3
Chain transitions t₁₄: l3→l2 and t₅: l2→l3 to t₂₉₃: l3→l3
Chain transitions t₁₄: l3→l2 and t₆: l2→l4 to t₂₉₄: l3→l4
Chain transitions t₂₈₃: l5→l4 and t₁₈: l4→l5 to t₂₉₅: l5→l5
Chain transitions t₂₉₄: l3→l4 and t₁₈: l4→l5 to t₂₉₆: l3→l5
Chain transitions t₂₉₄: l3→l4 and t₁₆: l4→l5 to t₂₉₇: l3→l5
Chain transitions t₂₈₃: l5→l4 and t₁₆: l4→l5 to t₂₉₈: l5→l5
Chain transitions t₂₈₈: l3→l4 and t₁₆: l4→l5 to t₂₉₉: l3→l5
Chain transitions t₂₈₈: l3→l4 and t₁₈: l4→l5 to t₃₀₀: l3→l5
Chain transitions t₂₈₄: l3→l4 and t₁₆: l4→l5 to t₃₀₁: l3→l5
Chain transitions t₂₈₄: l3→l4 and t₁₈: l4→l5 to t₃₀₂: l3→l5
Analysing control-flow refined program
Cut unsatisfiable transition t₂₉₅: l5→l5
Cut unsatisfiable transition t₂₉₉: l3→l5
Cut unsatisfiable transition t₃₀₁: l3→l5
Eliminate variables {X₄} that do not contribute to the problem
Found invariant X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l2
Found invariant X₁ ≤ X₀ ∧ 0 ≤ X₀ for location l6
Found invariant 0 ≤ X₀ for location l5
Found invariant X₁ ≤ X₀ ∧ 0 ≤ X₀ for location l8
Found invariant X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l1
Found invariant X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l4
Found invariant X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l3
Solv. Size Bound: t₃₇₉: l5→l5 for X₀
Solv. Size Bound: t₃₇₉: l5→l5 for X₁
Solv. Size Bound: t₃₇₉: l5→l5 for X₃
cycle: [t₃₇₉: l5→l5]
loop: (X₀+1 ≤ X₁ ∧ 0 ≤ 0 ∧ 0 ≤ 0,(X₁,X₃) -> (X₁,X₁)
overappr. closed-form: 2⋅X₁ {O(n)}
runtime bound: X₀+X₁+1 {O(n)}
Solv. Size Bound - Lifting for t₃₇₉: l5→l5 and X₃: inf {Infinity}
MPRF for transition t₃₇₂: l3(X₀, X₁, X₂, X₃) -{3}> l5(X₀+1, X₃, X₂, X₃) :|: X₂ ≤ 0 ∧ 0 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₃₇₃: l3(X₀, X₁, X₂, X₃) -{4}> l5(X₀, X₃-1, 1, X₃-1) :|: 1 ≤ F ∧ 0 ≤ 0 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₃₇₄: l3(X₀, X₁, X₂, X₃) -{4}> l5(X₀, X₃-1, 1, X₃-1) :|: F+1 ≤ 0 ∧ 0 ≤ 0 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₃₇₆: l5(X₀, X₁, X₂, X₃) -{2}> l3(X₀, X₁, 0, X₁) :|: X₀+1 ≤ X₁ ∧ 1 ≤ Temp_Int₁₁₈₄ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₃₇₇: l5(X₀, X₁, X₂, X₃) -{2}> l3(X₀, X₁, 0, X₁) :|: X₀+1 ≤ X₁ ∧ Temp_Int₁₂₁₃+1 ≤ 0 ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₃₇₉: l5(X₀, X₁, X₂, X₃) -{3}> l5(X₀+1, X₁, 0, X₁) :|: X₀+1 ≤ X₁ ∧ 0 ≤ 0 ∧ 0 ≤ 0 ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
Solv. Size Bound: t₃₇₉: l5→l5 for X₁
Solv. Size Bound - Lifting for t₃₇₉: l5→l5 and X₃: inf {Infinity}
MPRF for transition t₃₇₁: l3(X₀, X₁, X₂, X₃) -{3}> l5(X₀, X₃, X₂, X₃) :|: 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
2⋅X₀ {O(n)}
Solv. Size Bound: t₃₇₉: l5→l5 for X₁
Solv. Size Bound - Lifting for t₃₇₉: l5→l5 and X₃: inf {Infinity}
CFR did not improve the program. Rolling back
CFR did not improve the program. Rolling back
Analysing control-flow refined program
Found invariant X₃ ≤ X₁ ∧ 1 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ X₂ ≤ 0 ∧ 1+X₂ ≤ X₁ ∧ X₂ ≤ X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l2
Found invariant X₁ ≤ X₀ ∧ 0 ≤ X₀ for location l6
Found invariant 1+X₄ ≤ X₃ ∧ 1+X₄ ≤ X₁ ∧ 0 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ X₃ ≤ 1+X₄ ∧ 0 ≤ X₂+X₄ ∧ X₂ ≤ X₄ ∧ 1 ≤ X₁+X₄ ∧ X₁ ≤ 1+X₄ ∧ 0 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ X₃ ≤ X₁ ∧ 1 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ X₂ ≤ 0 ∧ 1+X₂ ≤ X₁ ∧ X₂ ≤ X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location n_l1___4
Found invariant X₃ ≤ X₁ ∧ 1 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ X₂ ≤ 0 ∧ 1+X₂ ≤ X₁ ∧ X₂ ≤ X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location n_l3___5
Found invariant X₄ ≤ X₃ ∧ 1+X₄ ≤ X₁ ∧ X₃ ≤ X₄ ∧ 1+X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location n_l2___3
Found invariant 0 ≤ X₀ for location l5
Found invariant X₁ ≤ X₀ ∧ 0 ≤ X₀ for location l8
Found invariant X₄ ≤ X₃ ∧ 1+X₄ ≤ X₁ ∧ X₃ ≤ X₄ ∧ 1+X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location n_l3___2
Found invariant X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location l4
Found invariant 1+X₄ ≤ X₃ ∧ 2+X₄ ≤ X₁ ∧ X₃ ≤ 1+X₄ ∧ 1+X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location n_l1___1
Solv. Size Bound: t₂: l5→l2 for X₁
Solv. Size Bound: t₂: l5→l2 for X₃
cycle: [t₂: l5→l2; t₆: l2→l4; t₁₈: l4→l5]
loop: (X₀+1 ≤ X₁ ∧ 1 ≤ 0,(X₁,X₃) -> (X₁,X₁)
overappr. closed-form: 2⋅X₁ {O(n)}
runtime bound: 1 {O(1)}
Solv. Size Bound - Lifting for t₂: l5→l2 and X₃: inf {Infinity}
Solv. Size Bound - Lifting for t₆: l2→l4 and X₁: inf {Infinity}
Solv. Size Bound - Lifting for t₁₆: l4→l5 and X₁: inf {Infinity}
Solv. Size Bound - Lifting for t₁₈: l4→l5 and X₁: inf {Infinity}
MPRF for transition t₈₁₆: n_l1___4(X₀, X₁, X₂, X₃, X₄) → n_l2___3(X₀, X₁, 1, X₃-1, X₃-1) :|: X₀ ≤ X₄ ∧ X₁ ≤ X₄+1 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₄+1 ∧ X₃ ≤ X₄+1 ∧ 0 ≤ X₀ ∧ 1+X₄ ≤ X₁ ∧ 0 ≤ X₂ ∧ 1+X₄ ≤ X₃ ∧ X₃ ≤ X₁ ∧ 0 ≤ X₂ ∧ X₂ ≤ 1 ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ 1+X₄ ≤ X₃ ∧ 1+X₄ ≤ X₃ ∧ 1+X₄ ≤ X₁ ∧ 0 ≤ X₄ ∧ 1 ≤ X₃+X₄ ∧ X₃ ≤ 1+X₄ ∧ 0 ≤ X₂+X₄ ∧ X₂ ≤ X₄ ∧ 1 ≤ X₁+X₄ ∧ X₁ ≤ 1+X₄ ∧ 0 ≤ X₀+X₄ ∧ X₀ ≤ X₄ ∧ X₃ ≤ X₁ ∧ 1 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ X₂ ≤ 0 ∧ 1+X₂ ≤ X₁ ∧ X₂ ≤ X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₈₂₄: n_l3___5(X₀, X₁, X₂, X₃, X₄) → n_l1___4(X₀, X₁, X₂, X₃, X₃-1) :|: X₂ ≤ 0 ∧ X₁ ≤ X₃ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ 0 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ 0 ≤ X₂ ∧ X₃ ≤ X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ X₃ ≤ X₁ ∧ 1 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ X₂ ≤ 0 ∧ 1+X₂ ≤ X₁ ∧ X₂ ≤ X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₈₂₅: n_l3___5(X₀, X₁, X₂, X₃, X₄) → n_l1___4(X₀, X₁, X₂, X₃, X₃-1) :|: X₂ ≤ 0 ∧ X₁ ≤ X₃ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ 0 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ 0 ≤ X₂ ∧ X₃ ≤ X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ X₃ ≤ X₁ ∧ 1 ≤ X₃ ∧ 1 ≤ X₂+X₃ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ X₂ ≤ 0 ∧ 1+X₂ ≤ X₁ ∧ X₂ ≤ X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₈₄₁: n_l2___3(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄) :|: X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 0 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ X₄ ≤ X₃ ∧ 1+X₄ ≤ X₁ ∧ X₃ ≤ X₄ ∧ 1+X₃ ≤ X₁ ∧ X₂ ≤ 1 ∧ X₂ ≤ X₁ ∧ X₂ ≤ 1+X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
X₀+1 {O(n)}
Solv. Size Bound: t₂: l5→l2 for X₁
Solv. Size Bound - Lifting for t₂: l5→l2 and X₃: inf {Infinity}
Solv. Size Bound - Lifting for t₆: l2→l4 and X₁: inf {Infinity}
Solv. Size Bound - Lifting for t₁₆: l4→l5 and X₁: inf {Infinity}
Solv. Size Bound - Lifting for t₁₈: l4→l5 and X₁: inf {Infinity}
CFR did not improve the program. Rolling back
CFR did not improve the program. Rolling back
All Bounds
Timebounds
Overall timebound:inf {Infinity}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: X₀+1 {O(n)}
t₃: 1 {O(1)}
t₄: inf {Infinity}
t₅: inf {Infinity}
t₆: X₀+1 {O(n)}
t₇: inf {Infinity}
t₉: inf {Infinity}
t₁₄: inf {Infinity}
t₁₅: inf {Infinity}
t₁₆: X₀ {O(n)}
t₁₈: X₀+1 {O(n)}
t₁₉: 1 {O(1)}
Costbounds
Overall costbound: inf {Infinity}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: X₀+1 {O(n)}
t₃: 1 {O(1)}
t₄: inf {Infinity}
t₅: inf {Infinity}
t₆: X₀+1 {O(n)}
t₇: inf {Infinity}
t₉: inf {Infinity}
t₁₄: inf {Infinity}
t₁₅: inf {Infinity}
t₁₆: X₀ {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₀: 0 {O(1)}
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₂: 0 {O(1)}
t₃, X₀: 2⋅X₀ {O(n)}
t₃, X₂: X₂+1 {O(n)}
t₄, X₀: X₀ {O(n)}
t₄, X₂: 1 {O(1)}
t₅, X₀: X₀ {O(n)}
t₅, X₂: 1 {O(1)}
t₆, X₀: X₀ {O(n)}
t₆, X₂: 1 {O(1)}
t₇, X₀: X₀ {O(n)}
t₇, X₂: 1 {O(1)}
t₉, X₀: X₀ {O(n)}
t₉, X₂: 1 {O(1)}
t₁₄, X₀: X₀ {O(n)}
t₁₄, X₂: 1 {O(1)}
t₁₅, X₀: X₀ {O(n)}
t₁₅, X₂: 1 {O(1)}
t₁₆, X₀: X₀ {O(n)}
t₁₆, X₂: 0 {O(1)}
t₁₈, X₀: X₀ {O(n)}
t₁₈, X₂: 1 {O(1)}
t₁₉, X₀: 2⋅X₀ {O(n)}
t₁₉, X₂: X₂+1 {O(n)}