Preprocessing

Found invariant 0 ≤ X₀ for location l1

Found invariant 0 ≤ X₀ for location l2

Probabilistic Analysis

Probabilistic Program after Preprocessing

Start: l0
Program_Vars: X₀, X₁
Temp_Vars: T
Locations: l0, l1, l2
Transitions:
g₀:l0(X₀,X₁) → t₁:l1(T,X₁) :|: 1 ≤ T
g₂:l1(X₀,X₁) → [1/2]:t₃:l1(0,X₁) :+: [1/2]:t₄:l1(X₀,X₁) :|: 1 ≤ X₀ ∧ 0 ≤ X₀
g₅:l1(X₀,X₁) → [1/2]:t₆:l2(X₀,X₁-1) :+: [1/2]:t₇:l2(X₀,X₁) :|: 0 ≤ X₀
g₈:l2(X₀,X₁) → t₉:l1(X₀,X₁) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0

Run classical analysis on SCC: [l0]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₂: inf {Infinity}
g₅: inf {Infinity}
g₈: inf {Infinity}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₂: inf {Infinity}
g₅: inf {Infinity}
g₈: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}

Run probabilistic analysis on SCC: [l0]

Run classical analysis on SCC: [l1; l2]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₂: inf {Infinity}
g₅: inf {Infinity}
g₈: inf {Infinity}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₂: inf {Infinity}
g₅: inf {Infinity}
g₈: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₂,l1), X₁: 3⋅X₁ {O(n)}
(g₈,l1), X₀: 0 {O(1)}

Run probabilistic analysis on SCC: [l1; l2]

Analysing control-flow refined program

Run classical analysis on SCC: [l1]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₁₂: 2 {O(1)}
g₁₅: 2 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: 1 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: inf {Infinity}
g₃₅: 1 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₁₂: inf {Infinity}
g₁₅: inf {Infinity}
g₁₇: inf {Infinity}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: inf {Infinity}
g₂₉: inf {Infinity}
g₃₂: inf {Infinity}
g₃₅: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₁₂,l1_v1), X₁: 2⋅X₁ {O(n)}
(g₁₂,l1_v2), X₁: 2⋅X₁ {O(n)}
(g₁₅,l2_v1), X₁: 2⋅X₁+1 {O(n)}

Run probabilistic analysis on SCC: [l1]

Run classical analysis on SCC: [l1_v2]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₁₂: 2 {O(1)}
g₁₅: 2 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: 1 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: inf {Infinity}
g₃₅: 2 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₁₂: inf {Infinity}
g₁₅: inf {Infinity}
g₁₇: inf {Infinity}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: inf {Infinity}
g₂₉: inf {Infinity}
g₃₂: inf {Infinity}
g₃₅: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₁₂,l1_v1), X₀: 0 {O(1)}
(g₁₂,l1_v1), X₁: X₁ {O(n)}
(g₁₂,l1_v2), X₁: X₁ {O(n)}
(g₁₅,l2_v1), X₁: 2⋅X₁+1 {O(n)}
(g₃₂,l1_v1), X₁: 3⋅X₁ {O(n)}
(g₃₂,l1_v2), X₁: 3⋅X₁ {O(n)}
(g₃₅,l2_v5), X₁: 4⋅X₁+2 {O(n)}

Run probabilistic analysis on SCC: [l1_v2]

Plrf for transition g₃₂:l1_v2(X₀,X₁) → [1/2]:t₃₀:l1_v1(0,X₁) :+: [1/2]:t₃₁:l1_v2(X₀,X₁) :|: 1 ≤ X₀ ∧ 0 ≤ X₀:

new bound:

2 {O(1)}

PLRF:

• l1_v1: 0
• l1_v2: 2

Use classical time bound for entry point (g₁₂:l1→[t₁₀:1/2:l1_v1; t₁₁:1/2:l1_v2],l1_v2)

