Initial Problem

Start: f0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: F, G
Locations: f0, f15, f16, f23, f7
Transitions:
t₄: f0(X₀, X₁, X₂, X₃, X₄) → f15(F, 0, F, G, X₄) :|: F ≤ 100 ∧ 1 ≤ F
t₂: f0(X₀, X₁, X₂, X₃, X₄) → f7(F, X₁, F, X₃, X₄) :|: F ≤ 0
t₃: f0(X₀, X₁, X₂, X₃, X₄) → f7(F, X₁, F, X₃, X₄) :|: 101 ≤ F
t₀: f15(X₀, X₁, X₂, X₃, X₄) → f16(X₀, X₁, X₂, X₃, X₄) :|: 1+X₁ ≤ X₀
t₁: f15(X₀, X₁, X₂, X₃, X₄) → f16(X₀, X₁, X₂, X₃, X₄) :|: 1+X₀ ≤ X₁
t₈: f15(X₀, X₁, X₂, X₃, X₄) → f23(X₀, X₀-1, X₂, X₃, 0) :|: X₁ ≤ X₀ ∧ X₀ ≤ X₁
t₅: f16(X₀, X₁, X₂, X₃, X₄) → f15(X₀, 1+X₁, X₂, X₃, X₄)
t₉: f16(X₀, X₁, X₂, X₃, X₄) → f23(X₀, X₁-1, X₂, X₃, 0)
t₆: f23(X₀, X₁, X₂, X₃, X₄) → f23(X₀, X₁, X₂, X₃, 1+X₄) :|: 1+X₄ ≤ X₁
t₇: f23(X₀, X₁, X₂, X₃, X₄) → f7(X₀, X₁, X₂, X₃, X₄) :|: X₁ ≤ X₄

Preprocessing

Eliminate variables [G; X₂; X₃] that do not contribute to the problem

Found invariant X₁ ≤ 100 ∧ X₁ ≤ X₀ ∧ X₀+X₁ ≤ 200 ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ X₀ ≤ 100+X₁ ∧ X₀ ≤ 100 ∧ 1 ≤ X₀ for location f15

Found invariant X₂ ≤ 99 ∧ X₂ ≤ 1+X₁ ∧ X₁+X₂ ≤ 198 ∧ 1+X₂ ≤ X₀ ∧ X₀+X₂ ≤ 199 ∧ 0 ≤ X₂ ∧ 0 ≤ 1+X₁+X₂ ∧ X₁ ≤ 99+X₂ ∧ 1 ≤ X₀+X₂ ∧ X₀ ≤ 100+X₂ ∧ X₁ ≤ 99 ∧ 1+X₁ ≤ X₀ ∧ X₀+X₁ ≤ 199 ∧ 0 ≤ 1+X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ 101+X₁ ∧ X₀ ≤ 100 ∧ 1 ≤ X₀ for location f23

Found invariant X₁ ≤ 99 ∧ 1+X₁ ≤ X₀ ∧ X₀+X₁ ≤ 199 ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ X₀ ≤ 100+X₁ ∧ X₀ ≤ 100 ∧ 1 ≤ X₀ for location f16

Cut unsatisfiable transition [t₂₂: f15→f16]

Problem after Preprocessing

Start: f0
Program_Vars: X₀, X₁, X₂
Temp_Vars: F
Locations: f0, f15, f16, f23, f7
Transitions:
t₁₈: f0(X₀, X₁, X₂) → f15(F, 0, X₂) :|: F ≤ 100 ∧ 1 ≤ F
t₁₉: f0(X₀, X₁, X₂) → f7(F, X₁, X₂) :|: F ≤ 0
t₂₀: f0(X₀, X₁, X₂) → f7(F, X₁, X₂) :|: 101 ≤ F
t₂₁: f15(X₀, X₁, X₂) → f16(X₀, X₁, X₂) :|: 1+X₁ ≤ X₀ ∧ X₀+X₁ ≤ 200 ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₁ ∧ X₁ ≤ 100 ∧ 1 ≤ X₀ ∧ 1 ≤ X₀+X₁ ∧ X₁ ≤ X₀ ∧ 0 ≤ X₁
t₂₃: f15(X₀, X₁, X₂) → f23(X₀, X₀-1, 0) :|: X₁ ≤ X₀ ∧ X₀ ≤ X₁ ∧ X₀+X₁ ≤ 200 ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₁ ∧ X₁ ≤ 100 ∧ 1 ≤ X₀ ∧ 1 ≤ X₀+X₁ ∧ 0 ≤ X₁
t₂₄: f16(X₀, X₁, X₂) → f15(X₀, 1+X₁, X₂) :|: X₀+X₁ ≤ 199 ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₁ ∧ X₁ ≤ 99 ∧ 1 ≤ X₀ ∧ 1 ≤ X₀+X₁ ∧ 1+X₁ ≤ X₀ ∧ 0 ≤ X₁
t₂₅: f16(X₀, X₁, X₂) → f23(X₀, X₁-1, 0) :|: X₀+X₁ ≤ 199 ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₁ ∧ X₁ ≤ 99 ∧ 1 ≤ X₀ ∧ 1 ≤ X₀+X₁ ∧ 1+X₁ ≤ X₀ ∧ 0 ≤ X₁
t₂₆: f23(X₀, X₁, X₂) → f23(X₀, X₁, 1+X₂) :|: 1+X₂ ≤ X₁ ∧ X₀+X₁ ≤ 199 ∧ X₀+X₂ ≤ 199 ∧ X₁+X₂ ≤ 198 ∧ X₀ ≤ 101+X₁ ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₂ ∧ X₁ ≤ 99 ∧ X₁ ≤ 99+X₂ ∧ X₂ ≤ 99 ∧ 0 ≤ 1+X₁ ∧ 0 ≤ 1+X₁+X₂ ∧ X₂ ≤ 1+X₁ ∧ 1 ≤ X₀ ∧ 1+X₁ ≤ X₀ ∧ 1 ≤ X₀+X₂ ∧ 1+X₂ ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₂
t₂₇: f23(X₀, X₁, X₂) → f7(X₀, X₁, X₂) :|: X₁ ≤ X₂ ∧ X₀+X₁ ≤ 199 ∧ X₀+X₂ ≤ 199 ∧ X₁+X₂ ≤ 198 ∧ X₀ ≤ 101+X₁ ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₂ ∧ X₁ ≤ 99 ∧ X₁ ≤ 99+X₂ ∧ X₂ ≤ 99 ∧ 0 ≤ 1+X₁ ∧ 0 ≤ 1+X₁+X₂ ∧ X₂ ≤ 1+X₁ ∧ 1 ≤ X₀ ∧ 1+X₁ ≤ X₀ ∧ 1 ≤ X₀+X₂ ∧ 1+X₂ ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₂

