Initial Problem

Start: l0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: l0, l1, l2, l3, l4, l5, l6, l7
Transitions:
t₀: l0(X₀, X₁, X₂, X₃) → l6(X₀, X₁, X₂, X₃)
t₇: l1(X₀, X₁, X₂, X₃) → l3(X₀, X₁, X₂, X₃+X₀)
t₈: l2(X₀, X₁, X₂, X₃) → l3(X₀, X₁, X₂, X₃-X₀)
t₃: l3(X₀, X₁, X₂, X₃) → l4(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₁
t₄: l3(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: X₁+1 ≤ X₃
t₅: l4(X₀, X₁, X₂, X₃) → l1(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂
t₆: l4(X₀, X₁, X₂, X₃) → l2(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0
t₉: l5(X₀, X₁, X₂, X₃) → l7(X₀, X₁, X₂, X₃)
t₁: l6(X₀, X₁, X₂, X₃) → l3(1, X₂, X₀, X₁) :|: 1 ≤ X₀
t₂: l6(X₀, X₁, X₂, X₃) → l3(-1, X₂, X₀, X₁) :|: X₀ ≤ 0

Preprocessing

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

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

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

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

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

Found invariant X₀ ≤ 1 ∧ 0 ≤ 1+X₀ for location l3

Problem after Preprocessing

Start: l0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: l0, l1, l2, l3, l4, l5, l6, l7
Transitions:
t₀: l0(X₀, X₁, X₂, X₃) → l6(X₀, X₁, X₂, X₃)
t₇: l1(X₀, X₁, X₂, X₃) → l3(X₀, X₁, X₂, X₃+X₀) :|: X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ 0 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₈: l2(X₀, X₁, X₂, X₃) → l3(X₀, X₁, X₂, X₃-X₀) :|: X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ X₀+X₂ ≤ 1 ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₃: l3(X₀, X₁, X₂, X₃) → l4(X₀, X₁, X₂, X₃) :|: X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₄: l3(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: X₁+1 ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₅: l4(X₀, X₁, X₂, X₃) → l1(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₆: l4(X₀, X₁, X₂, X₃) → l2(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₉: l5(X₀, X₁, X₂, X₃) → l7(X₀, X₁, X₂, X₃) :|: 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₁: l6(X₀, X₁, X₂, X₃) → l3(1, X₂, X₀, X₁) :|: 1 ≤ X₀
t₂: l6(X₀, X₁, X₂, X₃) → l3(-1, X₂, X₀, X₁) :|: X₀ ≤ 0

Solv. Size Bound: t₃: l3→l4 for X₃

cycle: [t₃: l3→l4; t₅: l4→l1; t₇: l1→l3]
loop: (X₃ ≤ X₁ ∧ 1 ≤ X₂,(X₀,X₃) -> (X₀,X₃+X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: inf {Infinity}

Solv. Size Bound - Lifting for t₃: l3→l4 and X₃: inf {Infinity}

Solv. Size Bound: t₅: l4→l1 for X₃

cycle: [t₅: l4→l1; t₇: l1→l3; t₃: l3→l4]
loop: (1 ≤ X₂ ∧ X₃+X₀ ≤ X₁,(X₀,X₃) -> (X₀,X₃+X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: inf {Infinity}

Solv. Size Bound - Lifting for t₅: l4→l1 and X₃: inf {Infinity}

Solv. Size Bound: t₆: l4→l2 for X₃

cycle: [t₆: l4→l2; t₈: l2→l3; t₃: l3→l4]
loop: (X₂ ≤ 0 ∧ X₃ ≤ X₀+X₁,(X₀,X₃) -> (X₀,X₃-X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: inf {Infinity}

Solv. Size Bound - Lifting for t₆: l4→l2 and X₃: inf {Infinity}

Solv. Size Bound: t₇: l1→l3 for X₃

cycle: [t₅: l4→l1; t₃: l3→l4; t₇: l1→l3]
loop: (1 ≤ X₂ ∧ X₃+X₀ ≤ X₁,(X₀,X₃) -> (X₀,X₃+X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: inf {Infinity}

Solv. Size Bound - Lifting for t₇: l1→l3 and X₃: inf {Infinity}

Solv. Size Bound: t₈: l2→l3 for X₃

cycle: [t₆: l4→l2; t₃: l3→l4; t₈: l2→l3]
loop: (X₂ ≤ 0 ∧ X₃ ≤ X₀+X₁,(X₀,X₃) -> (X₀,X₃-X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: inf {Infinity}

Solv. Size Bound - Lifting for t₈: l2→l3 and X₃: inf {Infinity}

Solv. Size Bound - Lifting for t₃: l3→l4 and X₃: inf {Infinity}

Solv. Size Bound - Lifting for t₅: l4→l1 and X₃: inf {Infinity}

Solv. Size Bound - Lifting for t₆: l4→l2 and X₃: inf {Infinity}

Solv. Size Bound - Lifting for t₇: l1→l3 and X₃: inf {Infinity}

Solv. Size Bound - Lifting for t₈: l2→l3 and X₃: inf {Infinity}

Chain transitions t₅: l4→l1 and t₇: l1→l3 to t₁₅₄: l4→l3

Chain transitions t₆: l4→l2 and t₈: l2→l3 to t₁₅₅: l4→l3

Chain transitions t₂: l6→l3 and t₄: l3→l5 to t₁₅₆: l6→l5

Chain transitions t₁: l6→l3 and t₄: l3→l5 to t₁₅₇: l6→l5

Chain transitions t₁: l6→l3 and t₃: l3→l4 to t₁₅₈: l6→l4

Chain transitions t₂: l6→l3 and t₃: l3→l4 to t₁₅₉: l6→l4

Chain transitions t₁₅₅: l4→l3 and t₃: l3→l4 to t₁₆₀: l4→l4

Chain transitions t₁₅₅: l4→l3 and t₄: l3→l5 to t₁₆₁: l4→l5

Chain transitions t₁₅₄: l4→l3 and t₃: l3→l4 to t₁₆₂: l4→l4

Chain transitions t₁₅₄: l4→l3 and t₄: l3→l5 to t₁₆₃: l4→l5

Analysing control-flow refined program

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

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

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

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

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

Found invariant X₀ ≤ 1 ∧ 0 ≤ 1+X₀ for location l3

Solv. Size Bound: t₁₆₀: l4→l4 for X₃

cycle: [t₁₆₀: l4→l4]
loop: (X₂ ≤ 0 ∧ X₃ ≤ X₀+X₁,(X₀,X₃) -> (X₀,X₃-X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: inf {Infinity}

Solv. Size Bound - Lifting for t₁₆₀: l4→l4 and X₃: inf {Infinity}

Solv. Size Bound: t₁₆₂: l4→l4 for X₃

cycle: [t₁₆₂: l4→l4]
loop: (1 ≤ X₂ ∧ X₃+X₀ ≤ X₁,(X₀,X₃) -> (X₀,X₃+X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: inf {Infinity}

Solv. Size Bound - Lifting for t₁₆₂: l4→l4 and X₃: inf {Infinity}

Solv. Size Bound - Lifting for t₁₆₀: l4→l4 and X₃: inf {Infinity}

Solv. Size Bound - Lifting for t₁₆₂: l4→l4 and X₃: inf {Infinity}

CFR did not improve the program. Rolling back

CFR did not improve the program. Rolling back

Analysing control-flow refined program

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

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

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

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

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

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

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

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

Found invariant X₀ ≤ 1 ∧ 0 ≤ 1+X₀ for location l3

Solv. Size Bound: t₃₀₁: n_l2___2→n_l3___1 for X₃

cycle: [t₃₀₁: n_l2___2→n_l3___1; t₃₀₂: n_l3___1→n_l4___3; t₃₀₆: n_l4___3→n_l2___2]
loop: (X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁+X₀ ∧ X₂ ≤ 0 ∧ X₀+1 ≤ 0 ∧ X₂ ≤ 0,(X₀,X₃) -> (X₀,X₃-X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: X₁+X₃+2 {O(n)}

Solv. Size Bound - Lifting for t₃₀₁: n_l2___2→n_l3___1 and X₃: 2⋅X₁+X₂+2 {O(n)}

Solv. Size Bound: t₃₀₂: n_l3___1→n_l4___3 for X₃

cycle: [t₃₀₂: n_l3___1→n_l4___3; t₃₀₆: n_l4___3→n_l2___2; t₃₀₁: n_l2___2→n_l3___1]
loop: (X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ X₂ ≤ 0 ∧ X₀+X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ X₀+1 ≤ 0,(X₀,X₃) -> (X₀,X₃-X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: X₁+X₃+2 {O(n)}

Solv. Size Bound - Lifting for t₃₀₂: n_l3___1→n_l4___3 and X₃: 2⋅X₁+X₂+2 {O(n)}

Solv. Size Bound: t₃₀₆: n_l4___3→n_l2___2 for X₃

cycle: [t₃₀₆: n_l4___3→n_l2___2; t₃₀₁: n_l2___2→n_l3___1; t₃₀₂: n_l3___1→n_l4___3]
loop: (X₂ ≤ 0 ∧ X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁+X₀,(X₀,X₃) -> (X₀,X₃-X₀)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: X₁+X₃+2 {O(n)}

Solv. Size Bound - Lifting for t₃₀₆: n_l4___3→n_l2___2 and X₃: 2⋅X₁+X₂+2 {O(n)}

MPRF for transition t₃₀₁: n_l2___2(X₀, X₁, X₂, X₃) → n_l3___1(X₀, X₁, X₂, X₃-X₀) :|: X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀ of depth 1:

new bound:

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

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

new bound:

X₁+X₂ {O(n)}

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

new bound:

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

Solv. Size Bound: t₃₀₀: n_l1___5→n_l3___4 for X₃

cycle: [t₃₀₀: n_l1___5→n_l3___4; t₃₀₃: n_l3___4→n_l4___6; t₃₀₇: n_l4___6→n_l1___5]
loop: (X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₀+X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂,(X₀,X₃) -> (X₀,X₀+X₃)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: X₁+X₃+2 {O(n)}

Solv. Size Bound - Lifting for t₃₀₀: n_l1___5→n_l3___4 and X₃: 2⋅X₁+X₂+2 {O(n)}

Solv. Size Bound: t₃₀₃: n_l3___4→n_l4___6 for X₃

cycle: [t₃₀₃: n_l3___4→n_l4___6; t₃₀₇: n_l4___6→n_l1___5; t₃₀₀: n_l1___5→n_l3___4]
loop: (1 ≤ X₂ ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₀+X₁ ∧ X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀,(X₀,X₃) -> (X₀,X₀+X₃)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: X₁+X₃+2 {O(n)}

Solv. Size Bound - Lifting for t₃₀₃: n_l3___4→n_l4___6 and X₃: 2⋅X₁+X₂+2 {O(n)}

Solv. Size Bound: t₃₀₇: n_l4___6→n_l1___5 for X₃

cycle: [t₃₀₇: n_l4___6→n_l1___5; t₃₀₀: n_l1___5→n_l3___4; t₃₀₃: n_l3___4→n_l4___6]
loop: (1 ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₀+X₃ ≤ X₁,(X₀,X₃) -> (X₀,X₀+X₃)
overappr. closed-form: X₀⋅n+X₃ {O(n^2)}
runtime bound: X₁+X₃+2 {O(n)}

Solv. Size Bound - Lifting for t₃₀₇: n_l4___6→n_l1___5 and X₃: 2⋅X₁+X₂+2 {O(n)}

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

new bound:

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

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

new bound:

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

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

new bound:

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

CFR: Improvement to new bound with the following program:

new bound:

Infinite

cfr-program:

Start: l0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: l0, l3, l5, l6, l7, n_l1___5, n_l2___2, n_l3___1, n_l3___4, n_l4___3, n_l4___6
Transitions:
t₀: l0(X₀, X₁, X₂, X₃) → l6(X₀, X₁, X₂, X₃)
t₄: l3(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: X₁+1 ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₃₀₄: l3(X₀, X₁, X₂, X₃) → n_l4___3(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₃₀₅: l3(X₀, X₁, X₂, X₃) → n_l4___6(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂ ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₉: l5(X₀, X₁, X₂, X₃) → l7(X₀, X₁, X₂, X₃) :|: 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₁: l6(X₀, X₁, X₂, X₃) → l3(1, X₂, X₀, X₁) :|: 1 ≤ X₀
t₂: l6(X₀, X₁, X₂, X₃) → l3(-1, X₂, X₀, X₁) :|: X₀ ≤ 0
t₃₀₀: n_l1___5(X₀, X₁, X₂, X₃) → n_l3___4(X₀, X₁, X₂, X₀+X₃) :|: X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀
t₃₀₁: n_l2___2(X₀, X₁, X₂, X₃) → n_l3___1(X₀, X₁, X₂, X₃-X₀) :|: X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀
t₃₁₆: n_l3___1(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: X₁+1 ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ 1+X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀
t₃₀₂: n_l3___1(X₀, X₁, X₂, X₃) → n_l4___3(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ X₂ ≤ 0 ∧ X₀+X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₃ ≤ 1+X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀
t₃₁₇: n_l3___4(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: X₁+1 ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ 1+X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀
t₃₀₃: n_l3___4(X₀, X₁, X₂, X₃) → n_l4___6(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂ ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₀+X₁ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₃ ≤ 1+X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀
t₃₀₆: n_l4___3(X₀, X₁, X₂, X₃) → n_l2___2(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0 ∧ X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀
t₃₀₇: n_l4___6(X₀, X₁, X₂, X₃) → n_l1___5(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀

CFR: Improvement to new bound with the following program:

new bound:

6⋅X₁+6⋅X₂+5 {O(n)}

cfr-program:

Start: l0
Program_Vars: X₀, X₁, X₂, X₃
Temp_Vars:
Locations: l0, l3, l5, l6, l7, n_l1___5, n_l2___2, n_l3___1, n_l3___4, n_l4___3, n_l4___6
Transitions:
t₀: l0(X₀, X₁, X₂, X₃) → l6(X₀, X₁, X₂, X₃)
t₄: l3(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: X₁+1 ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₃₀₄: l3(X₀, X₁, X₂, X₃) → n_l4___3(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₃₀₅: l3(X₀, X₁, X₂, X₃) → n_l4___6(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂ ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₉: l5(X₀, X₁, X₂, X₃) → l7(X₀, X₁, X₂, X₃) :|: 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ 1+X₁ ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀
t₁: l6(X₀, X₁, X₂, X₃) → l3(1, X₂, X₀, X₁) :|: 1 ≤ X₀
t₂: l6(X₀, X₁, X₂, X₃) → l3(-1, X₂, X₀, X₁) :|: X₀ ≤ 0
t₃₀₀: n_l1___5(X₀, X₁, X₂, X₃) → n_l3___4(X₀, X₁, X₂, X₀+X₃) :|: X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀
t₃₀₁: n_l2___2(X₀, X₁, X₂, X₃) → n_l3___1(X₀, X₁, X₂, X₃-X₀) :|: X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀
t₃₁₆: n_l3___1(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: X₁+1 ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ 1+X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀
t₃₀₂: n_l3___1(X₀, X₁, X₂, X₃) → n_l4___3(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ X₂ ≤ 0 ∧ X₀+X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₃ ≤ 1+X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀
t₃₁₇: n_l3___4(X₀, X₁, X₂, X₃) → l5(X₀, X₁, X₂, X₃) :|: X₁+1 ≤ X₃ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ 1+X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀
t₃₀₃: n_l3___4(X₀, X₁, X₂, X₃) → n_l4___6(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂ ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₀+X₁ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ 0 ≤ 1+X₀ ∧ X₀ ≤ 1 ∧ X₃ ≤ 1+X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀
t₃₀₆: n_l4___3(X₀, X₁, X₂, X₃) → n_l2___2(X₀, X₁, X₂, X₃) :|: X₂ ≤ 0 ∧ X₀+1 ≤ 0 ∧ X₂ ≤ 0 ∧ X₃ ≤ X₁ ∧ 0 ≤ 1+X₀ ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ X₃ ≤ X₁ ∧ X₂ ≤ 0 ∧ X₂ ≤ 1+X₀ ∧ 1+X₀+X₂ ≤ 0 ∧ 1+X₀ ≤ 0 ∧ 0 ≤ 1+X₀
t₃₀₇: n_l4___6(X₀, X₁, X₂, X₃) → n_l1___5(X₀, X₁, X₂, X₃) :|: 1 ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀ ∧ 1 ≤ X₂ ∧ X₃ ≤ X₁ ∧ 0 ≤ 1+X₀ ∧ X₃ ≤ X₁ ∧ X₀ ≤ 1 ∧ X₃ ≤ X₁ ∧ 1 ≤ X₂ ∧ 2 ≤ X₀+X₂ ∧ X₀ ≤ X₂ ∧ X₀ ≤ 1 ∧ 1 ≤ X₀

All Bounds

Timebounds

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

Costbounds

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