Run classical analysis on SCC: [l1_v1]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₁₂: 2 {O(1)}
g₁₅: 2 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: 2 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: 2 {O(1)}
g₃₅: 2 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₁₂: inf {Infinity}
g₁₅: inf {Infinity}
g₁₇: inf {Infinity}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: inf {Infinity}
g₂₉: inf {Infinity}
g₃₂: inf {Infinity}
g₃₅: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₁₂,l1_v1), X₀: 0 {O(1)}
(g₁₂,l1_v1), X₁: X₁ {O(n)}
(g₁₂,l1_v2), X₁: X₁ {O(n)}
(g₁₅,l2_v1), X₁: 2⋅X₁+1 {O(n)}
(g₂₇,l2_v4), X₀: 0 {O(1)}
(g₂₇,l2_v4), X₁: 6⋅X₁+2 {O(n)}
(g₃₂,l1_v1), X₀: 0 {O(1)}
(g₃₂,l1_v1), X₁: X₁ {O(n)}
(g₃₂,l1_v2), X₁: X₁ {O(n)}
(g₃₅,l2_v5), X₁: 4⋅X₁+2 {O(n)}

Run probabilistic analysis on SCC: [l1_v1]

Run classical analysis on SCC: [l2_v4]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₁₂: 2 {O(1)}
g₁₅: 2 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: 2 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: 2 {O(1)}
g₃₅: 2 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₁₂: inf {Infinity}
g₁₅: inf {Infinity}
g₁₇: inf {Infinity}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: inf {Infinity}
g₂₉: inf {Infinity}
g₃₂: inf {Infinity}
g₃₅: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₁₂,l1_v1), X₀: 0 {O(1)}
(g₁₂,l1_v1), X₁: X₁ {O(n)}
(g₁₂,l1_v2), X₁: X₁ {O(n)}
(g₁₅,l2_v1), X₁: 2⋅X₁+1 {O(n)}
(g₂₇,l2_v4), X₀: 0 {O(1)}
(g₂₇,l2_v4), X₁: 6⋅X₁+2 {O(n)}
(g₂₉,l1_v3), X₀: 0 {O(1)}
(g₂₉,l1_v3), X₁: 6⋅X₁+2 {O(n)}
(g₃₂,l1_v1), X₀: 0 {O(1)}
(g₃₂,l1_v1), X₁: X₁ {O(n)}
(g₃₂,l1_v2), X₁: X₁ {O(n)}
(g₃₅,l2_v5), X₁: 4⋅X₁+2 {O(n)}

Run probabilistic analysis on SCC: [l2_v4]

Run classical analysis on SCC: [l2_v5]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₁₂: 2 {O(1)}
g₁₅: 2 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: 2 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: 2 {O(1)}
g₃₅: 2 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₁₂: inf {Infinity}
g₁₅: inf {Infinity}
g₁₇: inf {Infinity}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: inf {Infinity}
g₂₉: inf {Infinity}
g₃₂: inf {Infinity}
g₃₅: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₁₂,l1_v1), X₀: 0 {O(1)}
(g₁₂,l1_v1), X₁: X₁ {O(n)}
(g₁₂,l1_v2), X₁: X₁ {O(n)}
(g₁₅,l2_v1), X₁: 2⋅X₁+1 {O(n)}
(g₂₇,l2_v4), X₀: 0 {O(1)}
(g₂₇,l2_v4), X₁: 6⋅X₁+2 {O(n)}
(g₂₉,l1_v3), X₀: 0 {O(1)}
(g₂₉,l1_v3), X₁: 6⋅X₁+2 {O(n)}
(g₃₂,l1_v1), X₀: 0 {O(1)}
(g₃₂,l1_v1), X₁: X₁ {O(n)}
(g₃₂,l1_v2), X₁: X₁ {O(n)}
(g₃₅,l2_v5), X₁: 4⋅X₁+2 {O(n)}

Run probabilistic analysis on SCC: [l2_v5]