MPRF for transition t₂₁: f15(X₀, X₁, X₂) → f16(X₀, X₁, X₂) :|: 1+X₁ ≤ X₀ ∧ X₀+X₁ ≤ 200 ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₁ ∧ X₁ ≤ 100 ∧ 1 ≤ X₀ ∧ 1 ≤ X₀+X₁ ∧ X₁ ≤ X₀ ∧ 0 ≤ X₁ of depth 1:

new bound:

101 {O(1)}

MPRF:

• f15: [101-X₁]
• f16: [100-X₁]

MPRF for transition t₂₄: f16(X₀, X₁, X₂) → f15(X₀, 1+X₁, X₂) :|: X₀+X₁ ≤ 199 ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₁ ∧ X₁ ≤ 99 ∧ 1 ≤ X₀ ∧ 1 ≤ X₀+X₁ ∧ 1+X₁ ≤ X₀ ∧ 0 ≤ X₁ of depth 1:

new bound:

100 {O(1)}

MPRF:

• f15: [100-X₁]
• f16: [100-X₁]

MPRF for transition t₂₆: f23(X₀, X₁, X₂) → f23(X₀, X₁, 1+X₂) :|: 1+X₂ ≤ X₁ ∧ X₀+X₁ ≤ 199 ∧ X₀+X₂ ≤ 199 ∧ X₁+X₂ ≤ 198 ∧ X₀ ≤ 101+X₁ ∧ X₀ ≤ 100 ∧ X₀ ≤ 100+X₂ ∧ X₁ ≤ 99 ∧ X₁ ≤ 99+X₂ ∧ X₂ ≤ 99 ∧ 0 ≤ 1+X₁ ∧ 0 ≤ 1+X₁+X₂ ∧ X₂ ≤ 1+X₁ ∧ 1 ≤ X₀ ∧ 1+X₁ ≤ X₀ ∧ 1 ≤ X₀+X₂ ∧ 1+X₂ ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₂ of depth 1:

new bound:

200 {O(1)}

MPRF:

• f23: [100-X₂]

All Bounds

Timebounds

Overall timebound:407 {O(1)}
t₁₈: 1 {O(1)}
t₁₉: 1 {O(1)}
t₂₀: 1 {O(1)}
t₂₁: 101 {O(1)}
t₂₃: 1 {O(1)}
t₂₄: 100 {O(1)}
t₂₅: 1 {O(1)}
t₂₆: 200 {O(1)}
t₂₇: 1 {O(1)}

Costbounds

Overall costbound: 407 {O(1)}
t₁₈: 1 {O(1)}
t₁₉: 1 {O(1)}
t₂₀: 1 {O(1)}
t₂₁: 101 {O(1)}
t₂₃: 1 {O(1)}
t₂₄: 100 {O(1)}
t₂₅: 1 {O(1)}
t₂₆: 200 {O(1)}
t₂₇: 1 {O(1)}

Sizebounds

t₁₈, X₀: 100 {O(1)}
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₀: 100 {O(1)}
t₂₁, X₁: 99 {O(1)}
t₂₁, X₂: X₂ {O(n)}
t₂₃, X₀: 100 {O(1)}
t₂₃, X₁: 99 {O(1)}
t₂₃, X₂: 0 {O(1)}
t₂₄, X₀: 100 {O(1)}
t₂₄, X₁: 100 {O(1)}
t₂₄, X₂: X₂ {O(n)}
t₂₅, X₀: 100 {O(1)}
t₂₅, X₁: 98 {O(1)}
t₂₅, X₂: 0 {O(1)}
t₂₆, X₀: 100 {O(1)}
t₂₆, X₁: 99 {O(1)}
t₂₆, X₂: 99 {O(1)}
t₂₇, X₀: 100 {O(1)}
t₂₇, X₁: 99 {O(1)}
t₂₇, X₂: 99 {O(1)}