Initial Problem

Start: f3
Program_Vars: X₀, X₁
Temp_Vars: C
Locations: f1, f3, f300
Transitions:
t₁: f1(X₀, X₁) → f1(X₀-1, X₁) :|: 0 ≤ X₀
t₂: f1(X₀, X₁) → f300(X₀, C) :|: 1+X₀ ≤ 0
t₀: f3(X₀, X₁) → f1(X₀, X₁)

Preprocessing

Eliminate variables [C; X₁] that do not contribute to the problem

Found invariant 1+X₀ ≤ 0 for location f300

Problem after Preprocessing

Start: f3
Program_Vars: X₀
Temp_Vars:
Locations: f1, f3, f300
Transitions:
t₅: f1(X₀) → f1(X₀-1) :|: 0 ≤ X₀
t₆: f1(X₀) → f300(X₀) :|: 1+X₀ ≤ 0
t₇: f3(X₀) → f1(X₀)

MPRF for transition t₅: f1(X₀) → f1(X₀-1) :|: 0 ≤ X₀ of depth 1:

new bound:

X₀+1 {O(n)}

MPRF:

• f1: [1+X₀]

All Bounds

Timebounds

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

Costbounds

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

Sizebounds

t₅, X₀: X₀+1 {O(n)}
t₆, X₀: 2⋅X₀+1 {O(n)}
t₇, X₀: X₀ {O(n)}