Run classical analysis on SCC: [l2_v1]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₁₂: 2 {O(1)}
g₁₅: 2 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: 2 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: 2 {O(1)}
g₃₅: 2 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₁₂: inf {Infinity}
g₁₅: inf {Infinity}
g₁₇: inf {Infinity}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: inf {Infinity}
g₂₉: inf {Infinity}
g₃₂: inf {Infinity}
g₃₅: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₁₂,l1_v1), X₀: 0 {O(1)}
(g₁₂,l1_v1), X₁: X₁ {O(n)}
(g₁₂,l1_v2), X₁: X₁ {O(n)}
(g₁₅,l2_v1), X₁: 2⋅X₁+1 {O(n)}
(g₁₇,l1_v3), X₀: 0 {O(1)}
(g₁₇,l1_v3), X₁: 2⋅X₁+1 {O(n)}
(g₂₇,l2_v4), X₀: 0 {O(1)}
(g₂₇,l2_v4), X₁: 6⋅X₁+2 {O(n)}
(g₂₉,l1_v3), X₀: 0 {O(1)}
(g₂₉,l1_v3), X₁: 6⋅X₁+2 {O(n)}
(g₃₂,l1_v1), X₀: 0 {O(1)}
(g₃₂,l1_v1), X₁: X₁ {O(n)}
(g₃₂,l1_v2), X₁: X₁ {O(n)}
(g₃₅,l2_v5), X₁: 4⋅X₁+2 {O(n)}

Run probabilistic analysis on SCC: [l2_v1]

Run classical analysis on SCC: [l1_v3; l2_v2; l2_v3]

MPRF for transition t₁₈: l1_v3(X₀,X₁) → l2_v2(X₀,X₁-1) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0 of depth 1:

new bound:

8⋅X₁+3 {O(n)}

MPRF:

• l1_v3: [X₁]
• l2_v2: [X₁]
• l2_v3: [X₁]

MPRF for transition t₂₁: l2_v2(X₀,X₁) → l1_v3(X₀,X₁) :|: 0 ≤ X₁ ∧ X₀ ≤ 0 ∧ 0 ≤ X₀ ∧ 1 ≤ X₁ of depth 1:

new bound:

8⋅X₁+3 {O(n)}

MPRF:

• l1_v3: [X₁]
• l2_v2: [1+X₁]
• l2_v3: [X₁]

Classical Approximation after Lifting Classical Results

All Bounds
Timebounds

Overall timebound:inf {Infinity}
g₀: 1 {O(1)}
g₁₂: 2 {O(1)}
g₁₅: 2 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: inf {Infinity}
g₂₂: 8⋅X₁+3 {O(n)}
g₂₄: inf {Infinity}
g₂₇: 2 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: 2 {O(1)}
g₃₅: 2 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
g₀: inf {Infinity}
g₁₂: inf {Infinity}
g₁₅: inf {Infinity}
g₁₇: inf {Infinity}
g₂₀: inf {Infinity}
g₂₂: inf {Infinity}
g₂₄: inf {Infinity}
g₂₇: inf {Infinity}
g₂₉: inf {Infinity}
g₃₂: inf {Infinity}
g₃₅: inf {Infinity}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₁₂,l1_v1), X₀: 0 {O(1)}
(g₁₂,l1_v1), X₁: X₁ {O(n)}
(g₁₂,l1_v2), X₁: X₁ {O(n)}
(g₁₅,l2_v1), X₁: 2⋅X₁+1 {O(n)}
(g₁₇,l1_v3), X₀: 0 {O(1)}
(g₁₇,l1_v3), X₁: 2⋅X₁+1 {O(n)}
(g₂₀,l2_v2), X₀: 0 {O(1)}
(g₂₀,l2_v2), X₁: 16⋅X₁+6 {O(n)}
(g₂₀,l2_v3), X₀: 0 {O(1)}
(g₂₀,l2_v3), X₁: 16⋅X₁+6 {O(n)}
(g₂₂,l1_v3), X₀: 0 {O(1)}
(g₂₂,l1_v3), X₁: 8⋅X₁+3 {O(n)}
(g₂₄,l1_v3), X₀: 0 {O(1)}
(g₂₄,l1_v3), X₁: 8⋅X₁+3 {O(n)}
(g₂₇,l2_v4), X₀: 0 {O(1)}
(g₂₇,l2_v4), X₁: 6⋅X₁+2 {O(n)}
(g₂₉,l1_v3), X₀: 0 {O(1)}
(g₂₉,l1_v3), X₁: 6⋅X₁+2 {O(n)}
(g₃₂,l1_v1), X₀: 0 {O(1)}
(g₃₂,l1_v1), X₁: X₁ {O(n)}
(g₃₂,l1_v2), X₁: X₁ {O(n)}
(g₃₅,l2_v5), X₁: 4⋅X₁+2 {O(n)}

