Initial Problem
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: U, V
Locations: l0, l1, l2, l3, l4
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l1(U, X₁, X₂, X₃, X₄)
t₁: l1(X₀, X₁, X₂, X₃, X₄) → l1(X₀+1, X₁, X₂, X₃, X₄) :|: 1 ≤ X₀ ∧ X₀ ≤ 3 ∧ V ≤ 0 ∧ 0 ≤ V
t₃: l1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V
t₂: l2(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁-1, X₂, X₃, X₄)
t₄: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄)
t₅: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+(X₄)³, X₃+(X₄)², X₄+1) :|: X₂ < X₃ ∧ X₄ < 0
t₆: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+(X₄)³, X₃+(X₄)², X₄+1) :|: X₂ < X₃ ∧ 0 < X₄
t₇: l3(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄)
t₈: l4(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃-1, X₄) :|: 0 < X₃
Preprocessing
Found invariant 1 ≤ X₁ for location l2
Found invariant 1 ≤ X₁ for location l4
Found invariant 1 ≤ X₁ for location l3
Problem after Preprocessing
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: U, V
Locations: l0, l1, l2, l3, l4
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l1(U, X₁, X₂, X₃, X₄)
t₁: l1(X₀, X₁, X₂, X₃, X₄) → l1(X₀+1, X₁, X₂, X₃, X₄) :|: 1 ≤ X₀ ∧ X₀ ≤ 3 ∧ V ≤ 0 ∧ 0 ≤ V
t₃: l1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V
t₂: l2(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁-1, X₂, X₃, X₄) :|: 1 ≤ X₁
t₄: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄) :|: 1 ≤ X₁
t₅: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+(X₄)³, X₃+(X₄)², X₄+1) :|: X₂ < X₃ ∧ X₄ < 0 ∧ 1 ≤ X₁
t₆: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+(X₄)³, X₃+(X₄)², X₄+1) :|: X₂ < X₃ ∧ 0 < X₄ ∧ 1 ≤ X₁
t₇: l3(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄) :|: 1 ≤ X₁
t₈: l4(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃-1, X₄) :|: 0 < X₃ ∧ 1 ≤ X₁
MPRF for transition t₂: l2(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁-1, X₂, X₃, X₄) :|: 1 ≤ X₁ of depth 1:
new bound:
X₁ {O(n)}
MPRF for transition t₃: l1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V of depth 1:
new bound:
X₁ {O(n)}
Chain transitions t₃: l1→l2 and t₄: l2→l3 to t₉₄: l1→l3
Chain transitions t₃: l1→l2 and t₂: l2→l1 to t₉₅: l1→l1
Analysing control-flow refined program
Found invariant 1 ≤ X₁ for location l2
Found invariant 1 ≤ X₁ for location l4
Found invariant 1 ≤ X₁ for location l3
CFR did not improve the program. Rolling back
CFR did not improve the program. Rolling back
Analysing control-flow refined program
Found invariant 1 ≤ X₁ for location l2
Found invariant X₀ ≤ 4 ∧ 2 ≤ X₀ for location n_l1___2
Found invariant 1 ≤ X₁ for location l4
Found invariant 1 ≤ X₁ for location l3
Found invariant 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀ for location n_l1___1
knowledge_propagation leads to new time bound X₁+1 {O(n)} for transition t₁₇₆: l1(X₀, X₁, X₂, X₃, X₄) → n_l1___1(X₀+1, X₁, X₂, X₃, X₄) :|: 0 ≤ X₁ ∧ X₀ ≤ 3 ∧ 1 ≤ X₀
knowledge_propagation leads to new time bound X₁+1 {O(n)} for transition t₁₇₇: l1(X₀, X₁, X₂, X₃, X₄) → n_l1___2(X₀+1, X₁, X₂, X₃, X₄) :|: X₀ ≤ 3 ∧ 1 ≤ X₀
MPRF for transition t₁₇₄: n_l1___1(X₀, X₁, X₂, X₃, X₄) → n_l1___1(X₀+1, X₁, X₂, X₃, X₄) :|: 1 ≤ X₀ ∧ 0 ≤ X₁ ∧ 2 ≤ X₀ ∧ X₀ ≤ 4 ∧ X₀ ≤ 3 ∧ 1 ≤ X₀ ∧ 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀ of depth 1:
new bound:
11⋅X₁+3 {O(n)}
MPRF for transition t₁₇₅: n_l1___2(X₀, X₁, X₂, X₃, X₄) → n_l1___2(X₀+1, X₁, X₂, X₃, X₄) :|: 1 ≤ X₀ ∧ 2 ≤ X₀ ∧ X₀ ≤ 4 ∧ X₀ ≤ 3 ∧ 1 ≤ X₀ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀ of depth 1:
new bound:
30⋅X₁+36 {O(n)}
MPRF for transition t₁₈₀: n_l1___1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V ∧ 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀ of depth 1:
new bound:
X₁ {O(n)}
MPRF for transition t₁₈₁: n_l1___2(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V ∧ X₀ ≤ 4 ∧ 2 ≤ X₀ of depth 1:
new bound:
3⋅X₁ {O(n)}
CFR: Improvement to new bound with the following program:
new bound:
Infinite
cfr-program:
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: U, V
Locations: l0, l1, l2, l3, l4, n_l1___1, n_l1___2
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l1(U, X₁, X₂, X₃, X₄)
t₃: l1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V
t₁₇₆: l1(X₀, X₁, X₂, X₃, X₄) → n_l1___1(X₀+1, X₁, X₂, X₃, X₄) :|: 0 ≤ X₁ ∧ X₀ ≤ 3 ∧ 1 ≤ X₀
t₁₇₇: l1(X₀, X₁, X₂, X₃, X₄) → n_l1___2(X₀+1, X₁, X₂, X₃, X₄) :|: X₀ ≤ 3 ∧ 1 ≤ X₀
t₂: l2(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁-1, X₂, X₃, X₄) :|: 1 ≤ X₁ ∧ 1 ≤ X₁
t₄: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄) :|: 1 ≤ X₁ ∧ 1 ≤ X₁
t₅: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+(X₄)³, X₃+(X₄)², X₄+1) :|: X₂ < X₃ ∧ X₄ < 0 ∧ 1 ≤ X₁ ∧ 1 ≤ X₁
t₆: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+(X₄)³, X₃+(X₄)², X₄+1) :|: X₂ < X₃ ∧ 0 < X₄ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁
t₇: l3(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄) :|: 1 ≤ X₁ ∧ 1 ≤ X₁
t₈: l4(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃-1, X₄) :|: 0 < X₃ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁
t₁₈₀: n_l1___1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V ∧ 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀
t₁₇₄: n_l1___1(X₀, X₁, X₂, X₃, X₄) → n_l1___1(X₀+1, X₁, X₂, X₃, X₄) :|: 1 ≤ X₀ ∧ 0 ≤ X₁ ∧ 2 ≤ X₀ ∧ X₀ ≤ 4 ∧ X₀ ≤ 3 ∧ 1 ≤ X₀ ∧ 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀
t₁₈₁: n_l1___2(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V ∧ X₀ ≤ 4 ∧ 2 ≤ X₀
t₁₇₅: n_l1___2(X₀, X₁, X₂, X₃, X₄) → n_l1___2(X₀+1, X₁, X₂, X₃, X₄) :|: 1 ≤ X₀ ∧ 2 ≤ X₀ ∧ X₀ ≤ 4 ∧ X₀ ≤ 3 ∧ 1 ≤ X₀ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀
CFR: Improvement to new bound with the following program:
new bound:
49⋅X₁+41 {O(n)}
cfr-program:
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄
Temp_Vars: U, V
Locations: l0, l1, l2, l3, l4, n_l1___1, n_l1___2
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄) → l1(U, X₁, X₂, X₃, X₄)
t₃: l1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V
t₁₇₆: l1(X₀, X₁, X₂, X₃, X₄) → n_l1___1(X₀+1, X₁, X₂, X₃, X₄) :|: 0 ≤ X₁ ∧ X₀ ≤ 3 ∧ 1 ≤ X₀
t₁₇₇: l1(X₀, X₁, X₂, X₃, X₄) → n_l1___2(X₀+1, X₁, X₂, X₃, X₄) :|: X₀ ≤ 3 ∧ 1 ≤ X₀
t₂: l2(X₀, X₁, X₂, X₃, X₄) → l1(X₀, X₁-1, X₂, X₃, X₄) :|: 1 ≤ X₁ ∧ 1 ≤ X₁
t₄: l2(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂, X₃, X₄) :|: 1 ≤ X₁ ∧ 1 ≤ X₁
t₅: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+(X₄)³, X₃+(X₄)², X₄+1) :|: X₂ < X₃ ∧ X₄ < 0 ∧ 1 ≤ X₁ ∧ 1 ≤ X₁
t₆: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+(X₄)³, X₃+(X₄)², X₄+1) :|: X₂ < X₃ ∧ 0 < X₄ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁
t₇: l3(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃, X₄) :|: 1 ≤ X₁ ∧ 1 ≤ X₁
t₈: l4(X₀, X₁, X₂, X₃, X₄) → l4(X₀, X₁, X₂, X₃-1, X₄) :|: 0 < X₃ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁
t₁₈₀: n_l1___1(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V ∧ 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀
t₁₇₄: n_l1___1(X₀, X₁, X₂, X₃, X₄) → n_l1___1(X₀+1, X₁, X₂, X₃, X₄) :|: 1 ≤ X₀ ∧ 0 ≤ X₁ ∧ 2 ≤ X₀ ∧ X₀ ≤ 4 ∧ X₀ ≤ 3 ∧ 1 ≤ X₀ ∧ 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀
t₁₈₁: n_l1___2(X₀, X₁, X₂, X₃, X₄) → l2(X₀, X₁, X₂, X₃, X₄) :|: 0 < X₁ ∧ V ≤ 1 ∧ 1 ≤ V ∧ X₀ ≤ 4 ∧ 2 ≤ X₀
t₁₇₅: n_l1___2(X₀, X₁, X₂, X₃, X₄) → n_l1___2(X₀+1, X₁, X₂, X₃, X₄) :|: 1 ≤ X₀ ∧ 2 ≤ X₀ ∧ X₀ ≤ 4 ∧ X₀ ≤ 3 ∧ 1 ≤ X₀ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀
MPRF for transition t₅: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, X₂+Temp_Int₁₄₀₉, X₃+Temp_Int₁₄₁₀, X₄+1) :|: X₂ < X₃ ∧ X₄ < 0 ∧ 0 < Temp_Int₁₄₁₀ ∧ X₄ ≤ Temp_Int₁₄₁₀ ∧ 1 ≤ X₁ of depth 1:
new bound:
X₄ {O(n)}
TWN: t₆: l3→l3
cycle: [t₅: l3→l3; t₆: l3→l3]
loop: (X₂ < X₃ ∧ X₄ < 0 ∨ X₂ < X₃ ∧ 0 < X₄,(X₂,X₃,X₄) -> (X₂+(X₄)³,X₃+(X₄)²,X₄+1)
order: [X₄; X₂; X₃]
closed-form:
X₄: X₄ + [[n != 0]] * n^1
X₂: X₂ + [[n != 0]] * (X₄)³ * n^1 + [[n != 0, n != 1]] * 1/4 * n^4 + [[n != 0, n != 1]] * X₄-1/2 * n^3 + [[n != 0, n != 1]] * (1/4+3/2⋅(X₄)²-3/2⋅X₄) * n^2 + [[n != 0, n != 1]] * (1/2⋅X₄-3/2⋅(X₄)²) * n^1
X₃: X₃ + [[n != 0]] * (X₄)² * n^1 + [[n != 0, n != 1]] * 1/3 * n^3 + [[n != 0, n != 1]] * X₄-1/2 * n^2 + [[n != 0, n != 1]] * 1/6-X₄ * n^1
Termination: true
Formula:
1 < 0 ∧ 3 < 0
∨ 1 < 0 ∧ 12⋅X₄ < 10 ∧ 3 ≤ 0 ∧ 0 ≤ 3
∨ 1 < 0 ∧ 9+18⋅(X₄)² < 30⋅X₄ ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄
∨ 1 < 0 ∧ 12⋅(X₄)³+18⋅X₄ < 30⋅(X₄)²+2 ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄ ∧ 9+18⋅(X₄)² ≤ 30⋅X₄ ∧ 30⋅X₄ ≤ 9+18⋅(X₄)²
∨ 1 < 0 ∧ 12⋅X₂ < 12⋅X₃ ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄ ∧ 9+18⋅(X₄)² ≤ 30⋅X₄ ∧ 30⋅X₄ ≤ 9+18⋅(X₄)² ∧ 12⋅(X₄)³+18⋅X₄ ≤ 30⋅(X₄)²+2 ∧ 30⋅(X₄)²+2 ≤ 12⋅(X₄)³+18⋅X₄
∨ X₄ < 0 ∧ 1 ≤ 0 ∧ 0 ≤ 1 ∧ 3 < 0
∨ X₄ < 0 ∧ 1 ≤ 0 ∧ 0 ≤ 1 ∧ 12⋅X₄ < 10 ∧ 3 ≤ 0 ∧ 0 ≤ 3
∨ X₄ < 0 ∧ 1 ≤ 0 ∧ 0 ≤ 1 ∧ 9+18⋅(X₄)² < 30⋅X₄ ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄
∨ X₄ < 0 ∧ 1 ≤ 0 ∧ 0 ≤ 1 ∧ 12⋅(X₄)³+18⋅X₄ < 30⋅(X₄)²+2 ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄ ∧ 9+18⋅(X₄)² ≤ 30⋅X₄ ∧ 30⋅X₄ ≤ 9+18⋅(X₄)²
∨ X₄ < 0 ∧ 1 ≤ 0 ∧ 0 ≤ 1 ∧ 12⋅X₂ < 12⋅X₃ ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄ ∧ 9+18⋅(X₄)² ≤ 30⋅X₄ ∧ 30⋅X₄ ≤ 9+18⋅(X₄)² ∧ 12⋅(X₄)³+18⋅X₄ ≤ 30⋅(X₄)²+2 ∧ 30⋅(X₄)²+2 ≤ 12⋅(X₄)³+18⋅X₄
∨ 0 < 1 ∧ 3 < 0
∨ 0 < 1 ∧ 12⋅X₄ < 10 ∧ 3 ≤ 0 ∧ 0 ≤ 3
∨ 0 < 1 ∧ 9+18⋅(X₄)² < 30⋅X₄ ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄
∨ 0 < 1 ∧ 12⋅(X₄)³+18⋅X₄ < 30⋅(X₄)²+2 ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄ ∧ 9+18⋅(X₄)² ≤ 30⋅X₄ ∧ 30⋅X₄ ≤ 9+18⋅(X₄)²
∨ 0 < 1 ∧ 12⋅X₂ < 12⋅X₃ ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄ ∧ 9+18⋅(X₄)² ≤ 30⋅X₄ ∧ 30⋅X₄ ≤ 9+18⋅(X₄)² ∧ 12⋅(X₄)³+18⋅X₄ ≤ 30⋅(X₄)²+2 ∧ 30⋅(X₄)²+2 ≤ 12⋅(X₄)³+18⋅X₄
∨ 0 < X₄ ∧ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 3 < 0
∨ 0 < X₄ ∧ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 12⋅X₄ < 10 ∧ 3 ≤ 0 ∧ 0 ≤ 3
∨ 0 < X₄ ∧ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 9+18⋅(X₄)² < 30⋅X₄ ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄
∨ 0 < X₄ ∧ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 12⋅(X₄)³+18⋅X₄ < 30⋅(X₄)²+2 ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄ ∧ 9+18⋅(X₄)² ≤ 30⋅X₄ ∧ 30⋅X₄ ≤ 9+18⋅(X₄)²
∨ 0 < X₄ ∧ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 12⋅X₂ < 12⋅X₃ ∧ 3 ≤ 0 ∧ 0 ≤ 3 ∧ 12⋅X₄ ≤ 10 ∧ 10 ≤ 12⋅X₄ ∧ 9+18⋅(X₄)² ≤ 30⋅X₄ ∧ 30⋅X₄ ≤ 9+18⋅(X₄)² ∧ 12⋅(X₄)³+18⋅X₄ ≤ 30⋅(X₄)²+2 ∧ 30⋅(X₄)²+2 ≤ 12⋅(X₄)³+18⋅X₄
Stabilization-Threshold for: 0 < X₄
alphas_abs: X₄
M: 0
N: 1
Bound: 2⋅X₄+2 {O(n)}
Stabilization-Threshold for: X₂ < X₃
alphas_abs: 10+12⋅X₂+12⋅X₃+30⋅X₄+30⋅(X₄)²+12⋅(X₄)³
M: 0
N: 4
Bound: 24⋅X₄⋅X₄⋅X₄+60⋅X₄⋅X₄+24⋅X₂+24⋅X₃+60⋅X₄+25 {O(n^3)}
Stabilization-Threshold for: X₄ < 0
alphas_abs: X₄
M: 0
N: 1
Bound: 2⋅X₄+2 {O(n)}
TWN - Lifting for t₆: l3→l3 of 24⋅X₄⋅X₄⋅X₄+60⋅X₄⋅X₄+24⋅X₂+24⋅X₃+64⋅X₄+31 {O(n^3)}
relevant size-bounds w.r.t. t₄:
X₂: X₂ {O(n)}
X₃: X₃ {O(n)}
X₄: X₄ {O(n)}
Runtime-bound of t₄: 1 {O(1)}
Results in: 24⋅X₄⋅X₄⋅X₄+60⋅X₄⋅X₄+24⋅X₂+24⋅X₃+64⋅X₄+31 {O(n^3)}
Analysing control-flow refined program
Found invariant 1 ≤ X₁ for location l2
Found invariant X₀ ≤ 4 ∧ 2 ≤ X₀ for location n_l1___2
Found invariant 1 ≤ X₁ for location l4
Found invariant 2 ≤ X₄ ∧ 3 ≤ X₁+X₄ ∧ 1 ≤ X₁ for location n_l3___1
Found invariant 1 ≤ X₁ for location l3
Found invariant 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀ for location n_l1___1
MPRF for transition t₃₄₃: l3(X₀, X₁, X₂, X₃, X₄) → l3(X₀, X₁, NoDet0, NoDet1, Arg4_P) :|: X₂ < X₃ ∧ Arg4_P < 1 ∧ X₄+1 ≤ Arg4_P ∧ Arg4_P ≤ 1+X₄ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁ of depth 1:
new bound:
X₄ {O(n)}
CFR did not improve the program. Rolling back
CFR did not improve the program. Rolling back
Analysing control-flow refined program
Found invariant 1 ≤ X₁ for location l2
Found invariant X₀ ≤ 4 ∧ 2 ≤ X₀ for location n_l1___2
Found invariant 1 ≤ X₁ for location l4
Found invariant 1 ≤ X₁ for location l3
Found invariant 0 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ X₀ ≤ 4+X₁ ∧ X₀ ≤ 4 ∧ 2 ≤ X₀ for location n_l1___1
CFR did not improve the program. Rolling back
CFR did not improve the program. Rolling back
All Bounds
Timebounds
Overall timebound:inf {Infinity}
t₀: 1 {O(1)}
t₂: X₁ {O(n)}
t₃: X₁ {O(n)}
t₄: 1 {O(1)}
t₅: X₄ {O(n)}
t₆: 24⋅X₄⋅X₄⋅X₄+60⋅X₄⋅X₄+24⋅X₂+24⋅X₃+64⋅X₄+31 {O(n^3)}
t₇: 1 {O(1)}
t₈: inf {Infinity}
t₁₇₄: 11⋅X₁+3 {O(n)}
t₁₇₅: 30⋅X₁+36 {O(n)}
t₁₇₆: X₁+1 {O(n)}
t₁₇₇: X₁+1 {O(n)}
t₁₈₀: X₁ {O(n)}
t₁₈₁: 3⋅X₁ {O(n)}
Costbounds
Overall costbound: inf {Infinity}
t₀: 1 {O(1)}
t₂: X₁ {O(n)}
t₃: X₁ {O(n)}
t₄: 1 {O(1)}
t₅: X₄ {O(n)}
t₆: 24⋅X₄⋅X₄⋅X₄+60⋅X₄⋅X₄+24⋅X₂+24⋅X₃+64⋅X₄+31 {O(n^3)}
t₇: 1 {O(1)}
t₈: inf {Infinity}
t₁₇₄: 11⋅X₁+3 {O(n)}
t₁₇₅: 30⋅X₁+36 {O(n)}
t₁₇₆: X₁+1 {O(n)}
t₁₇₇: X₁+1 {O(n)}
t₁₈₀: X₁ {O(n)}
t₁₈₁: 3⋅X₁ {O(n)}
Sizebounds
t₀, X₁: X₁ {O(n)}
t₀, X₂: X₂ {O(n)}
t₀, X₃: X₃ {O(n)}
t₀, X₄: X₄ {O(n)}
t₂, X₁: X₁ {O(n)}
t₂, X₂: X₂ {O(n)}
t₂, X₃: X₃ {O(n)}
t₂, X₄: X₄ {O(n)}
t₃, X₁: X₁ {O(n)}
t₃, X₂: X₂ {O(n)}
t₃, X₃: X₃ {O(n)}
t₃, X₄: X₄ {O(n)}
t₄, X₁: X₁ {O(n)}
t₄, X₂: X₂ {O(n)}
t₄, X₃: X₃ {O(n)}
t₄, X₄: X₄ {O(n)}
t₅, X₁: X₁ {O(n)}
t₅, X₄: X₄ {O(n)}
t₆, X₁: X₁ {O(n)}
t₆, X₄: 24⋅X₄⋅X₄⋅X₄+60⋅X₄⋅X₄+24⋅X₂+24⋅X₃+65⋅X₄+31 {O(n^3)}
t₇, X₁: 3⋅X₁ {O(n)}
t₇, X₄: 24⋅X₄⋅X₄⋅X₄+60⋅X₄⋅X₄+24⋅X₂+24⋅X₃+67⋅X₄+31 {O(n^3)}
t₈, X₁: 3⋅X₁ {O(n)}
t₈, X₄: 24⋅X₄⋅X₄⋅X₄+60⋅X₄⋅X₄+24⋅X₂+24⋅X₃+67⋅X₄+31 {O(n^3)}
t₁₇₄, X₀: 4 {O(1)}
t₁₇₄, X₁: X₁ {O(n)}
t₁₇₄, X₂: X₂ {O(n)}
t₁₇₄, X₃: X₃ {O(n)}
t₁₇₄, X₄: X₄ {O(n)}
t₁₇₅, X₀: 4 {O(1)}
t₁₇₅, X₁: X₁ {O(n)}
t₁₇₅, X₂: X₂ {O(n)}
t₁₇₅, X₃: X₃ {O(n)}
t₁₇₅, X₄: X₄ {O(n)}
t₁₇₆, X₀: 4 {O(1)}
t₁₇₆, X₁: X₁ {O(n)}
t₁₇₆, X₂: X₂ {O(n)}
t₁₇₆, X₃: X₃ {O(n)}
t₁₇₆, X₄: X₄ {O(n)}
t₁₇₇, X₀: 4 {O(1)}
t₁₇₇, X₁: X₁ {O(n)}
t₁₇₇, X₂: X₂ {O(n)}
t₁₇₇, X₃: X₃ {O(n)}
t₁₇₇, X₄: X₄ {O(n)}
t₁₈₀, X₀: 4 {O(1)}
t₁₈₀, X₁: X₁ {O(n)}
t₁₈₀, X₂: X₂ {O(n)}
t₁₈₀, X₃: X₃ {O(n)}
t₁₈₀, X₄: X₄ {O(n)}
t₁₈₁, X₀: 4 {O(1)}
t₁₈₁, X₁: X₁ {O(n)}
t₁₈₁, X₂: X₂ {O(n)}
t₁₈₁, X₃: X₃ {O(n)}
t₁₈₁, X₄: X₄ {O(n)}