Initial Problem

Start: f0
Program_Vars: X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄
Temp_Vars: P, Q
Locations: f0, f20, f28, f40, f42, f45
Transitions:
t₇: f0(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f20(1, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, P, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) :|: P ≤ 0
t₈: f0(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f20(1, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, 0, 1, P, P, P, P) :|: 1 ≤ P ∧ 1 ≤ Q
t₉: f0(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f40(1, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, 0, 1, P, P, P, P) :|: 1 ≤ Q ∧ P ≤ 0
t₀: f20(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f28(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) :|: X₀ ≤ 0
t₆: f20(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f28(0, P, X₂, X₃, X₄, X₅, 0, P, P, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) :|: 1 ≤ X₀
t₃: f28(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f40(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) :|: 1 ≤ X₀
t₄: f28(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f40(X₀, X₁, 0, P, P, P, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) :|: P ≤ 999+X₁ ∧ X₀ ≤ 0
t₅: f28(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f40(1, X₁, 0, P, P, P, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) :|: 1000+X₁ ≤ P ∧ X₀ ≤ 0
t₁: f40(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f40(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄)
t₂: f42(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄) → f45(X₀, X₁, X₂, X₃, X₄, X₅, X₆, X₇, X₈, X₉, X₁₀, X₁₁, X₁₂, X₁₃, X₁₄)

Preprocessing

Cut unreachable locations [f42; f45] from the program graph

Cut unsatisfiable transition [t₀: f20→f28; t₃: f28→f40]

Eliminate variables [X₂; X₃; X₄; X₅; X₆; X₇; X₈; X₉; X₁₀; X₁₁; X₁₂; X₁₃; X₁₄] that do not contribute to the problem

Found invariant X₀ ≤ 1 ∧ 1 ≤ X₀ for location f20

Found invariant X₀ ≤ 0 ∧ 0 ≤ X₀ for location f28

Found invariant X₀ ≤ 1 ∧ 0 ≤ X₀ for location f40

Problem after Preprocessing

Start: f0
Program_Vars: X₀, X₁
Temp_Vars: P, Q
Locations: f0, f20, f28, f40
Transitions:
t₁₉: f0(X₀, X₁) → f20(1, X₁) :|: P ≤ 0
t₂₀: f0(X₀, X₁) → f20(1, X₁) :|: 1 ≤ P ∧ 1 ≤ Q
t₂₁: f0(X₀, X₁) → f40(1, X₁) :|: 1 ≤ Q ∧ P ≤ 0
t₂₂: f20(X₀, X₁) → f28(0, P) :|: 1 ≤ X₀ ∧ X₀ ≤ 1
t₂₃: f28(X₀, X₁) → f40(X₀, X₁) :|: P ≤ 999+X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀
t₂₄: f28(X₀, X₁) → f40(1, X₁) :|: 1000+X₁ ≤ P ∧ X₀ ≤ 0 ∧ 0 ≤ X₀
t₂₅: f40(X₀, X₁) → f40(X₀, X₁) :|: X₀ ≤ 1 ∧ 0 ≤ X₀

Found invariant X₀ ≤ 1 ∧ 0 ≤ X₀ for location f40_v1

Found invariant X₀ ≤ 0 ∧ 0 ≤ X₀ for location f28

Found invariant X₀ ≤ 1 ∧ 0 ≤ X₀ for location f40

Found invariant X₀ ≤ 1 ∧ 1 ≤ X₀ for location f20

All Bounds

Timebounds

Overall timebound:inf {Infinity}
t₁₉: 1 {O(1)}
t₂₀: 1 {O(1)}
t₂₁: 1 {O(1)}
t₂₂: 1 {O(1)}
t₂₃: 1 {O(1)}
t₂₄: 1 {O(1)}
t₂₅: inf {Infinity}

Costbounds

Overall costbound: inf {Infinity}
t₁₉: 1 {O(1)}
t₂₀: 1 {O(1)}
t₂₁: 1 {O(1)}
t₂₂: 1 {O(1)}
t₂₃: 1 {O(1)}
t₂₄: 1 {O(1)}
t₂₅: inf {Infinity}

Sizebounds

t₁₉, X₀: 1 {O(1)}
t₁₉, X₁: X₁ {O(n)}
t₂₀, X₀: 1 {O(1)}
t₂₀, X₁: X₁ {O(n)}
t₂₁, X₀: 1 {O(1)}
t₂₁, X₁: X₁ {O(n)}
t₂₂, X₀: 0 {O(1)}
t₂₃, X₀: 0 {O(1)}
t₂₄, X₀: 1 {O(1)}
t₂₅, X₀: 1 {O(1)}