Initial Problem

Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: F
Locations: l0, l1, l2
Transitions:
t₁: l0(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, X₃, X₄) :|: 2 ≤ X₀ ∧ 2 ≤ X₂
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l2(X₀, F, X₂, X₃, X₄) :|: X₀ ≤ 1
t₃: l1(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, 1+X₃, 1+X₄) :|: 0 ≤ X₄ ∧ 2+X₃ ≤ 0
t₄: l1(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁, X₂, 1+X₃, 1+X₄) :|: 2+X₄ ≤ 0 ∧ 2+X₃ ≤ 0
t₂: l1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, F, X₂, X₃, X₄) :|: 0 ≤ 1+X₃

Preprocessing

Eliminate variables {F,X₁} that do not contribute to the problem

Found invariant 2 ≤ X₁ ∧ 4 ≤ X₀+X₁ ∧ 2 ≤ X₀ for location l1

Problem after Preprocessing

Start: l0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: l0, l1, l2
Transitions:
t₁₂: l0(X₀, X₁, X₂, X₃) → l1(X₀, X₁, X₂, X₃) :|: 2 ≤ X₀ ∧ 2 ≤ X₁
t₁₃: l0(X₀, X₁, X₂, X₃) → l2(X₀, X₁, X₂, X₃) :|: X₀ ≤ 1
t₁₄: l1(X₀, X₁, X₂, X₃) → l1(X₀, X₁, 1+X₂, 1+X₃) :|: 0 ≤ X₃ ∧ 2+X₂ ≤ 0 ∧ 2 ≤ X₁ ∧ 4 ≤ X₀+X₁ ∧ 2 ≤ X₀
t₁₅: l1(X₀, X₁, X₂, X₃) → l1(X₀, X₁, 1+X₂, 1+X₃) :|: 2+X₃ ≤ 0 ∧ 2+X₂ ≤ 0 ∧ 2 ≤ X₁ ∧ 4 ≤ X₀+X₁ ∧ 2 ≤ X₀
t₁₆: l1(X₀, X₁, X₂, X₃) → l2(X₀, X₁, X₂, X₃) :|: 0 ≤ 1+X₂ ∧ 2 ≤ X₁ ∧ 4 ≤ X₀+X₁ ∧ 2 ≤ X₀

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

new bound:

X₂ {O(n)}

MPRF for transition t₁₅: l1(X₀, X₁, X₂, X₃) → l1(X₀, X₁, 1+X₂, 1+X₃) :|: 2+X₃ ≤ 0 ∧ 2+X₂ ≤ 0 ∧ 2 ≤ X₁ ∧ 4 ≤ X₀+X₁ ∧ 2 ≤ X₀ of depth 1:

new bound:

X₂ {O(n)}

All Bounds

Timebounds

Overall timebound:2⋅X₂+3 {O(n)}
t₁₂: 1 {O(1)}
t₁₃: 1 {O(1)}
t₁₄: X₂ {O(n)}
t₁₅: X₂ {O(n)}
t₁₆: 1 {O(1)}

Costbounds

Overall costbound: 2⋅X₂+3 {O(n)}
t₁₂: 1 {O(1)}
t₁₃: 1 {O(1)}
t₁₄: X₂ {O(n)}
t₁₅: X₂ {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₂+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₂: 3⋅X₂ {O(n)}
t₁₆, X₃: 3⋅X₃+X₂ {O(n)}