Initial Problem
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄, X₅, X₆
Temp_Vars:
Locations: l0, l1, l2, l3, l4
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l1(X₀, X₁, X₂, X₃, X₀, 0, 0)
t₁: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l2(X₀, X₁, X₂, X₃, X₄-1, X₁+X₂, X₆+(X₄)²) :|: 0 < X₄
t₄: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l1(X₀, X₁, X₂, X₁, X₄, X₅, X₆)
t₂: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l3(X₀, X₁, X₂, X₃, X₄, X₅-1, X₆) :|: 0 < X₅
t₅: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆)
t₃: l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l2(X₀, X₃, X₀, X₃, X₄, X₅, X₆)
t₆: l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆-1) :|: 0 < X₆
Preprocessing
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l2
Found invariant 0 ≤ X₆ ∧ X₄ ≤ X₀ for location l1
Found invariant 0 ≤ X₆ ∧ 0 ≤ X₄+X₆ ∧ 1 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l4
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l3
Problem after Preprocessing
Start: l0
Program_Vars: X₀, X₁, X₂, X₃, X₄, X₅, X₆
Temp_Vars:
Locations: l0, l1, l2, l3, l4
Transitions:
t₀: l0(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l1(X₀, X₁, X₂, X₃, X₀, 0, 0)
t₁: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l2(X₀, X₁, X₂, X₃, X₄-1, X₁+X₂, X₆+(X₄)²) :|: 0 < X₄ ∧ 0 ≤ X₆ ∧ X₄ ≤ X₀
t₄: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l1(X₀, X₁, X₂, X₁, X₄, X₅, X₆) :|: 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀
t₂: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l3(X₀, X₁, X₂, X₃, X₄, X₅-1, X₆) :|: 0 < X₅ ∧ 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀
t₅: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆) :|: 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀
t₃: l3(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l2(X₀, X₃, X₀, X₃, X₄, X₅, X₆) :|: 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀
t₆: l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l4(X₀, X₁, X₂, X₃, X₄, X₅, X₆-1) :|: 0 < X₆ ∧ 0 ≤ X₆ ∧ 0 ≤ X₄+X₆ ∧ 1 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀
TWN. Size Bound: t₁: l1→l2 for X₆
cycle: [t₄: l2→l1; t₁: l1→l2]
loop: (0 < X₄,(X₄,X₆) -> (X₄-1,X₆+(X₄)²)
closed-form: X₆ + [[n != 0]] * (X₄)² * n^1 + [[n != 0, n != 1]] * 1/3 * n^3 + [[n != 0, n != 1]] * -1/2-X₄ * n^2 + [[n != 0, n != 1]] * 1/6+X₄ * n^1
runtime bound: X₄+1 {O(n)}
TWN Size Bound - Lifting for t₁: l1→l2 and X₆: 3⋅X₀⋅X₀⋅X₀+8⋅X₀⋅X₀+8⋅X₀+3 {O(n^3)}
MPRF for transition t₁: l1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l2(X₀, X₁, X₂, X₃, X₄-1, X₁+X₂, X₆+Temp_Int₃₀₁) :|: 0 < X₄ ∧ 0 < Temp_Int₃₀₁ ∧ X₄ ≤ Temp_Int₃₀₁ ∧ 0 ≤ X₆ ∧ X₄ ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
MPRF for transition t₄: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l1(X₀, X₁, X₂, X₁, X₄, X₅, X₆) :|: 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ of depth 1:
new bound:
X₀ {O(n)}
TWN: t₂: l2→l3
cycle: [t₂: l2→l3; t₃: l3→l2]
loop: (0 < X₅,(X₅) -> (X₅-1)
order: [X₅]
closed-form:
X₅: X₅ + [[n != 0]] * -1 * n^1
Termination: true
Formula:
1 < 0
∨ 0 < X₅ ∧ 1 ≤ 0 ∧ 0 ≤ 1
Stabilization-Threshold for: 0 < X₅
alphas_abs: X₅
M: 0
N: 1
Bound: 2⋅X₅+2 {O(n)}
TWN - Lifting for t₂: l2→l3 of 2⋅X₅+4 {O(n)}
relevant size-bounds w.r.t. t₁:
X₅: 2⋅X₁+2⋅X₂+X₀+X₃ {O(n)}
Runtime-bound of t₁: X₀ {O(n)}
Results in: 2⋅X₀⋅X₀+2⋅X₀⋅X₃+4⋅X₀⋅X₁+4⋅X₀⋅X₂+4⋅X₀ {O(n^2)}
TWN: t₃: l3→l2
TWN - Lifting for t₃: l3→l2 of 2⋅X₅+4 {O(n)}
relevant size-bounds w.r.t. t₁:
X₅: 2⋅X₁+2⋅X₂+X₀+X₃ {O(n)}
Runtime-bound of t₁: X₀ {O(n)}
Results in: 2⋅X₀⋅X₀+2⋅X₀⋅X₃+4⋅X₀⋅X₁+4⋅X₀⋅X₂+4⋅X₀ {O(n^2)}
Chain transitions t₄: l2→l1 and t₁: l1→l2 to t₆₂: l2→l2
Chain transitions t₀: l0→l1 and t₁: l1→l2 to t₆₃: l0→l2
Chain transitions t₂: l2→l3 and t₃: l3→l2 to t₆₄: l2→l2
Analysing control-flow refined program
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ X₀ ≤ X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l2
Found invariant 0 ≤ X₆ ∧ X₄ ≤ X₀ for location l1
Found invariant 0 ≤ X₆ ∧ 0 ≤ X₄+X₆ ∧ 1 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l4
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ X₀ ≤ X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l3
TWN. Size Bound: t₆₂: l2→l2 for X₆
cycle: [t₆₂: l2→l2]
loop: (0 < X₄,(X₄,X₆) -> (X₄-1,X₆+(X₄)²)
closed-form: X₆ + [[n != 0]] * (X₄)² * n^1 + [[n != 0, n != 1]] * 1/3 * n^3 + [[n != 0, n != 1]] * -1/2-X₄ * n^2 + [[n != 0, n != 1]] * 1/6+X₄ * n^1
runtime bound: X₄+1 {O(n)}
TWN Size Bound - Lifting for t₆₂: l2→l2 and X₆: 6⋅X₀⋅X₀⋅X₀+18⋅X₀⋅X₀+16⋅X₀+6 {O(n^3)}
MPRF for transition t₆₂: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) -{2}> l2(X₀, X₁, X₂, X₁, X₄-1, X₁+X₂, X₆+Temp_Int₆₀₃) :|: 0 < X₄ ∧ 0 < Temp_Int₆₀₃ ∧ X₄ ≤ Temp_Int₆₀₃ ∧ 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ ∧ 0 ≤ X₆ ∧ X₄ ≤ X₀ ∧ 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ X₀ ≤ X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ of depth 1:
new bound:
X₀+1 {O(n)}
TWN: t₆₄: l2→l2
cycle: [t₆₄: l2→l2]
loop: (0 < X₅,(X₅) -> (X₅-1)
order: [X₅]
closed-form:
X₅: X₅ + [[n != 0]] * -1 * n^1
Termination: true
Formula:
1 < 0
∨ 0 < X₅ ∧ 1 ≤ 0 ∧ 0 ≤ 1
Stabilization-Threshold for: 0 < X₅
alphas_abs: X₅
M: 0
N: 1
Bound: 2⋅X₅+2 {O(n)}
loop: (0 < X₅,(X₅) -> (X₅-1)
order: [X₅]
closed-form:
X₅: X₅ + [[n != 0]] * -1 * n^1
Termination: true
Formula:
1 < 0
∨ 0 < X₅ ∧ 1 ≤ 0 ∧ 0 ≤ 1
Stabilization-Threshold for: 0 < X₅
alphas_abs: X₅
M: 0
N: 1
Bound: 2⋅X₅+2 {O(n)}
TWN - Lifting for t₆₄: l2→l2 of 2⋅X₅+4 {O(n)}
relevant size-bounds w.r.t. t₆₂:
X₅: 2⋅X₂+2⋅X₃+3⋅X₁+6⋅X₀ {O(n)}
Runtime-bound of t₆₂: X₀+1 {O(n)}
Results in: 12⋅X₀⋅X₀+4⋅X₀⋅X₂+4⋅X₀⋅X₃+6⋅X₀⋅X₁+16⋅X₀+4⋅X₂+4⋅X₃+6⋅X₁+4 {O(n^2)}
TWN - Lifting for t₆₄: l2→l2 of 2⋅X₅+4 {O(n)}
relevant size-bounds w.r.t. t₆₃:
X₅: X₁+X₂ {O(n)}
Runtime-bound of t₆₃: 1 {O(1)}
Results in: 2⋅X₁+2⋅X₂+4 {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₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l2
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location n_l3___3
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₂+X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₂+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₂ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₂+X₄ ∧ 1 ≤ X₀+X₄ ∧ X₃ ≤ X₁ ∧ X₁ ≤ X₃ ∧ X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ 1 ≤ X₀ for location n_l2___2
Found invariant 0 ≤ X₆ ∧ X₄ ≤ X₀ for location l1
Found invariant 0 ≤ X₆ ∧ 0 ≤ X₄+X₆ ∧ 1 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l4
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₂+X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₂+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₂ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₂+X₄ ∧ 1 ≤ X₀+X₄ ∧ X₃ ≤ X₁ ∧ X₁ ≤ X₃ ∧ X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ 1 ≤ X₀ for location n_l3___1
knowledge_propagation leads to new time bound X₀ {O(n)} for transition t₁₃₀: l2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → n_l3___3(X₀, X₁, X₂, X₃, X₄, X₅-1, X₆) :|: 0 < X₅ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1+X₄ ≤ X₀ ∧ 1+X₄ ≤ X₆ ∧ 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀
knowledge_propagation leads to new time bound X₀ {O(n)} for transition t₁₃₂: n_l3___3(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → n_l2___2(X₀, X₃, X₀, X₃, X₄, X₅, X₆) :|: 0 < 1+X₅ ∧ 1+X₄ ≤ X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 0 ≤ X₄ ∧ 0 ≤ X₅ ∧ 1+X₄ ≤ X₀ ∧ 1+X₄ ≤ X₆ ∧ 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀
MPRF for transition t₁₂₉: n_l2___2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → n_l3___1(X₀, X₁, X₂, X₃, X₄, X₅-1, X₆) :|: X₀ ≤ X₂ ∧ X₂ ≤ X₀ ∧ X₁ ≤ X₃ ∧ X₃ ≤ X₁ ∧ 0 ≤ X₅ ∧ 0 < X₅ ∧ 1+X₄ ≤ X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 0 ≤ X₄ ∧ 1+X₄ ≤ X₀ ∧ 1+X₄ ≤ X₆ ∧ 0 ≤ X₄ ∧ 1+X₄ ≤ X₀ ∧ 1+X₄ ≤ X₆ ∧ 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₂+X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₂+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₂ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₂+X₄ ∧ 1 ≤ X₀+X₄ ∧ X₃ ≤ X₁ ∧ X₁ ≤ X₃ ∧ X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ 1 ≤ X₀ of depth 1:
new bound:
2⋅X₀⋅X₁+2⋅X₀⋅X₂+X₀⋅X₀+X₀⋅X₃+X₀ {O(n^2)}
MPRF for transition t₁₃₁: n_l3___1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → n_l2___2(X₀, X₃, X₀, X₃, X₄, X₅, X₆) :|: 0 < 1+X₅ ∧ X₁ ≤ X₃ ∧ X₃ ≤ X₁ ∧ X₀ ≤ X₂ ∧ X₂ ≤ X₀ ∧ 1+X₄ ≤ X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 0 ≤ X₄ ∧ 0 ≤ X₅ ∧ 1+X₄ ≤ X₀ ∧ 1+X₄ ≤ X₆ ∧ 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₂+X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₂+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₂ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₂+X₄ ∧ 1 ≤ X₀+X₄ ∧ X₃ ≤ X₁ ∧ X₁ ≤ X₃ ∧ X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ 1 ≤ X₀ of depth 1:
new bound:
2⋅X₀⋅X₁+2⋅X₀⋅X₂+X₀⋅X₀+X₀⋅X₃ {O(n^2)}
MPRF for transition t₁₃₇: n_l2___2(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → l1(X₀, X₁, X₂, X₁, X₄, X₅, X₆) :|: 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ ∧ 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₂+X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₂+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₂ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₂+X₄ ∧ 1 ≤ X₀+X₄ ∧ X₃ ≤ X₁ ∧ X₁ ≤ X₃ ∧ X₂ ≤ X₀ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ 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
TWN: t₆: l4→l4
cycle: [t₆: l4→l4]
loop: (0 < X₆,(X₆) -> (X₆-1)
order: [X₆]
closed-form:
X₆: X₆ + [[n != 0]] * -1 * n^1
Termination: true
Formula:
1 < 0
∨ 0 < X₆ ∧ 1 ≤ 0 ∧ 0 ≤ 1
Stabilization-Threshold for: 0 < X₆
alphas_abs: X₆
M: 0
N: 1
Bound: 2⋅X₆+2 {O(n)}
TWN - Lifting for t₆: l4→l4 of 2⋅X₆+4 {O(n)}
relevant size-bounds w.r.t. t₅:
X₆: 6⋅X₀⋅X₀⋅X₀+16⋅X₀⋅X₀+16⋅X₀+6 {O(n^3)}
Runtime-bound of t₅: 1 {O(1)}
Results in: 12⋅X₀⋅X₀⋅X₀+32⋅X₀⋅X₀+32⋅X₀+16 {O(n^3)}
Analysing control-flow refined program
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l2
Found invariant 0 ≤ X₆ ∧ 0 ≤ X₄+X₆ ∧ X₄ ≤ X₆ ∧ 1 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location n_l4___2
Found invariant 0 ≤ X₆ ∧ 0 ≤ X₄+X₆ ∧ 1 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location n_l4___1
Found invariant 0 ≤ X₆ ∧ X₄ ≤ X₀ for location l1
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l4
Found invariant 1 ≤ X₆ ∧ 1 ≤ X₅+X₆ ∧ 1 ≤ X₄+X₆ ∧ 1+X₄ ≤ X₆ ∧ 2 ≤ X₀+X₆ ∧ 0 ≤ X₅ ∧ 0 ≤ X₄+X₅ ∧ 1 ≤ X₀+X₅ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ for location l3
MPRF for transition t₂₀₇: n_l4___1(X₀, X₁, X₂, X₃, X₄, X₅, X₆) → n_l4___1(X₀, X₁, X₂, X₃, X₄, X₅, X₆-1) :|: 0 < X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 0 ≤ X₆ ∧ 0 ≤ X₄+X₆ ∧ 1 ≤ X₀+X₆ ∧ 1+X₄ ≤ X₀ ∧ 0 ≤ X₄ ∧ 1 ≤ X₀+X₄ ∧ 1 ≤ X₀ of depth 1:
new bound:
6⋅X₀⋅X₀⋅X₀+16⋅X₀⋅X₀+16⋅X₀+7 {O(n^3)}
CFR did not improve the program. Rolling back
CFR did not improve the program. Rolling back
All Bounds
Timebounds
Overall timebound:12⋅X₀⋅X₀⋅X₀+36⋅X₀⋅X₀+4⋅X₀⋅X₃+8⋅X₀⋅X₁+8⋅X₀⋅X₂+42⋅X₀+18 {O(n^3)}
t₀: 1 {O(1)}
t₁: X₀ {O(n)}
t₂: 2⋅X₀⋅X₀+2⋅X₀⋅X₃+4⋅X₀⋅X₁+4⋅X₀⋅X₂+4⋅X₀ {O(n^2)}
t₃: 2⋅X₀⋅X₀+2⋅X₀⋅X₃+4⋅X₀⋅X₁+4⋅X₀⋅X₂+4⋅X₀ {O(n^2)}
t₄: X₀ {O(n)}
t₅: 1 {O(1)}
t₆: 12⋅X₀⋅X₀⋅X₀+32⋅X₀⋅X₀+32⋅X₀+16 {O(n^3)}
Costbounds
Overall costbound: 12⋅X₀⋅X₀⋅X₀+36⋅X₀⋅X₀+4⋅X₀⋅X₃+8⋅X₀⋅X₁+8⋅X₀⋅X₂+42⋅X₀+18 {O(n^3)}
t₀: 1 {O(1)}
t₁: X₀ {O(n)}
t₂: 2⋅X₀⋅X₀+2⋅X₀⋅X₃+4⋅X₀⋅X₁+4⋅X₀⋅X₂+4⋅X₀ {O(n^2)}
t₃: 2⋅X₀⋅X₀+2⋅X₀⋅X₃+4⋅X₀⋅X₁+4⋅X₀⋅X₂+4⋅X₀ {O(n^2)}
t₄: X₀ {O(n)}
t₅: 1 {O(1)}
t₆: 12⋅X₀⋅X₀⋅X₀+32⋅X₀⋅X₀+32⋅X₀+16 {O(n^3)}
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₅: 0 {O(1)}
t₀, X₆: 0 {O(1)}
t₁, X₀: X₀ {O(n)}
t₁, X₁: X₁+X₃ {O(n)}
t₁, X₂: X₀+X₂ {O(n)}
t₁, X₃: X₁+X₃ {O(n)}
t₁, X₄: X₀ {O(n)}
t₁, X₅: 2⋅X₁+2⋅X₂+X₀+X₃ {O(n)}
t₁, X₆: 3⋅X₀⋅X₀⋅X₀+8⋅X₀⋅X₀+8⋅X₀+3 {O(n^3)}
t₂, X₀: X₀ {O(n)}
t₂, X₁: 2⋅X₁+2⋅X₃ {O(n)}
t₂, X₂: 2⋅X₀+X₂ {O(n)}
t₂, X₃: X₁+X₃ {O(n)}
t₂, X₄: X₀ {O(n)}
t₂, X₅: 2⋅X₁+2⋅X₂+X₀+X₃ {O(n)}
t₂, X₆: 3⋅X₀⋅X₀⋅X₀+8⋅X₀⋅X₀+8⋅X₀+3 {O(n^3)}
t₃, X₀: X₀ {O(n)}
t₃, X₁: X₁+X₃ {O(n)}
t₃, X₂: X₀ {O(n)}
t₃, X₃: X₁+X₃ {O(n)}
t₃, X₄: X₀ {O(n)}
t₃, X₅: 2⋅X₁+2⋅X₂+X₀+X₃ {O(n)}
t₃, X₆: 3⋅X₀⋅X₀⋅X₀+8⋅X₀⋅X₀+8⋅X₀+3 {O(n^3)}
t₄, X₀: X₀ {O(n)}
t₄, X₁: X₁+X₃ {O(n)}
t₄, X₂: X₀+X₂ {O(n)}
t₄, X₃: X₁+X₃ {O(n)}
t₄, X₄: X₀ {O(n)}
t₄, X₅: 2⋅X₀+2⋅X₃+4⋅X₁+4⋅X₂ {O(n)}
t₄, X₆: 6⋅X₀⋅X₀⋅X₀+16⋅X₀⋅X₀+16⋅X₀+6 {O(n^3)}
t₅, X₀: 2⋅X₀ {O(n)}
t₅, X₁: 2⋅X₁+2⋅X₃ {O(n)}
t₅, X₂: 2⋅X₀+X₂ {O(n)}
t₅, X₃: 2⋅X₁+2⋅X₃ {O(n)}
t₅, X₄: 2⋅X₀ {O(n)}
t₅, X₅: 2⋅X₀+2⋅X₃+4⋅X₁+4⋅X₂ {O(n)}
t₅, X₆: 6⋅X₀⋅X₀⋅X₀+16⋅X₀⋅X₀+16⋅X₀+6 {O(n^3)}
t₆, X₀: 2⋅X₀ {O(n)}
t₆, X₁: 2⋅X₁+2⋅X₃ {O(n)}
t₆, X₂: 2⋅X₀+X₂ {O(n)}
t₆, X₃: 2⋅X₁+2⋅X₃ {O(n)}
t₆, X₄: 2⋅X₀ {O(n)}
t₆, X₅: 2⋅X₀+2⋅X₃+4⋅X₁+4⋅X₂ {O(n)}
t₆, X₆: 6⋅X₀⋅X₀⋅X₀+16⋅X₀⋅X₀+16⋅X₀+6 {O(n^3)}