Initial Problem

Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇
Temp_Vars:
Locations: l0, l1, l2, l3, l4, l5, l6, l7
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l1(3, 3, 0, 3, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇)
t₃: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l3(X₀, X₁, X₂, X₃, X₃, X₃, -3, 4, 0, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇)
t₁₃: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l1(X₀, X₁, X₂, X₁, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) :|: 1+X₀ ≤ X₂
t₁: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) :|: X₀ ≤ 0 ∧ X₂ ≤ X₀
t₂: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l2(X₀, X₁+X₀, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) :|: 1 ≤ X₀ ∧ X₂ ≤ X₀
t₄: l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) :|: X₆ ≤ 0 ∧ X₈ ≤ X₆
t₅: l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇+X₆, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) :|: 1 ≤ X₆ ∧ X₈ ≤ X₆
t₁₂: l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₇, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) :|: 1+X₆ ≤ X₈
t₆: l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₁₀, X₁₀, X₁₀, 3, -6, 0, X₁₅, X₁₆, X₁₇)
t₇: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) :|: X₁₂ ≤ 0 ∧ X₁₄ ≤ X₁₂
t₈: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃+X₁₂, X₁₄, X₁₅, X₁₆, X₁₇) :|: 1 ≤ X₁₂ ∧ X₁₄ ≤ X₁₂
t₁₁: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l6(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₃, X₁₇) :|: 1+X₁₂ ≤ X₁₄
t₉: l6(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l7(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₆, X₁₆, X₁₆) :|: X₅ ≤ 4
t₁₀: l6(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₅, X₁₆, X₁₇) → l7(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄, X₁₆, X₁₆, X₁₆) :|: 5 ≤ X₅

Preprocessing

Cut unreachable locations [l2] from the program graph

Cut unsatisfiable transition t₄: l3→l3

Cut unsatisfiable transition t₅: l3→l3

Cut unsatisfiable transition t₇: l5→l5

Cut unsatisfiable transition t₁₁: l5→l6

Cut unreachable locations [l6; l7] from the program graph

Eliminate variables {X₀,X₁,X₂,X₃,X₄,X₅,X₇,X₉,X₁₀,X₁₁,X₁₃,X₁₅,X₁₆,X₁₇} that do not contribute to the problem

Found invariant X₃ ≤ 0 ∧ 3+X₃ ≤ X₂ ∧ X₂+X₃ ≤ 3 ∧ X₃ ≤ X₁ ∧ X₁+X₃ ≤ 0 ∧ X₃ ≤ 3+X₀ ∧ 3+X₀+X₃ ≤ 0 ∧ 0 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ X₂ ≤ 3+X₃ ∧ 0 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 0 ≤ 3+X₀+X₃ ∧ 3+X₀ ≤ X₃ ∧ X₂ ≤ 3 ∧ X₂ ≤ 3+X₁ ∧ X₁+X₂ ≤ 3 ∧ X₂ ≤ 6+X₀ ∧ X₀+X₂ ≤ 0 ∧ 3 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 3+X₁ ≤ X₂ ∧ 0 ≤ X₀+X₂ ∧ 6+X₀ ≤ X₂ ∧ X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀ for location l5

Found invariant X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀ for location l4

Found invariant X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀ for location l3

Problem after Preprocessing

Start: l0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: l0, l1, l3, l4, l5
Transitions:
t₃₆: l0(X₀, X₁, X₂, X₃) → l1(X₀, X₁, X₂, X₃)
t₃₇: l1(X₀, X₁, X₂, X₃) → l3(-3, 0, X₂, X₃)
t₃₈: l3(X₀, X₁, X₂, X₃) → l4(X₀, X₁, X₂, X₃) :|: 1+X₀ ≤ X₁ ∧ X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀
t₃₉: l4(X₀, X₁, X₂, X₃) → l5(X₀, X₁, 3, 0) :|: X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀
t₄₀: l5(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂ ∧ X₃ ≤ X₂ ∧ X₃ ≤ 0 ∧ 3+X₃ ≤ X₂ ∧ X₂+X₃ ≤ 3 ∧ X₃ ≤ X₁ ∧ X₁+X₃ ≤ 0 ∧ X₃ ≤ 3+X₀ ∧ 3+X₀+X₃ ≤ 0 ∧ 0 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ X₂ ≤ 3+X₃ ∧ 0 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 0 ≤ 3+X₀+X₃ ∧ 3+X₀ ≤ X₃ ∧ X₂ ≤ 3 ∧ X₂ ≤ 3+X₁ ∧ X₁+X₂ ≤ 3 ∧ X₂ ≤ 6+X₀ ∧ X₀+X₂ ≤ 0 ∧ 3 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 3+X₁ ≤ X₂ ∧ 0 ≤ X₀+X₂ ∧ 6+X₀ ≤ X₂ ∧ X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀

Analysing control-flow refined program

Found invariant X₃ ≤ 0 ∧ 3+X₃ ≤ X₂ ∧ X₂+X₃ ≤ 3 ∧ X₃ ≤ X₁ ∧ X₁+X₃ ≤ 0 ∧ X₃ ≤ 3+X₀ ∧ 3+X₀+X₃ ≤ 0 ∧ 0 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ X₂ ≤ 3+X₃ ∧ 0 ≤ X₁+X₃ ∧ X₁ ≤ X₃ ∧ 0 ≤ 3+X₀+X₃ ∧ 3+X₀ ≤ X₃ ∧ X₂ ≤ 3 ∧ X₂ ≤ 3+X₁ ∧ X₁+X₂ ≤ 3 ∧ X₂ ≤ 6+X₀ ∧ X₀+X₂ ≤ 0 ∧ 3 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 3+X₁ ≤ X₂ ∧ 0 ≤ X₀+X₂ ∧ 6+X₀ ≤ X₂ ∧ X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀ for location l5

Found invariant X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀ for location l4

Found invariant X₁ ≤ 0 ∧ X₁ ≤ 3+X₀ ∧ 3+X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ 3+X₀+X₁ ∧ 3+X₀ ≤ X₁ ∧ 3+X₀ ≤ 0 ∧ 0 ≤ 3+X₀ for location l3

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₃₈: 1 {O(1)}
t₃₉: 1 {O(1)}
t₄₀: inf {Infinity}

Costbounds

Overall costbound: inf {Infinity}
t₃₆: 1 {O(1)}
t₃₇: 1 {O(1)}
t₃₈: 1 {O(1)}
t₃₉: 1 {O(1)}
t₄₀: inf {Infinity}

Sizebounds

t₃₆, X₀: X₀ {O(n)}
t₃₆, X₁: X₁ {O(n)}
t₃₆, X₂: X₂ {O(n)}
t₃₆, X₃: X₃ {O(n)}
t₃₇, X₀: 3 {O(1)}
t₃₇, X₁: 0 {O(1)}
t₃₇, X₂: X₂ {O(n)}
t₃₇, X₃: X₃ {O(n)}
t₃₈, X₀: 3 {O(1)}
t₃₈, X₁: 0 {O(1)}
t₃₈, X₂: X₂ {O(n)}
t₃₈, X₃: X₃ {O(n)}
t₃₉, X₀: 3 {O(1)}
t₃₉, X₁: 0 {O(1)}
t₃₉, X₂: 3 {O(1)}
t₃₉, X₃: 0 {O(1)}
t₄₀, X₀: 3 {O(1)}
t₄₀, X₁: 0 {O(1)}
t₄₀, X₂: 3 {O(1)}
t₄₀, X₃: 0 {O(1)}