Run probabilistic analysis on SCC: [l1_v3; l2_v2; l2_v3]

Plrf for transition g₂₀:l1_v3(X₀,X₁) → [1/2]:t₁₈:l2_v2(X₀,X₁-1) :+: [1/2]:t₁₉:l2_v3(X₀,X₁) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0:

new bound:

16⋅X₁+6 {O(n)}

PLRF:

• l1_v3: 2⋅X₁
• l2_v2: 2⋅X₁
• l2_v3: 2⋅X₁

Use expected size bounds for entry point (g₁₇:l2_v1→[t₁₆:1:l1_v3],l1_v3)
Use classical time bound for entry point (g₁₇:l2_v1→[t₁₆:1:l1_v3],l1_v3)
Use expected size bounds for entry point (g₂₉:l2_v4→[t₂₈:1:l1_v3],l1_v3)
Use classical time bound for entry point (g₂₉:l2_v4→[t₂₈:1:l1_v3],l1_v3)

Plrf for transition g₂₄:l2_v3(X₀,X₁) → t₂₃:l1_v3(X₀,X₁) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0:

new bound:

8⋅X₁+3 {O(n)}

PLRF:

• l1_v3: X₁
• l2_v2: X₁
• l2_v3: 1+X₁

Use expected size bounds for entry point (g₁₇:l2_v1→[t₁₆:1:l1_v3],l1_v3)
Use classical time bound for entry point (g₁₇:l2_v1→[t₁₆:1:l1_v3],l1_v3)
Use expected size bounds for entry point (g₂₉:l2_v4→[t₂₈:1:l1_v3],l1_v3)
Use classical time bound for entry point (g₂₉:l2_v4→[t₂₈:1:l1_v3],l1_v3)

CFR: Improvement to new bound with the following program:

method: PartialEvaluationProbabilistic new bound:

O(n)

cfr-program:

Start: l0
Program_Vars: X₀, X₁
Temp_Vars: T
Locations: l0, l1, l1_v1, l1_v2, l1_v3, l2_v1, l2_v2, l2_v3, l2_v4, l2_v5
Transitions:
g₀:l0(X₀,X₁) → t₁:l1(T,X₁) :|: 1 ≤ T
g₁₂:l1(X₀,X₁) → [1/2]:t₁₀:l1_v1(0,X₁) :+: [1/2]:t₁₁:l1_v2(X₀,X₁) :|: 1 ≤ X₀ ∧ 0 ≤ X₀
g₁₅:l1(X₀,X₁) → [1/2]:t₁₃:l2_v1(X₀,X₁-1) :+: [1/2]:t₁₄:l2_v1(X₀,X₁) :|: 0 ≤ X₀
g₁₇:l2_v1(X₀,X₁) → t₁₆:l1_v3(X₀,X₁) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0
g₂₀:l1_v3(X₀,X₁) → [1/2]:t₁₈:l2_v2(X₀,X₁-1) :+: [1/2]:t₁₉:l2_v3(X₀,X₁) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0
g₂₂:l2_v2(X₀,X₁) → t₂₁:l1_v3(X₀,X₁) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0 ∧ 0 ≤ X₁
g₂₄:l2_v3(X₀,X₁) → t₂₃:l1_v3(X₀,X₁) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0
g₂₇:l1_v1(X₀,X₁) → [1/2]:t₂₅:l2_v4(X₀,X₁-1) :+: [1/2]:t₂₆:l2_v4(X₀,X₁) :|: 0 ≤ X₀ ∧ X₀ ≤ 0
g₂₉:l2_v4(X₀,X₁) → t₂₈:l1_v3(X₀,X₁) :|: 1 ≤ X₁ ∧ 0 ≤ X₀ ∧ X₀ ≤ 0
g₃₂:l1_v2(X₀,X₁) → [1/2]:t₃₀:l1_v1(0,X₁) :+: [1/2]:t₃₁:l1_v2(X₀,X₁) :|: 1 ≤ X₀ ∧ 0 ≤ X₀
g₃₅:l1_v2(X₀,X₁) → [1/2]:t₃₃:l2_v5(X₀,X₁-1) :+: [1/2]:t₃₄:l2_v5(X₀,X₁) :|: 1 ≤ X₀ ∧ 0 ≤ X₀

