Initial Problem
Start: eval_foo_start
Program_Vars: X₀, X₁
Temp_Vars:
Locations: eval_foo_bb0_in, eval_foo_bb1_in, eval_foo_bb2_in, eval_foo_bb3_in, eval_foo_start, eval_foo_stop
Transitions:
t₁: eval_foo_bb0_in(X₀, X₁) → eval_foo_bb1_in(X₁, X₁)
t₂: eval_foo_bb1_in(X₀, X₁) → eval_foo_bb2_in(X₀, X₁) :|: 0 ≤ X₀
t₃: eval_foo_bb1_in(X₀, X₁) → eval_foo_bb3_in(X₀, X₁) :|: 1+X₀ ≤ 0
t₄: eval_foo_bb2_in(X₀, X₁) → eval_foo_bb1_in(10-2⋅X₀, X₁)
t₅: eval_foo_bb3_in(X₀, X₁) → eval_foo_stop(X₀, X₁)
t₀: eval_foo_start(X₀, X₁) → eval_foo_bb0_in(X₀, X₁)
Preprocessing
Found invariant 0 ≤ X₀ for location eval_foo_bb2_in
Found invariant 1+X₀ ≤ 0 for location eval_foo_stop
Found invariant 1+X₀ ≤ 0 for location eval_foo_bb3_in
Problem after Preprocessing
Start: eval_foo_start
Program_Vars: X₀, X₁
Temp_Vars:
Locations: eval_foo_bb0_in, eval_foo_bb1_in, eval_foo_bb2_in, eval_foo_bb3_in, eval_foo_start, eval_foo_stop
Transitions:
t₁: eval_foo_bb0_in(X₀, X₁) → eval_foo_bb1_in(X₁, X₁)
t₂: eval_foo_bb1_in(X₀, X₁) → eval_foo_bb2_in(X₀, X₁) :|: 0 ≤ X₀
t₃: eval_foo_bb1_in(X₀, X₁) → eval_foo_bb3_in(X₀, X₁) :|: 1+X₀ ≤ 0
t₄: eval_foo_bb2_in(X₀, X₁) → eval_foo_bb1_in(10-2⋅X₀, X₁) :|: 0 ≤ X₀
t₅: eval_foo_bb3_in(X₀, X₁) → eval_foo_stop(X₀, X₁) :|: 1+X₀ ≤ 0
t₀: eval_foo_start(X₀, X₁) → eval_foo_bb0_in(X₀, X₁)
TWN: t₂: eval_foo_bb1_in→eval_foo_bb2_in
cycle: [t₂: eval_foo_bb1_in→eval_foo_bb2_in; t₄: eval_foo_bb2_in→eval_foo_bb1_in]
original loop: (0 ≤ X₀ ∧ 0 ≤ X₀,(X₀) -> (10-2⋅X₀))
transformed loop: (0 ≤ X₀ ∧ 0 ≤ X₀,(X₀) -> (10-2⋅X₀))
loop: (0 ≤ X₀ ∧ 0 ≤ X₀,(X₀) -> (10-2⋅X₀))
order: [X₀]
closed-form:X₀: X₀⋅(4)^n + [[n != 0]]⋅-10/3⋅(4)^n + [[n != 0]]⋅10/3
Termination: true
Formula:
3⋅X₀ ≤ 10 ∧ X₀ ≤ 3 ∧ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 10 ≤ 3⋅X₀
∨ 3⋅X₀ ≤ 10 ∧ X₀ ≤ 3 ∧ 0 ≤ 1 ∧ 10 ≤ 3⋅X₀
∨ 3⋅X₀ ≤ 10 ∧ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 10 ≤ 3⋅X₀
∨ 3⋅X₀ ≤ 10 ∧ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 10 ≤ 3⋅X₀ ∧ 11 ≤ 3⋅X₀
∨ 3⋅X₀ ≤ 10 ∧ 0 ≤ 1 ∧ 10 ≤ 3⋅X₀
∨ 3⋅X₀ ≤ 10 ∧ 0 ≤ 1 ∧ 10 ≤ 3⋅X₀ ∧ 11 ≤ 3⋅X₀
∨ X₀ ≤ 3 ∧ 11 ≤ 3⋅X₀
Stabilization-Threshold for: X₀ ≤ 5
alphas_abs: 8
M': 1
N: 1
Bound: 5 {O(1)}
Stabilization-Threshold for: 0 ≤ X₀
alphas_abs: 13
M': 1
N: 1
Bound: 6 {O(1)}
TWN - Lifting for [2: eval_foo_bb1_in->eval_foo_bb2_in; 4: eval_foo_bb2_in->eval_foo_bb1_in] of 27 {O(1)}
relevant size-bounds w.r.t. t₁: eval_foo_bb0_in→eval_foo_bb1_in:
Runtime-bound of t₁: 1 {O(1)}
Results in: 27 {O(1)}
All Bounds
Timebounds
Overall timebound:58 {O(1)}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: 27 {O(1)}
t₃: 1 {O(1)}
t₄: 27 {O(1)}
t₅: 1 {O(1)}
Costbounds
Overall costbound: 58 {O(1)}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: 27 {O(1)}
t₃: 1 {O(1)}
t₄: 27 {O(1)}
t₅: 1 {O(1)}
Sizebounds
t₀, X₀: X₀ {O(n)}
t₀, X₁: X₁ {O(n)}
t₁, X₀: X₁ {O(n)}
t₁, X₁: X₁ {O(n)}
t₂, X₀: 134217728⋅X₁+18119393280 {O(n)}
t₂, X₁: X₁ {O(n)}
t₃, X₀: 134217729⋅X₁+18119393280 {O(n)}
t₃, X₁: 2⋅X₁ {O(n)}
t₄, X₀: 134217728⋅X₁+18119393280 {O(n)}
t₄, X₁: X₁ {O(n)}
t₅, X₀: 134217729⋅X₁+18119393280 {O(n)}
t₅, X₁: 2⋅X₁ {O(n)}