Initial Problem
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈
Temp_Vars: nondef.0, nondef.1
Locations: l0, l1, l2, l3, l4, l5, l6, l7, l8, l9
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l7(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈)
t₇: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l4(X₀, X₁, X₂, X₀+X₂, X₄, X₅, X₆, X₇, X₈) :|: X₂ < 0
t₈: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l4(X₀, X₁, X₂, X₀-X₂, X₄, X₅, X₆, X₇, X₈) :|: 0 ≤ X₂
t₄: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈)
t₆: l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l1(X₀, X₁, nondef.0, X₃, X₄, X₅, X₆, X₇, X₈)
t₁₀: l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l5(X₀, X₁, X₂, X₃, nondef.1, X₅, X₆, X₇, X₈)
t₁₁: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l6(X₃, X₁+1-X₄, X₂, X₃, X₄, X₅, X₆, X₇, X₈) :|: X₄ < 0
t₁₂: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l6(X₃, X₁+X₄+1, X₂, X₃, X₄, X₅, X₆, X₇, X₈) :|: 0 ≤ X₄
t₂: l6(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) :|: 1+X₁ ≤ X₀
t₃: l6(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l8(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) :|: X₀ < X₁+1
t₁: l7(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l6(X₅, X₆, X₂, X₃, X₄, X₅, X₆, X₇, X₈)
t₁₃: l8(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈) → l9(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈)
Preprocessing
Eliminate variables {X₇,X₈} that do not contribute to the problem
Found invariant 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀ for location l2
Found invariant X₆ ≤ X₁ ∧ X₀ ≤ X₅ for location l6
Found invariant 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ X₃ ≤ X₅ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ X₃ ≤ X₀ ∧ 1+X₁ ≤ X₀ for location l5
Found invariant X₆ ≤ X₁ ∧ X₀ ≤ X₅ ∧ X₀ ≤ X₁ for location l8
Found invariant 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀ for location l1
Found invariant 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ X₃ ≤ X₅ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ X₃ ≤ X₀ ∧ 1+X₁ ≤ X₀ for location l4
Found invariant X₆ ≤ X₁ ∧ X₀ ≤ X₅ ∧ X₀ ≤ X₁ for location l9
Found invariant 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀ for location l3
Problem after Preprocessing
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄, X₅, X₆
Temp_Vars: nondef.0, nondef.1
Locations: l0, l1, l2, l3, l4, l5, l6, l7, l8, l9
Transitions:
t₂₆: l0(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l7(X₀, X₁, X₂, X₃, X₄, X₅, X₆)
t₂₇: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l4(X₀, X₁, X₂, X₀+X₂, X₄, X₅, X₆) :|: X₂ < 0 ∧ 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀
t₂₈: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l4(X₀, X₁, X₂, X₀-X₂, X₄, X₅, X₆) :|: 0 ≤ X₂ ∧ 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀
t₂₉: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆) :|: 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀
t₃₀: l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l1(X₀, X₁, nondef.0, X₃, X₄, X₅, X₆) :|: 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀
t₃₁: l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l5(X₀, X₁, X₂, X₃, nondef.1, X₅, X₆) :|: 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ X₃ ≤ X₅ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ X₃ ≤ X₀ ∧ 1+X₁ ≤ X₀
t₃₂: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l6(X₃, X₁+1-X₄, X₂, X₃, X₄, X₅, X₆) :|: X₄ < 0 ∧ 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ X₃ ≤ X₅ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ X₃ ≤ X₀ ∧ 1+X₁ ≤ X₀
t₃₃: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l6(X₃, X₁+X₄+1, X₂, X₃, X₄, X₅, X₆) :|: 0 ≤ X₄ ∧ 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ X₃ ≤ X₅ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ X₃ ≤ X₀ ∧ 1+X₁ ≤ X₀
t₃₄: l6(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) :|: 1+X₁ ≤ X₀ ∧ X₆ ≤ X₁ ∧ X₀ ≤ X₅
t₃₅: l6(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l8(X₀, X₁, X₂, X₃, X₄, X₅, X₆) :|: X₀ < X₁+1 ∧ X₆ ≤ X₁ ∧ X₀ ≤ X₅
t₃₆: l7(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l6(X₅, X₆, X₂, X₃, X₄, X₅, X₆)
t₃₇: l8(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l9(X₀, X₁, X₂, X₃, X₄, X₅, X₆) :|: X₆ ≤ X₁ ∧ X₀ ≤ X₅ ∧ X₀ ≤ X₁
MPRF for transition t₂₇: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l4(X₀, X₁, X₂, X₀+X₂, X₄, X₅, X₆) :|: X₂ < 0 ∧ 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀ of depth 1:
new bound:
X₅+X₆ {O(n)}
MPRF:
l3 [X₀-X₆ ]
l1 [X₀-X₆ ]
l4 [X₃-X₆ ]
l5 [X₃-X₆ ]
l6 [X₀-X₆ ]
l2 [X₀-X₆ ]
MPRF for transition t₂₈: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l4(X₀, X₁, X₂, X₀-X₂, X₄, X₅, X₆) :|: 0 ≤ X₂ ∧ 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀ of depth 1:
new bound:
X₅+X₆ {O(n)}
MPRF:
l3 [X₀-X₁ ]
l1 [X₀-X₁ ]
l4 [X₀-X₁-1 ]
l5 [X₃-X₁-1 ]
l6 [X₀-X₁ ]
l2 [X₀-X₁ ]
MPRF for transition t₂₉: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆) :|: 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀ of depth 1:
new bound:
X₅+X₆ {O(n)}
MPRF:
l3 [X₅-X₁-1 ]
l1 [X₅-X₁-1 ]
l4 [X₅-X₁-1 ]
l5 [X₅-X₁-1 ]
l6 [X₅-X₁ ]
l2 [X₅-X₁ ]
MPRF for transition t₃₀: l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l1(X₀, X₁, nondef.0, X₃, X₄, X₅, X₆) :|: 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ 1+X₁ ≤ X₀ of depth 1:
new bound:
X₅+X₆ {O(n)}
MPRF:
l3 [X₅-X₁ ]
l1 [X₅-X₁-1 ]
l4 [X₅-X₁-1 ]
l5 [X₅-X₁-1 ]
l6 [X₅-X₁ ]
l2 [X₅-X₁ ]
MPRF for transition t₃₁: l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l5(X₀, X₁, X₂, X₃, nondef.1, X₅, X₆) :|: 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ X₃ ≤ X₅ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ X₃ ≤ X₀ ∧ 1+X₁ ≤ X₀ of depth 1:
new bound:
X₅+X₆ {O(n)}
MPRF:
l3 [X₅-X₁ ]
l1 [X₅-X₁ ]
l4 [X₅-X₁ ]
l5 [X₅-X₁-1 ]
l6 [X₅-X₁ ]
l2 [X₅-X₁ ]
MPRF for transition t₃₂: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l6(X₃, X₁+1-X₄, X₂, X₃, X₄, X₅, X₆) :|: X₄ < 0 ∧ 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ X₃ ≤ X₅ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ X₃ ≤ X₀ ∧ 1+X₁ ≤ X₀ of depth 1:
new bound:
2⋅X₅+2⋅X₆ {O(n)}
MPRF:
l3 [2⋅X₅-X₁-X₆ ]
l1 [2⋅X₅-X₁-X₆ ]
l4 [2⋅X₅-X₁-X₆ ]
l5 [2⋅X₅-X₁-X₆ ]
l6 [2⋅X₅-X₁-X₆ ]
l2 [2⋅X₅-X₁-X₆ ]
MPRF for transition t₃₃: l5(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l6(X₃, X₁+X₄+1, X₂, X₃, X₄, X₅, X₆) :|: 0 ≤ X₄ ∧ 1+X₆ ≤ X₅ ∧ X₆ ≤ X₁ ∧ 1+X₆ ≤ X₀ ∧ X₃ ≤ X₅ ∧ 1+X₁ ≤ X₅ ∧ X₀ ≤ X₅ ∧ X₃ ≤ X₀ ∧ 1+X₁ ≤ X₀ of depth 1:
new bound:
X₅+X₆ {O(n)}
MPRF:
l3 [X₅-X₁ ]
l1 [X₅-X₁ ]
l4 [X₅-X₁ ]
l5 [X₅-X₁ ]
l6 [X₅-X₁ ]
l2 [X₅-X₁ ]
MPRF for transition t₃₄: l6(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) :|: 1+X₁ ≤ X₀ ∧ X₆ ≤ X₁ ∧ X₀ ≤ X₅ of depth 1:
new bound:
X₅+X₆ {O(n)}
MPRF:
l3 [X₀-X₁-1 ]
l1 [X₀-X₁-1 ]
l4 [X₀-X₁-1 ]
l5 [X₃-X₁-1 ]
l6 [X₀-X₁ ]
l2 [X₀-X₁-1 ]
All Bounds
Timebounds
Overall timebound:9⋅X₅+9⋅X₆+4 {O(n)}
t₂₆: 1 {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₃₂: 2⋅X₅+2⋅X₆ {O(n)}
t₃₃: X₅+X₆ {O(n)}
t₃₄: X₅+X₆ {O(n)}
t₃₅: 1 {O(1)}
t₃₆: 1 {O(1)}
t₃₇: 1 {O(1)}
Costbounds
Overall costbound: 9⋅X₅+9⋅X₆+4 {O(n)}
t₂₆: 1 {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₃₂: 2⋅X₅+2⋅X₆ {O(n)}
t₃₃: X₅+X₆ {O(n)}
t₃₄: X₅+X₆ {O(n)}
t₃₅: 1 {O(1)}
t₃₆: 1 {O(1)}
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₅: 3⋅X₅ {O(n)}
t₃₅, X₆: 3⋅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₅: 3⋅X₅ {O(n)}
t₃₇, X₆: 3⋅X₆ {O(n)}