Results of Probabilistic Analysis

All Bounds

Timebounds

Overall timebound:32⋅X₁+25 {O(n)}
g₀: 1 {O(1)}
g₁₂: 2 {O(1)}
g₁₅: 2 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: 16⋅X₁+6 {O(n)}
g₂₂: 8⋅X₁+3 {O(n)}
g₂₄: 8⋅X₁+3 {O(n)}
g₂₇: 2 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: 2 {O(1)}
g₃₅: 2 {O(1)}

Costbounds

Overall costbound: 48⋅X₁+41 {O(n)}
g₀: 1 {O(1)}
g₁₂: 4 {O(1)}
g₁₅: 4 {O(1)}
g₁₇: 1 {O(1)}
g₂₀: 32⋅X₁+12 {O(n)}
g₂₂: 8⋅X₁+3 {O(n)}
g₂₄: 8⋅X₁+3 {O(n)}
g₂₇: 4 {O(1)}
g₂₉: 1 {O(1)}
g₃₂: 4 {O(1)}
g₃₅: 4 {O(1)}

Sizebounds

(g₀,l1), X₁: X₁ {O(n)}
(g₁₂,l1_v1), X₀: 0 {O(1)}
(g₁₂,l1_v1), X₁: X₁ {O(n)}
(g₁₂,l1_v2), X₁: X₁ {O(n)}
(g₁₅,l2_v1), X₁: 2⋅X₁+1 {O(n)}
(g₁₇,l1_v3), X₀: 0 {O(1)}
(g₁₇,l1_v3), X₁: 2⋅X₁+1 {O(n)}
(g₂₀,l2_v2), X₀: 0 {O(1)}
(g₂₀,l2_v2), X₁: 8⋅X₁+3 {O(n)}
(g₂₀,l2_v3), X₀: 0 {O(1)}
(g₂₀,l2_v3), X₁: 8⋅X₁+3 {O(n)}
(g₂₂,l1_v3), X₀: 0 {O(1)}
(g₂₂,l1_v3), X₁: 8⋅X₁+3 {O(n)}
(g₂₄,l1_v3), X₀: 0 {O(1)}
(g₂₄,l1_v3), X₁: 8⋅X₁+3 {O(n)}
(g₂₇,l2_v4), X₀: 0 {O(1)}
(g₂₇,l2_v4), X₁: 6⋅X₁+2 {O(n)}
(g₂₉,l1_v3), X₀: 0 {O(1)}
(g₂₉,l1_v3), X₁: 6⋅X₁+2 {O(n)}
(g₃₂,l1_v1), X₀: 0 {O(1)}
(g₃₂,l1_v1), X₁: X₁ {O(n)}
(g₃₂,l1_v2), X₁: X₁ {O(n)}
(g₃₅,l2_v5), X₁: 4⋅X₁+2 {O(n)}