Start: f6
Program_Vars: X₀, X₁, X₂
Temp_Vars: D
Locations: f0, f3, f4, f5, f6, f7
Transitions:
t₀: f0(X₀, X₁, X₂) → f3(-X₀, X₁, X₂)
t₄: f3(X₀, X₁, X₂) → f4(-1-X₀, X₁, 1) :|: 1+X₀ ≤ 0 ∧ X₂ ≤ 0
t₅: f3(X₀, X₁, X₂) → f4(-1-X₀, X₁, 1) :|: 1+X₀ ≤ 0 ∧ 2 ≤ X₂
t₆: f3(X₀, X₁, X₂) → f4(-1-X₀, X₁, 1) :|: 1 ≤ X₀ ∧ X₂ ≤ 0
t₇: f3(X₀, X₁, X₂) → f4(-1-X₀, X₁, 1) :|: 1 ≤ X₀ ∧ 2 ≤ X₂
t₁: f3(X₀, X₁, X₂) → f7(0, D, X₂) :|: 0 ≤ X₀ ∧ X₀ ≤ 0
t₈: f4(X₀, X₁, X₂) → f3(1-X₀, X₁, 0) :|: X₂ ≤ 1 ∧ 1+X₀ ≤ 0 ∧ 1 ≤ X₂
t₉: f4(X₀, X₁, X₂) → f3(1-X₀, X₁, 0) :|: X₂ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂
t₂: f4(X₀, X₁, X₂) → f7(0, D, X₂) :|: 0 ≤ X₀ ∧ X₀ ≤ 0
t₁₀: f5(X₀, X₁, X₂) → f3(1-X₀, X₁, 0) :|: X₂ ≤ 1 ∧ 1+X₀ ≤ 0 ∧ 1 ≤ X₂
t₁₁: f5(X₀, X₁, X₂) → f3(1-X₀, X₁, 0) :|: X₂ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂
t₃: f6(X₀, X₁, X₂) → f4(X₀, X₁, 1) :|: 1 ≤ X₀
Cut unreachable locations [f0; f5] from the program graph
Cut unsatisfiable transition [t₅: f3→f4; t₇: f3→f4]
Eliminate variables [D; X₁] that do not contribute to the problem
Found invariant X₁ ≤ 0 ∧ X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 for location f3
Found invariant X₁ ≤ 1 ∧ X₁ ≤ 1+X₀ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location f4
Found invariant X₁ ≤ 1 ∧ X₁ ≤ 1+X₀ ∧ X₀+X₁ ≤ 1 ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location f7
Cut unsatisfiable transition [t₂₈: f3→f4; t₃₀: f4→f3]
Start: f6
Program_Vars: X₀, X₁
Temp_Vars:
Locations: f3, f4, f6, f7
Transitions:
t₂₇: f3(X₀, X₁) → f4(-1-X₀, 1) :|: 1+X₀ ≤ 0 ∧ X₁ ≤ 0 ∧ X₀ ≤ 0 ∧ X₀ ≤ X₁ ∧ X₀+X₁ ≤ 0 ∧ 0 ≤ X₁
t₂₉: f3(X₀, X₁) → f7(0, X₁) :|: 0 ≤ X₀ ∧ X₀ ≤ 0 ∧ X₀ ≤ X₁ ∧ X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ X₁ ≤ 0
t₃₁: f4(X₀, X₁) → f3(1-X₀, 0) :|: X₁ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₁ ∧ X₁ ≤ 1+X₀ ∧ 1 ≤ X₀+X₁ ∧ 0 ≤ X₀
t₃₂: f4(X₀, X₁) → f7(0, X₁) :|: 0 ≤ X₀ ∧ X₀ ≤ 0 ∧ X₁ ≤ 1+X₀ ∧ X₁ ≤ 1 ∧ 1 ≤ X₀+X₁ ∧ 1 ≤ X₁
t₃₃: f6(X₀, X₁) → f4(X₀, 1) :|: 1 ≤ X₀
new bound:
X₀ {O(n)}
MPRF:
• f3: [1-X₀]
• f4: [X₀]
new bound:
X₀+1 {O(n)}
MPRF:
• f3: [1-X₀]
• f4: [1+X₀]
Overall timebound:2⋅X₀+4 {O(n)}
t₂₇: X₀ {O(n)}
t₂₉: 1 {O(1)}
t₃₁: X₀+1 {O(n)}
t₃₂: 1 {O(1)}
t₃₃: 1 {O(1)}
Overall costbound: 2⋅X₀+4 {O(n)}
t₂₇: X₀ {O(n)}
t₂₉: 1 {O(1)}
t₃₁: X₀+1 {O(n)}
t₃₂: 1 {O(1)}
t₃₃: 1 {O(1)}
t₂₇, X₀: X₀ {O(n)}
t₂₇, X₁: 1 {O(1)}
t₂₉, X₀: 0 {O(1)}
t₂₉, X₁: 0 {O(1)}
t₃₁, X₀: X₀ {O(n)}
t₃₁, X₁: 0 {O(1)}
t₃₂, X₀: 0 {O(1)}
t₃₂, X₁: 1 {O(1)}
t₃₃, X₀: X₀ {O(n)}
t₃₃, X₁: 1 {O(1)}