Start: f3
Program_Vars: X₀, X₁, X₂
Temp_Vars: D
Locations: f2, f3, f300
Transitions:
t₁: f2(X₀, X₁, X₂) → f2(X₀-1, D, X₂) :|: 1 ≤ D ∧ 0 ≤ X₀
t₂: f2(X₀, X₁, X₂) → f2(X₀-1, D, X₂) :|: 1+D ≤ 0 ∧ 0 ≤ X₀
t₃: f2(X₀, X₁, X₂) → f2(X₀, 0, X₂) :|: 0 ≤ X₀
t₄: f2(X₀, X₁, X₂) → f300(X₀, X₁, D) :|: 1+X₀ ≤ 0
t₀: f3(X₀, X₁, X₂) → f2(X₀, X₁, X₂)
Eliminate variables [X₁; X₂] that do not contribute to the problem
Found invariant 1+X₀ ≤ 0 for location f300
Start: f3
Program_Vars: X₀
Temp_Vars: D
Locations: f2, f3, f300
Transitions:
t₉: f2(X₀) → f2(X₀-1) :|: 1 ≤ D ∧ 0 ≤ X₀
t₁₀: f2(X₀) → f2(X₀-1) :|: 1+D ≤ 0 ∧ 0 ≤ X₀
t₁₁: f2(X₀) → f2(X₀) :|: 0 ≤ X₀
t₁₂: f2(X₀) → f300(X₀) :|: 1+X₀ ≤ 0
t₁₃: f3(X₀) → f2(X₀)
new bound:
X₀+1 {O(n)}
MPRF:
• f2: [1+X₀]
new bound:
X₀+1 {O(n)}
MPRF:
• f2: [1+X₀]
Found invariant 1+X₀ ≤ 0 for location f300
Found invariant 0 ≤ X₀ for location f2_v1
Found invariant 0 ≤ 1+X₀ for location f2_v2
Overall timebound:inf {Infinity}
t₉: X₀+1 {O(n)}
t₁₀: X₀+1 {O(n)}
t₁₁: inf {Infinity}
t₁₂: 1 {O(1)}
t₁₃: 1 {O(1)}
Overall costbound: inf {Infinity}
t₉: X₀+1 {O(n)}
t₁₀: X₀+1 {O(n)}
t₁₁: inf {Infinity}
t₁₂: 1 {O(1)}
t₁₃: 1 {O(1)}
t₉, X₀: X₀+1 {O(n)}
t₁₀, X₀: X₀+1 {O(n)}
t₁₁, X₀: X₀+1 {O(n)}
t₁₂, X₀: 3⋅X₀+2 {O(n)}
t₁₃, X₀: X₀ {O(n)}