Initial Problem

Start: eval_peed_pldi09_fig4_5_start
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: eval_peed_pldi09_fig4_5_bb0_in, eval_peed_pldi09_fig4_5_bb1_in, eval_peed_pldi09_fig4_5_bb2_in, eval_peed_pldi09_fig4_5_bb3_in, eval_peed_pldi09_fig4_5_start, eval_peed_pldi09_fig4_5_stop
Transitions:
t₃: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, X₂, X₂, X₃) :|: 1 ≤ X₂ ∧ 1+X₂ ≤ X₃
t₁: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0
t₂: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₂
t₄: eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃
t₅: eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₁ ≤ 0
t₆: eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₁
t₇: eval_peed_pldi09_fig4_5_bb2_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, 1+X₁, X₂, X₃) :|: X₀ ≤ 1 ∧ 1 ≤ X₀
t₈: eval_peed_pldi09_fig4_5_bb2_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁-1, X₂, X₃) :|: X₀ ≤ 0
t₉: eval_peed_pldi09_fig4_5_bb2_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁-1, X₂, X₃) :|: 2 ≤ X₀
t₁₀: eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_stop(X₀, X₁, X₂, X₃)
t₀: eval_peed_pldi09_fig4_5_start(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃)

Preprocessing

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

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

Problem after Preprocessing

Start: eval_peed_pldi09_fig4_5_start
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: eval_peed_pldi09_fig4_5_bb0_in, eval_peed_pldi09_fig4_5_bb1_in, eval_peed_pldi09_fig4_5_bb2_in, eval_peed_pldi09_fig4_5_bb3_in, eval_peed_pldi09_fig4_5_start, eval_peed_pldi09_fig4_5_stop
Transitions:
t₃: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, X₂, X₂, X₃) :|: 1 ≤ X₂ ∧ 1+X₂ ≤ X₃
t₁: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0
t₂: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₂
t₄: eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₅: eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₁ ≤ 0 ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₆: eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₁ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₇: eval_peed_pldi09_fig4_5_bb2_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, 1+X₁, X₂, X₃) :|: X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2 ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃
t₈: eval_peed_pldi09_fig4_5_bb2_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁-1, X₂, X₃) :|: X₀ ≤ 0 ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2 ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃
t₉: eval_peed_pldi09_fig4_5_bb2_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁-1, X₂, X₃) :|: 2 ≤ X₀ ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2 ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃
t₁₀: eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_stop(X₀, X₁, X₂, X₃)
t₀: eval_peed_pldi09_fig4_5_start(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃)

Cut unsatisfiable transition [t₅: eval_peed_pldi09_fig4_5_bb1_in→eval_peed_pldi09_fig4_5_bb3_in; t₆: eval_peed_pldi09_fig4_5_bb1_in→eval_peed_pldi09_fig4_5_bb3_in; t₆₂: eval_peed_pldi09_fig4_5_bb1_in→eval_peed_pldi09_fig4_5_bb3_in; t₆₃: eval_peed_pldi09_fig4_5_bb1_in→eval_peed_pldi09_fig4_5_bb3_in]

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

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

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

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

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

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

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

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

Analysing control-flow refined program

