Initial Problem

Start: f
Program_Vars: X₀, X₁, X₂
Temp_Vars:
Locations: f, g, g1, h
Transitions:
t₀: f(X₀, X₁, X₂) → g(X₀, 1, 0)
t₁: g(X₀, X₁, X₂) → g1(X₀-1, X₁, X₁) :|: 1 ≤ X₀
t₃: g(X₀, X₁, X₂) → h(X₀, X₁, X₂) :|: X₀ ≤ 0
t₂: g1(X₀, X₁, X₂) → g(X₀, X₁+X₂, X₂)
t₄: h(X₀, X₁, X₂) → h(X₀, X₁-1, X₂) :|: 1 ≤ X₁

Preprocessing

Found invariant 0 ≤ X₂ ∧ 0 ≤ X₁+X₂ ∧ X₀ ≤ X₂ ∧ 0 ≤ X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 for location h

Found invariant 1+X₂ ≤ X₁ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁ for location g

Found invariant X₂ ≤ X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location g1

Problem after Preprocessing

Start: f
Program_Vars: X₀, X₁, X₂
Temp_Vars:
Locations: f, g, g1, h
Transitions:
t₀: f(X₀, X₁, X₂) → g(X₀, 1, 0)
t₁: g(X₀, X₁, X₂) → g1(X₀-1, X₁, X₁) :|: 1 ≤ X₀ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁+X₂ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ X₂
t₃: g(X₀, X₁, X₂) → h(X₀, X₁, X₂) :|: X₀ ≤ 0 ∧ 1 ≤ X₁ ∧ 1 ≤ X₁+X₂ ∧ 1+X₂ ≤ X₁ ∧ 0 ≤ X₂
t₂: g1(X₀, X₁, X₂) → g(X₀, X₁+X₂, X₂) :|: 1 ≤ X₀+X₁ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ 0 ≤ X₀ ∧ X₂ ≤ X₁ ∧ X₁ ≤ X₂
t₄: h(X₀, X₁, X₂) → h(X₀, X₁-1, X₂) :|: 1 ≤ X₁ ∧ X₀ ≤ 0 ∧ X₀ ≤ X₁ ∧ X₀ ≤ X₂ ∧ 0 ≤ X₁ ∧ 0 ≤ X₁+X₂ ∧ 0 ≤ X₂

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

new bound:

X₀ {O(n)}

MPRF:

• g: [X₀]
• g1: [X₀]

MPRF for transition t₂: g1(X₀, X₁, X₂) → g(X₀, X₁+X₂, X₂) :|: 1 ≤ X₀+X₁ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ 0 ≤ X₀ ∧ X₂ ≤ X₁ ∧ X₁ ≤ X₂ of depth 1:

new bound:

X₀ {O(n)}

MPRF:

• g: [X₀]
• g1: [1+X₀]

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

new bound:

2^(X₀)+2 {O(EXP)}

MPRF:

• h: [1+X₁]

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

Found invariant X₂ ≤ X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location g1

Found invariant 1+X₂ ≤ X₁ ∧ 0 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁ for location g

Found invariant 0 ≤ X₂ ∧ 0 ≤ X₁+X₂ ∧ X₀ ≤ X₂ ∧ 0 ≤ X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 for location h_v1

All Bounds

Timebounds

Overall timebound:2^(X₀)+2⋅X₀+4 {O(EXP)}
t₀: 1 {O(1)}
t₁: X₀ {O(n)}
t₂: X₀ {O(n)}
t₃: 1 {O(1)}
t₄: 2^(X₀)+2 {O(EXP)}

Costbounds

Overall costbound: 2^(X₀)+2⋅X₀+4 {O(EXP)}
t₀: 1 {O(1)}
t₁: X₀ {O(n)}
t₂: X₀ {O(n)}
t₃: 1 {O(1)}
t₄: 2^(X₀)+2 {O(EXP)}

Sizebounds

t₀, X₀: X₀ {O(n)}
t₀, X₁: 1 {O(1)}
t₀, X₂: 0 {O(1)}
t₁, X₀: X₀ {O(n)}
t₁, X₁: 2^(X₀) {O(EXP)}
t₁, X₂: 2^(X₀)+1 {O(EXP)}
t₂, X₀: X₀ {O(n)}
t₂, X₁: 2^(X₀) {O(EXP)}
t₂, X₂: 2^(X₀)+1 {O(EXP)}
t₃, X₀: 2⋅X₀ {O(n)}
t₃, X₁: 2^(X₀)+1 {O(EXP)}
t₃, X₂: 2^(X₀)+1 {O(EXP)}
t₄, X₀: 2⋅X₀ {O(n)}
t₄, X₁: 2^(X₀)+1 {O(EXP)}
t₄, X₂: 2^(X₀)+1 {O(EXP)}