Initial Problem

Start: evalSimpleMultipleDepstart
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: evalSimpleMultipleDepbb1in, evalSimpleMultipleDepbb2in, evalSimpleMultipleDepbb3in, evalSimpleMultipleDepbbin, evalSimpleMultipleDepentryin, evalSimpleMultipleDepreturnin, evalSimpleMultipleDepstart, evalSimpleMultipleDepstop
Transitions:
t₆: evalSimpleMultipleDepbb1in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb3in(1+X₀, X₁, X₂, X₃)
t₇: evalSimpleMultipleDepbb2in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb3in(0, 1+X₁, X₂, X₃)
t₂: evalSimpleMultipleDepbb3in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbbin(X₀, X₁, X₂, X₃) :|: 1+X₁ ≤ X₂
t₃: evalSimpleMultipleDepbb3in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepreturnin(X₀, X₁, X₂, X₃) :|: X₂ ≤ X₁
t₄: evalSimpleMultipleDepbbin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb1in(X₀, X₁, X₂, X₃) :|: 1+X₀ ≤ X₃
t₅: evalSimpleMultipleDepbbin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb2in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₀
t₁: evalSimpleMultipleDepentryin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb3in(0, 0, X₂, X₃)
t₈: evalSimpleMultipleDepreturnin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepstop(X₀, X₁, X₂, X₃)
t₀: evalSimpleMultipleDepstart(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepentryin(X₀, X₁, X₂, X₃)

Preprocessing

Found invariant 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 1 ≤ X₁+X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb1in

Found invariant 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbbin

Found invariant X₂ ≤ X₁ ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location evalSimpleMultipleDepstop

Found invariant X₃ ≤ X₀ ∧ 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb2in

Found invariant 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb3in

Found invariant X₂ ≤ X₁ ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location evalSimpleMultipleDepreturnin

Problem after Preprocessing

Start: evalSimpleMultipleDepstart
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: evalSimpleMultipleDepbb1in, evalSimpleMultipleDepbb2in, evalSimpleMultipleDepbb3in, evalSimpleMultipleDepbbin, evalSimpleMultipleDepentryin, evalSimpleMultipleDepreturnin, evalSimpleMultipleDepstart, evalSimpleMultipleDepstop
Transitions:
t₆: evalSimpleMultipleDepbb1in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb3in(1+X₀, X₁, X₂, X₃) :|: 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
t₇: evalSimpleMultipleDepbb2in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb3in(0, 1+X₁, X₂, X₃) :|: 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ X₃ ≤ X₀ ∧ 0 ≤ X₁
t₂: evalSimpleMultipleDepbb3in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbbin(X₀, X₁, X₂, X₃) :|: 1+X₁ ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
t₃: evalSimpleMultipleDepbb3in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepreturnin(X₀, X₁, X₂, X₃) :|: X₂ ≤ X₁ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
t₄: evalSimpleMultipleDepbbin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb1in(X₀, X₁, X₂, X₃) :|: 1+X₀ ≤ X₃ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
t₅: evalSimpleMultipleDepbbin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb2in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₀ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
t₁: evalSimpleMultipleDepentryin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb3in(0, 0, X₂, X₃)
t₈: evalSimpleMultipleDepreturnin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepstop(X₀, X₁, X₂, X₃) :|: 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ X₂ ≤ X₁
t₀: evalSimpleMultipleDepstart(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepentryin(X₀, X₁, X₂, X₃)

MPRF for transition t₅: evalSimpleMultipleDepbbin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb2in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₀ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ of depth 1:

new bound:

X₂ {O(n)}

MPRF:

• evalSimpleMultipleDepbb1in: [X₂-X₁]
• evalSimpleMultipleDepbb2in: [X₂-1-X₁]
• evalSimpleMultipleDepbb3in: [X₂-X₁]
• evalSimpleMultipleDepbbin: [X₂-X₁]

MPRF for transition t₇: evalSimpleMultipleDepbb2in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb3in(0, 1+X₁, X₂, X₃) :|: 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ X₃ ≤ X₀ ∧ 0 ≤ X₁ of depth 1:

new bound:

X₂ {O(n)}

MPRF:

• evalSimpleMultipleDepbb1in: [X₂-X₁]
• evalSimpleMultipleDepbb2in: [X₂-X₁]
• evalSimpleMultipleDepbb3in: [X₂-X₁]
• evalSimpleMultipleDepbbin: [X₂-X₁]

MPRF for transition t₄: evalSimpleMultipleDepbbin(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb1in(X₀, X₁, X₂, X₃) :|: 1+X₀ ≤ X₃ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ of depth 1:

new bound:

X₂⋅X₃+X₃ {O(n^2)}

MPRF:

• evalSimpleMultipleDepbb1in: [X₃-1-X₀]
• evalSimpleMultipleDepbb2in: [X₃-X₀]
• evalSimpleMultipleDepbb3in: [X₃-X₀]
• evalSimpleMultipleDepbbin: [X₃-X₀]

MPRF for transition t₆: evalSimpleMultipleDepbb1in(X₀, X₁, X₂, X₃) → evalSimpleMultipleDepbb3in(1+X₀, X₁, X₂, X₃) :|: 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ of depth 1:

new bound:

X₂⋅X₃+X₃ {O(n^2)}

MPRF:

• evalSimpleMultipleDepbb1in: [X₃-X₀]
• evalSimpleMultipleDepbb2in: [X₃-X₀]
• evalSimpleMultipleDepbb3in: [X₃-X₀]
• evalSimpleMultipleDepbbin: [X₃-X₀]

TWN: t₄: evalSimpleMultipleDepbbin→evalSimpleMultipleDepbb1in

cycle: [t₄: evalSimpleMultipleDepbbin→evalSimpleMultipleDepbb1in; t₆: evalSimpleMultipleDepbb1in→evalSimpleMultipleDepbb3in; t₂: evalSimpleMultipleDepbb3in→evalSimpleMultipleDepbbin]
original loop: (1+X₁ ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁,(X₀,X₁,X₂,X₃) -> (1+X₀,X₁,X₂,X₃))
transformed loop: (1+X₁ ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁,(X₀,X₁,X₂,X₃) -> (1+X₀,X₁,X₂,X₃))
loop: (1+X₁ ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁,(X₀,X₁,X₂,X₃) -> (1+X₀,X₁,X₂,X₃))
order: [X₃; X₂; X₁; X₀]
closed-form:
X₃: X₃
X₂: X₂
X₁: X₁
X₀: X₀ + [[n != 0]]⋅n^1

Termination: true
Formula:

0 ≤ 1 ∧ X₃ ≤ 1+X₀ ∧ 1 ≤ 0 ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
∨ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2+X₀ ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
∨ 1 ≤ 0 ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁

Stabilization-Threshold for: 1+X₀ ≤ X₃
alphas_abs: X₀+X₃
M: 0
N: 1
Bound: 2⋅X₀+2⋅X₃+2 {O(n)}
original loop: (1+X₁ ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁,(X₀,X₁,X₂,X₃) -> (1+X₀,X₁,X₂,X₃))
transformed loop: (1+X₁ ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁,(X₀,X₁,X₂,X₃) -> (1+X₀,X₁,X₂,X₃))
loop: (1+X₁ ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁,(X₀,X₁,X₂,X₃) -> (1+X₀,X₁,X₂,X₃))
order: [X₃; X₂; X₁; X₀]
closed-form:
X₃: X₃
X₂: X₂
X₁: X₁
X₀: X₀ + [[n != 0]]⋅n^1

Termination: true
Formula:

0 ≤ 1 ∧ X₃ ≤ 1+X₀ ∧ 1 ≤ 0 ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
∨ 0 ≤ 1 ∧ 1 ≤ 0 ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2+X₀ ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁
∨ 1 ≤ 0 ∧ 1 ≤ X₀+X₂ ∧ 1 ≤ X₀+X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 0 ≤ X₀ ∧ 0 ≤ X₀+X₁ ∧ 0 ≤ X₁

Stabilization-Threshold for: 1+X₀ ≤ X₃
alphas_abs: X₀+X₃
M: 0
N: 1
Bound: 2⋅X₀+2⋅X₃+2 {O(n)}

TWN - Lifting for [2: evalSimpleMultipleDepbb3in->evalSimpleMultipleDepbbin; 4: evalSimpleMultipleDepbbin->evalSimpleMultipleDepbb1in; 6: evalSimpleMultipleDepbb1in->evalSimpleMultipleDepbb3in] of 2⋅X₀+2⋅X₃+4 {O(n)}

relevant size-bounds w.r.t. t₁: evalSimpleMultipleDepentryin→evalSimpleMultipleDepbb3in:
X₀: 0 {O(1)}
X₃: X₃ {O(n)}
Runtime-bound of t₁: 1 {O(1)}
Results in: 2⋅X₃+4 {O(n)}

TWN - Lifting for [2: evalSimpleMultipleDepbb3in->evalSimpleMultipleDepbbin; 4: evalSimpleMultipleDepbbin->evalSimpleMultipleDepbb1in; 6: evalSimpleMultipleDepbb1in->evalSimpleMultipleDepbb3in] of 2⋅X₀+2⋅X₃+4 {O(n)}

relevant size-bounds w.r.t. t₇: evalSimpleMultipleDepbb2in→evalSimpleMultipleDepbb3in:
X₀: 0 {O(1)}
X₃: X₃ {O(n)}
Runtime-bound of t₇: X₂ {O(n)}
Results in: 2⋅X₂⋅X₃+4⋅X₂ {O(n^2)}

Found invariant 2 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 2 ≤ X₁+X₃ ∧ 2+X₁ ≤ X₃ ∧ 3 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₁ ≤ 0 ∧ 1+X₁ ≤ X₀ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1 ≤ X₀ for location evalSimpleMultipleDepbb1in_v2

Found invariant X₃ ≤ 0 ∧ 1+X₃ ≤ X₂ ∧ 1+X₃ ≤ X₁ ∧ X₁+X₃ ≤ 1 ∧ X₃ ≤ X₀ ∧ X₀+X₃ ≤ 0 ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 1+X₀ ≤ X₂ ∧ X₁ ≤ 1 ∧ X₁ ≤ 1+X₀ ∧ X₀+X₁ ≤ 1 ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb3in_v4

Found invariant X₃ ≤ 0 ∧ 3+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₁ ∧ X₃ ≤ X₀ ∧ X₀+X₃ ≤ 0 ∧ 3 ≤ X₂ ∧ 5 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ 3+X₀ ≤ X₂ ∧ 2 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ 2+X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbbin_v6

Found invariant 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 2 ≤ X₁+X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 1+X₀ ≤ X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb3in_v2

Found invariant 1 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₀+X₃ ∧ X₀ ≤ X₃ ∧ 2 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ 1 ≤ X₀ for location evalSimpleMultipleDepbb3in_v3

Found invariant X₁ ≤ 0 ∧ X₁ ≤ X₀ ∧ X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb3in

Found invariant 1 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 2 ≤ X₁+X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 2 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ 2+X₀ ≤ X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb1in_v3

Found invariant X₂ ≤ X₁ ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepreturnin

Found invariant X₃ ≤ 0 ∧ 1+X₃ ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₁+X₃ ≤ 0 ∧ X₃ ≤ X₀ ∧ X₀+X₃ ≤ 0 ∧ 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 1+X₀ ≤ X₂ ∧ X₁ ≤ 0 ∧ X₁ ≤ X₀ ∧ X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb2in_v1

Found invariant 1 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₀+X₃ ∧ X₀ ≤ X₃ ∧ 2 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ 1 ≤ X₀ for location evalSimpleMultipleDepbbin_v4

Found invariant X₂ ≤ X₁ ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepstop

Found invariant 2 ≤ X₃ ∧ 4 ≤ X₂+X₃ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 2 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ 1 ≤ X₀ for location evalSimpleMultipleDepbb1in_v4

Found invariant X₃ ≤ 0 ∧ 2+X₃ ≤ X₂ ∧ 1+X₃ ≤ X₁ ∧ X₃ ≤ X₀ ∧ X₀+X₃ ≤ 0 ∧ 2 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ 2+X₀ ≤ X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb2in_v4

Found invariant 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 2 ≤ X₀+X₃ ∧ X₀ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₁ ≤ 0 ∧ 1+X₁ ≤ X₀ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1 ≤ X₀ for location evalSimpleMultipleDepbb3in_v1

Found invariant X₃ ≤ 0 ∧ 2+X₃ ≤ X₂ ∧ 1+X₃ ≤ X₁ ∧ X₁+X₃ ≤ 1 ∧ X₃ ≤ X₀ ∧ X₀+X₃ ≤ 0 ∧ 2 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ 2+X₀ ≤ X₂ ∧ X₁ ≤ 1 ∧ X₁ ≤ 1+X₀ ∧ X₀+X₁ ≤ 1 ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbbin_v5

Found invariant 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 1+X₀ ≤ X₂ ∧ X₁ ≤ 0 ∧ X₁ ≤ X₀ ∧ X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbbin_v1

Found invariant 1 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 2 ≤ X₁+X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 2 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ 2+X₀ ≤ X₂ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1+X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbbin_v3

Found invariant 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₀+X₃ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₀+X₂ ∧ 1+X₀ ≤ X₂ ∧ X₁ ≤ 0 ∧ X₁ ≤ X₀ ∧ X₀+X₁ ≤ 0 ∧ 0 ≤ X₁ ∧ 0 ≤ X₀+X₁ ∧ X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb1in_v1

Found invariant 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 2 ≤ X₀+X₃ ∧ X₀ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₁ ≤ 0 ∧ 1+X₁ ≤ X₀ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1 ≤ X₀ for location evalSimpleMultipleDepbbin_v2

Found invariant X₃ ≤ X₀ ∧ 1 ≤ X₃ ∧ 2 ≤ X₂+X₃ ∧ 1 ≤ X₁+X₃ ∧ 1+X₁ ≤ X₃ ∧ 2 ≤ X₀+X₃ ∧ X₀ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₁ ≤ 0 ∧ 1+X₁ ≤ X₀ ∧ 0 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 1 ≤ X₀ for location evalSimpleMultipleDepbb2in_v2

Found invariant X₃ ≤ 0 ∧ 2+X₃ ≤ X₂ ∧ 2+X₃ ≤ X₁ ∧ X₃ ≤ X₀ ∧ X₀+X₃ ≤ 0 ∧ 2 ≤ X₂ ∧ 4 ≤ X₁+X₂ ∧ X₁ ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ 2+X₀ ≤ X₂ ∧ 2 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ 2+X₀ ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ for location evalSimpleMultipleDepbb3in_v5

Found invariant X₃ ≤ X₀ ∧ 1 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₀+X₃ ∧ X₀ ≤ X₃ ∧ 2 ≤ X₂ ∧ 3 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 3 ≤ X₀+X₂ ∧ 1 ≤ X₁ ∧ 2 ≤ X₀+X₁ ∧ 1 ≤ X₀ for location evalSimpleMultipleDepbb2in_v3

Cut unsatisfiable transition [t₆₈: evalSimpleMultipleDepbbin_v5→evalSimpleMultipleDepbb1in_v3]

All Bounds

Timebounds

Overall timebound:4⋅X₂⋅X₃+4⋅X₃+6⋅X₂+8 {O(n^2)}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: 2⋅X₂⋅X₃+2⋅X₃+4⋅X₂+4 {O(n^2)}
t₃: 1 {O(1)}
t₄: X₂⋅X₃+X₃ {O(n^2)}
t₅: X₂ {O(n)}
t₆: X₂⋅X₃+X₃ {O(n^2)}
t₇: X₂ {O(n)}
t₈: 1 {O(1)}

Costbounds

Overall costbound: 4⋅X₂⋅X₃+4⋅X₃+6⋅X₂+8 {O(n^2)}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: 2⋅X₂⋅X₃+2⋅X₃+4⋅X₂+4 {O(n^2)}
t₃: 1 {O(1)}
t₄: X₂⋅X₃+X₃ {O(n^2)}
t₅: X₂ {O(n)}
t₆: X₂⋅X₃+X₃ {O(n^2)}
t₇: X₂ {O(n)}
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₀: 0 {O(1)}
t₁, X₁: 0 {O(1)}
t₁, X₂: X₂ {O(n)}
t₁, X₃: X₃ {O(n)}
t₂, X₀: X₂⋅X₃+X₃ {O(n^2)}
t₂, X₁: X₂ {O(n)}
t₂, X₂: X₂ {O(n)}
t₂, X₃: X₃ {O(n)}
t₃, X₀: 0 {O(1)}
t₃, X₁: X₂ {O(n)}
t₃, X₂: 2⋅X₂ {O(n)}
t₃, X₃: 2⋅X₃ {O(n)}
t₄, X₀: X₂⋅X₃+X₃ {O(n^2)}
t₄, X₁: X₂ {O(n)}
t₄, X₂: X₂ {O(n)}
t₄, X₃: X₃ {O(n)}
t₅, X₀: X₂⋅X₃+X₃ {O(n^2)}
t₅, X₁: X₂ {O(n)}
t₅, X₂: X₂ {O(n)}
t₅, X₃: X₃ {O(n)}
t₆, X₀: X₂⋅X₃+X₃ {O(n^2)}
t₆, X₁: X₂ {O(n)}
t₆, X₂: X₂ {O(n)}
t₆, X₃: X₃ {O(n)}
t₇, X₀: 0 {O(1)}
t₇, X₁: X₂ {O(n)}
t₇, X₂: X₂ {O(n)}
t₇, X₃: X₃ {O(n)}
t₈, X₀: 0 {O(1)}
t₈, X₁: X₂ {O(n)}
t₈, X₂: 2⋅X₂ {O(n)}
t₈, X₃: 2⋅X₃ {O(n)}