MPRF for transition t₇₅: eval_peed_pldi09_fig4_5_bb1_in_v1(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in_v4(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₀ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₀ ∧ 2 ≤ X₀+X₁ ∧ 2 ≤ X₁+X₃ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₂ ∧ 3 ≤ X₂+X₃ ∧ 4 ≤ X₀+X₃ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃ of depth 1:

new bound:

X₂+1 {O(n)}

MPRF:

• eval_peed_pldi09_fig4_5_bb1_in_v1: [1+X₁]
• eval_peed_pldi09_fig4_5_bb2_in_v4: [X₁]

MPRF for transition t₇₆: eval_peed_pldi09_fig4_5_bb2_in_v4(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v1(X₀, X₁-1, X₂, X₃) :|: 2 ≤ X₀ ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₂ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₂ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₁ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ 3 ≤ X₃ ∧ 4 ≤ X₀+X₂ ∧ 4 ≤ X₁+X₃ ∧ 5 ≤ X₀+X₃ ∧ 5 ≤ X₂+X₃ of depth 1:

new bound:

X₂ {O(n)}

MPRF:

• eval_peed_pldi09_fig4_5_bb1_in_v1: [X₁]
• eval_peed_pldi09_fig4_5_bb2_in_v4: [X₁]

MPRF for transition t₇₂: eval_peed_pldi09_fig4_5_bb1_in_v2(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in_v3(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 1+X₀ ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2+X₀ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ X₀ ≤ 0 ∧ X₀ ≤ X₁ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃ of depth 1:

new bound:

X₂+1 {O(n)}

MPRF:

• eval_peed_pldi09_fig4_5_bb1_in_v2: [1+X₁]
• eval_peed_pldi09_fig4_5_bb2_in_v3: [X₁]

MPRF for transition t₇₃: eval_peed_pldi09_fig4_5_bb2_in_v3(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v2(X₀, X₁-1, X₂, X₃) :|: X₀ ≤ 0 ∧ 1+X₀ ≤ X₁ ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₂ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2+X₀ ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₂ ∧ 2 ≤ X₃ ∧ 3+X₀ ≤ X₃ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ 3 ≤ X₃ ∧ 4 ≤ X₁+X₃ ∧ 5 ≤ X₂+X₃ of depth 1:

new bound:

X₂ {O(n)}

MPRF:

• eval_peed_pldi09_fig4_5_bb1_in_v2: [X₁]
• eval_peed_pldi09_fig4_5_bb2_in_v3: [X₁]

MPRF for transition t₆₉: eval_peed_pldi09_fig4_5_bb1_in_v3(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in_v2(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1+X₀ ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1+X₂ ≤ X₁ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₀+X₂ ∧ 2 ≤ X₁ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₁ ∧ 3 ≤ X₀+X₃ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₂+X₃ ∧ 4 ≤ X₁+X₃ ∧ X₀ ≤ X₂ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃ of depth 1:

new bound:

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

MPRF:

• eval_peed_pldi09_fig4_5_bb1_in_v3: [1+X₃-X₁]
• eval_peed_pldi09_fig4_5_bb2_in_v2: [X₃-X₁]

MPRF for transition t₇₀: eval_peed_pldi09_fig4_5_bb2_in_v2(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v3(X₀, 1+X₁, X₂, X₃) :|: X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1+X₀ ≤ X₁ ∧ 1 ≤ X₁ ∧ 1+X₂ ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₀+X₂ ∧ 2+X₀ ≤ X₃ ∧ 2 ≤ X₁ ∧ 2 ≤ X₁+X₂ ∧ 2+X₂ ≤ X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₁ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ 3 ≤ X₃ ∧ 4 ≤ X₀+X₃ ∧ 4 ≤ X₂+X₃ ∧ 5 ≤ X₁+X₃ ∧ X₀ ≤ X₂ of depth 1:

new bound:

X₂+X₃+1 {O(n)}

MPRF:

• eval_peed_pldi09_fig4_5_bb1_in_v3: [X₃-X₁]
• eval_peed_pldi09_fig4_5_bb2_in_v2: [X₃-X₁]

CFR: Improvement to new bound with the following program:

method: PartialEvaluation new bound:

O(n)

cfr-program:

Start: eval_peed_pldi09_fig4_5_start
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: eval_peed_pldi09_fig4_5_bb0_in, eval_peed_pldi09_fig4_5_bb1_in, eval_peed_pldi09_fig4_5_bb1_in_v1, eval_peed_pldi09_fig4_5_bb1_in_v2, eval_peed_pldi09_fig4_5_bb1_in_v3, eval_peed_pldi09_fig4_5_bb2_in_v1, eval_peed_pldi09_fig4_5_bb2_in_v2, eval_peed_pldi09_fig4_5_bb2_in_v3, eval_peed_pldi09_fig4_5_bb2_in_v4, eval_peed_pldi09_fig4_5_bb3_in, eval_peed_pldi09_fig4_5_start, eval_peed_pldi09_fig4_5_stop
Transitions:
t₃: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in(X₀, X₂, X₂, X₃) :|: 1 ≤ X₂ ∧ 1+X₂ ≤ X₃
t₁: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0
t₂: eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₂
t₆₄: eval_peed_pldi09_fig4_5_bb1_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in_v1(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ 0 ≤ X₁ ∧ X₂ ≤ X₁ ∧ X₁ ≤ X₂ ∧ X₁ ≤ X₃
t₇₅: eval_peed_pldi09_fig4_5_bb1_in_v1(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in_v4(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₀ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₀ ∧ 2 ≤ X₀+X₁ ∧ 2 ≤ X₁+X₃ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₂ ∧ 3 ≤ X₂+X₃ ∧ 4 ≤ X₀+X₃ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₇₄: eval_peed_pldi09_fig4_5_bb1_in_v1(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₁ ≤ 0 ∧ 1 ≤ X₀ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₀ ∧ 2 ≤ X₀+X₁ ∧ 2 ≤ X₁+X₃ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₂ ∧ 3 ≤ X₂+X₃ ∧ 4 ≤ X₀+X₃ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₇₂: eval_peed_pldi09_fig4_5_bb1_in_v2(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in_v3(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 1+X₀ ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2+X₀ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ X₀ ≤ 0 ∧ X₀ ≤ X₁ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₇₁: eval_peed_pldi09_fig4_5_bb1_in_v2(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₁ ≤ 0 ∧ X₀ ≤ 1 ∧ 1+X₀ ≤ X₂ ∧ 1 ≤ X₁+X₂ ∧ 1+X₁ ≤ X₂ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2+X₀ ≤ X₃ ∧ 2 ≤ X₁+X₃ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₂+X₃ ∧ X₀ ≤ 0 ∧ X₀ ≤ X₁ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₆₉: eval_peed_pldi09_fig4_5_bb1_in_v3(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb2_in_v2(X₀, X₁, X₂, X₃) :|: 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1+X₀ ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁+X₂ ∧ 1+X₂ ≤ X₁ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₀+X₂ ∧ 2 ≤ X₁ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₁ ∧ 3 ≤ X₀+X₃ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₂+X₃ ∧ 4 ≤ X₁+X₃ ∧ X₀ ≤ X₂ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₆₈: eval_peed_pldi09_fig4_5_bb1_in_v3(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1+X₀ ≤ X₁ ∧ 1+X₀ ≤ X₃ ∧ 1 ≤ X₁ ∧ 1 ≤ X₁+X₂ ∧ 1+X₂ ≤ X₁ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₀+X₂ ∧ 2 ≤ X₁ ∧ 2 ≤ X₁+X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₁ ∧ 3 ≤ X₀+X₃ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₂+X₃ ∧ 4 ≤ X₁+X₃ ∧ X₀ ≤ X₂ ∧ 0 ≤ X₁ ∧ X₁ ≤ X₃
t₆₅: eval_peed_pldi09_fig4_5_bb2_in_v1(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v1(X₀, X₁-1, X₂, X₃) :|: 2 ≤ X₀ ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2 ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ X₂ ≤ X₁ ∧ X₁ ≤ X₂
t₆₆: eval_peed_pldi09_fig4_5_bb2_in_v1(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v2(X₀, X₁-1, X₂, X₃) :|: X₀ ≤ 0 ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2 ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ X₂ ≤ X₁ ∧ X₁ ≤ X₂
t₆₇: eval_peed_pldi09_fig4_5_bb2_in_v1(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v3(X₀, 1+X₁, X₂, X₃) :|: X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2 ≤ X₃ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ X₂ ≤ X₁ ∧ X₁ ≤ X₂
t₇₀: eval_peed_pldi09_fig4_5_bb2_in_v2(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v3(X₀, 1+X₁, X₂, X₃) :|: X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1+X₀ ≤ X₁ ∧ 1 ≤ X₁ ∧ 1+X₂ ≤ X₁ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₀+X₂ ∧ 2+X₀ ≤ X₃ ∧ 2 ≤ X₁ ∧ 2 ≤ X₁+X₂ ∧ 2+X₂ ≤ X₃ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₁ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ 3 ≤ X₃ ∧ 4 ≤ X₀+X₃ ∧ 4 ≤ X₂+X₃ ∧ 5 ≤ X₁+X₃ ∧ X₀ ≤ X₂
t₇₃: eval_peed_pldi09_fig4_5_bb2_in_v3(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v2(X₀, X₁-1, X₂, X₃) :|: X₀ ≤ 0 ∧ 1+X₀ ≤ X₁ ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₂ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2+X₀ ≤ X₂ ∧ 2 ≤ X₁+X₂ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₂ ∧ 2 ≤ X₃ ∧ 3+X₀ ≤ X₃ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ 3 ≤ X₃ ∧ 4 ≤ X₁+X₃ ∧ 5 ≤ X₂+X₃
t₇₆: eval_peed_pldi09_fig4_5_bb2_in_v4(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb1_in_v1(X₀, X₁-1, X₂, X₃) :|: 2 ≤ X₀ ∧ 1 ≤ X₁ ∧ 1+X₁ ≤ X₂ ∧ 1+X₁ ≤ X₃ ∧ 1 ≤ X₂ ∧ 1+X₂ ≤ X₃ ∧ 2 ≤ X₁+X₂ ∧ 2+X₁ ≤ X₃ ∧ 2 ≤ X₂ ∧ 2 ≤ X₃ ∧ 3 ≤ X₀+X₁ ∧ 3 ≤ X₁+X₂ ∧ 3 ≤ X₁+X₃ ∧ 3 ≤ X₂+X₃ ∧ 3 ≤ X₃ ∧ 4 ≤ X₀+X₂ ∧ 4 ≤ X₁+X₃ ∧ 5 ≤ X₀+X₃ ∧ 5 ≤ X₂+X₃
t₁₀: eval_peed_pldi09_fig4_5_bb3_in(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_stop(X₀, X₁, X₂, X₃)
t₀: eval_peed_pldi09_fig4_5_start(X₀, X₁, X₂, X₃) → eval_peed_pldi09_fig4_5_bb0_in(X₀, X₁, X₂, X₃)

All Bounds

Timebounds

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

Costbounds

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