Initial Problem
Start: l0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: l0, l1
Transitions:
t₀: l0(X₀, X₁, X₂, X₃) → l1(X₀, X₁, X₂, X₃)
t₁: l1(X₀, X₁, X₂, X₃) → l1(2⋅X₀+X₁, X₂, X₂+1, X₃) :|: 0 ≤ X₀+X₁ ∧ X₀ ≤ X₃
Preprocessing
Problem after Preprocessing
Start: l0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: l0, l1
Transitions:
t₀: l0(X₀, X₁, X₂, X₃) → l1(X₀, X₁, X₂, X₃)
t₁: l1(X₀, X₁, X₂, X₃) → l1(2⋅X₀+X₁, X₂, X₂+1, X₃) :|: 0 ≤ X₀+X₁ ∧ X₀ ≤ X₃
Time-Bound by TWN-Loops:
TWN-Loops: t₁ 4⋅X₂+4⋅X₃+18 {O(n)}
TWN-Loops:
entry: t₀: l0(X₀, X₁, X₂, X₃) → l1(X₀, X₁, X₂, X₃)
results in twn-loop: twn: (X₀,X₁,X₂,X₃) -> (2⋅X₀+X₁,X₂,X₂+1,X₃) :|: 0 ≤ X₀+X₁ ∧ X₀ ≤ X₃
order: [X₂; X₁; X₀; X₃]
closed-form:
X₂: X₂ + [[n != 0]] * n^1
X₁: [[n == 0]] * X₁ + [[n != 0]] * X₂ + [[n != 0, n != 1]] * n^1 + [[n != 0, n != 1]] * -1
X₀: X₀ * 2^n + [[n != 0]] * 1/2⋅X₁ * 2^n + [[n != 0, n != 1]] * 1/2⋅X₂ * 2^n + [[n != 0, n != 1]] * -X₂ + [[n != 0, n != 1, n != 2]] * 1/2 * 2^n + [[n != 0, n != 1, n != 2]] * -1 * n^1
X₃: X₃
Termination: true
Formula:
2⋅X₀+X₁+X₂+1 < 0 ∧ 0 < 2⋅X₀+X₁+X₂+1
∨ 2⋅X₀+X₁+X₂+1 < 0 ∧ 2 < 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0
∨ 2⋅X₀+X₁+X₂+1 < 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0 ∧ 2 ≤ 0 ∧ 0 ≤ 2
∨ 0 < 2 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 0 < 2⋅X₀+X₁+X₂+1
∨ 0 < 2 ∧ 2 < 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0
∨ 0 < 2 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0 ∧ 2 ≤ 0 ∧ 0 ≤ 2
∨ 0 < 2⋅X₂+2⋅X₃ ∧ 2⋅X₀+X₁+X₂+1 ≤ 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 0 ≤ 2 ∧ 2 ≤ 0 ∧ 0 < 2⋅X₀+X₁+X₂+1
∨ 0 < 2⋅X₂+2⋅X₃ ∧ 0 ≤ 2 ∧ 2 ≤ 0 ∧ 2 < 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0
∨ 0 < 2⋅X₂+2⋅X₃ ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0 ∧ 2 ≤ 0 ∧ 0 ≤ 2
∨ 2⋅X₀+X₁+X₂+1 ≤ 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 0 ≤ 2 ∧ 2 ≤ 0 ∧ 0 ≤ 2⋅X₂+2⋅X₃ ∧ 2⋅X₂+2⋅X₃ ≤ 0 ∧ 0 < 2⋅X₀+X₁+X₂+1
∨ 0 ≤ 2 ∧ 2 ≤ 0 ∧ 0 ≤ 2⋅X₂+2⋅X₃ ∧ 2⋅X₂+2⋅X₃ ≤ 0 ∧ 2 < 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0
∨ 0 ≤ 2⋅X₂+2⋅X₃ ∧ 2⋅X₂+2⋅X₃ ≤ 0 ∧ 0 ≤ 2⋅X₀+X₁+X₂+1 ∧ 2⋅X₀+X₁+X₂+1 ≤ 0 ∧ 2 ≤ 0 ∧ 0 ≤ 2
Stabilization-Threshold for: X₀ ≤ X₃
alphas_abs: 2+2⋅X₂+2⋅X₃
M: 5
N: 2
Bound: 4⋅X₂+4⋅X₃+10 {O(n)}
Stabilization-Threshold for: 0 ≤ X₀+X₁
alphas_abs: 2
M: 0
N: 1
Bound: 6 {O(1)}
relevant size-bounds w.r.t. t₀:
X₂: X₂ {O(n)}
X₃: X₃ {O(n)}
Runtime-bound of t₀: 1 {O(1)}
Results in: 4⋅X₂+4⋅X₃+18 {O(n)}
4⋅X₂+4⋅X₃+18 {O(n)}
All Bounds
Timebounds
Overall timebound:4⋅X₂+4⋅X₃+19 {O(n)}
t₀: 1 {O(1)}
t₁: 4⋅X₂+4⋅X₃+18 {O(n)}
Costbounds
Overall costbound: 4⋅X₂+4⋅X₃+19 {O(n)}
t₀: 1 {O(1)}
t₁: 4⋅X₂+4⋅X₃+18 {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₀: 148⋅2^(4⋅X₂+4⋅X₃+18)⋅X₃+16⋅2^(4⋅X₂+4⋅X₃+18)⋅X₃⋅X₃+186⋅2^(4⋅X₂+4⋅X₃+18)⋅X₂+19⋅2^(4⋅X₂+4⋅X₃+18)⋅X₁+24⋅2^(4⋅X₂+4⋅X₃+18)⋅X₂⋅X₂+2^(4⋅X₂+4⋅X₃+18)⋅342+2^(4⋅X₂+4⋅X₃+18)⋅4⋅X₁⋅X₂+2^(4⋅X₂+4⋅X₃+18)⋅4⋅X₁⋅X₃+2^(4⋅X₂+4⋅X₃+18)⋅40⋅X₂⋅X₃+2^(4⋅X₂+4⋅X₃+18)⋅X₀ {O(EXP)}
t₁, X₁: 4⋅X₃+6⋅X₂+18 {O(n)}
t₁, X₂: 4⋅X₃+5⋅X₂+18 {O(n)}
t₁, X₃: X₃ {O(n)}