Initial Problem

Start: f0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: f0, f14, f6
Transitions:
t₀: f0(X₀, X₁, X₂, X₃) → f6(X₁, X₁, X₃, X₃)
t₃: f6(X₀, X₁, X₂, X₃) → f14(0, X₁, X₂, X₃) :|: 1+X₁ ≤ X₃ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0
t₄: f6(X₀, X₁, X₂, X₃) → f14(0, X₁, X₂, X₃) :|: 1+X₃ ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0
t₅: f6(X₀, X₁, X₂, X₃) → f14(0, X₁, X₂, X₁) :|: 0 ≤ X₀ ∧ X₀ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₁ ≤ X₃
t₁: f6(X₀, X₁, X₂, X₃) → f6(X₀-1, X₁, X₂-1, X₃) :|: 1+X₀ ≤ 0
t₂: f6(X₀, X₁, X₂, X₃) → f6(X₀-1, X₁, X₂-1, X₃) :|: 1 ≤ X₀

Preprocessing

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

Found invariant 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location f14

Found invariant X₀ ≤ X₁ for location f6

Problem after Preprocessing

Start: f0
Program_Vars: X₀, X₁, X₂
Temp_Vars:
Locations: f0, f14, f6
Transitions:
t₁₅: f0(X₀, X₁, X₂) → f6(X₁, X₁, X₂)
t₁₆: f6(X₀, X₁, X₂) → f14(0, X₁, X₂) :|: 1+X₁ ≤ X₂ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0 ∧ X₀ ≤ X₁
t₁₇: f6(X₀, X₁, X₂) → f14(0, X₁, X₂) :|: 1+X₂ ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0 ∧ X₀ ≤ X₁
t₁₈: f6(X₀, X₁, X₂) → f14(0, X₁, X₁) :|: 0 ≤ X₀ ∧ X₀ ≤ 0 ∧ X₂ ≤ X₁ ∧ X₁ ≤ X₂ ∧ X₀ ≤ X₁
t₁₉: f6(X₀, X₁, X₂) → f6(X₀-1, X₁, X₂) :|: 1+X₀ ≤ 0 ∧ X₀ ≤ X₁
t₂₀: f6(X₀, X₁, X₂) → f6(X₀-1, X₁, X₂) :|: 1 ≤ X₀ ∧ X₀ ≤ X₁

MPRF for transition t₂₀: f6(X₀, X₁, X₂) → f6(X₀-1, X₁, X₂) :|: 1 ≤ X₀ ∧ X₀ ≤ X₁ of depth 1:

new bound:

X₁ {O(n)}

MPRF:

• f6: [X₀]

Found invariant 1+X₁ ≤ 0 ∧ 3+X₀+X₁ ≤ 0 ∧ 1+X₀ ≤ X₁ ∧ 2+X₀ ≤ 0 for location f6_v2

Found invariant 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location f14

Found invariant X₁ ≤ X₀ ∧ X₀ ≤ X₁ for location f6

Found invariant 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ for location f6_v1

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}
t₂₀: X₁ {O(n)}

Costbounds

Overall costbound: inf {Infinity}
t₁₅: 1 {O(1)}
t₁₆: 1 {O(1)}
t₁₇: 1 {O(1)}
t₁₈: 1 {O(1)}
t₁₉: inf {Infinity}
t₂₀: X₁ {O(n)}

Sizebounds

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₂: 2⋅X₂ {O(n)}
t₁₇, X₀: 0 {O(1)}
t₁₇, X₁: 2⋅X₁ {O(n)}
t₁₇, X₂: 2⋅X₂ {O(n)}
t₁₈, X₀: 0 {O(1)}
t₁₈, X₁: 2⋅X₁ {O(n)}
t₁₈, X₂: 2⋅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)}