Initial Problem

Start: f3
Program_Vars: X₀, X₁, X₂
Temp_Vars: D
Locations: f2, f3, f4
Transitions:
t₀: f2(X₀, X₁, X₂) → f2(X₀-X₁, 1+X₁, X₂) :|: 1 ≤ X₀
t₂: f2(X₀, X₁, X₂) → f4(X₀, X₁, D) :|: X₀ ≤ 0
t₁: f3(X₀, X₁, X₂) → f2(X₀, X₁, X₂) :|: 1 ≤ X₁
t₃: f3(X₀, X₁, X₂) → f4(X₀, X₁, D) :|: X₁ ≤ 0

Preprocessing

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

Found invariant 1 ≤ X₁ for location f2

Problem after Preprocessing

Start: f3
Program_Vars: X₀, X₁
Temp_Vars:
Locations: f2, f3, f4
Transitions:
t₆: f2(X₀, X₁) → f2(X₀-X₁, 1+X₁) :|: 1 ≤ X₀ ∧ 1 ≤ X₁
t₇: f2(X₀, X₁) → f4(X₀, X₁) :|: X₀ ≤ 0 ∧ 1 ≤ X₁
t₈: f3(X₀, X₁) → f2(X₀, X₁) :|: 1 ≤ X₁
t₉: f3(X₀, X₁) → f4(X₀, X₁) :|: X₁ ≤ 0

MPRF for transition t₆: f2(X₀, X₁) → f2(X₀-X₁, 1+X₁) :|: 1 ≤ X₀ ∧ 1 ≤ X₁ of depth 1:

new bound:

X₀ {O(n)}

MPRF:

• f2: [X₀]

All Bounds

Timebounds

Overall timebound:X₀+3 {O(n)}
t₆: X₀ {O(n)}
t₇: 1 {O(1)}
t₈: 1 {O(1)}
t₉: 1 {O(1)}

Costbounds

Overall costbound: X₀+3 {O(n)}
t₆: X₀ {O(n)}
t₇: 1 {O(1)}
t₈: 1 {O(1)}
t₉: 1 {O(1)}

Sizebounds

t₆, X₀: 2⋅X₀+2⋅X₁ {O(n)}
t₆, X₁: X₀+X₁ {O(n)}
t₇, X₀: 2⋅X₁+3⋅X₀ {O(n)}
t₇, X₁: 2⋅X₁+X₀ {O(n)}
t₈, X₀: X₀ {O(n)}
t₈, X₁: X₁ {O(n)}
t₉, X₀: X₀ {O(n)}
t₉, X₁: X₁ {O(n)}