Initial Problem
Start: l0
Program_Vars: X₀, X₁
Temp_Vars: C, D, E
Locations: l0, l1
Transitions:
t₂: l0(X₀, X₁) → l1(X₀, X₁)
t₀: l1(X₀, X₁) → l1(D, X₁) :|: 0 ≤ X₀ ∧ 0 ≤ X₁ ∧ X₀+1 ≤ X₁ ∧ 2⋅C ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅C ∧ C+1 ≤ D ∧ 2⋅E ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅E ∧ D ≤ E+1
t₁: l1(X₀, X₁) → l1(X₀, D) :|: 0 ≤ X₀ ∧ 0 ≤ X₁ ∧ X₀+1 ≤ X₁ ∧ 2⋅C ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅C ∧ C ≤ D ∧ 2⋅E ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅E ∧ D ≤ E
Preprocessing
Problem after Preprocessing
Start: l0
Program_Vars: X₀, X₁
Temp_Vars: C, D, E
Locations: l0, l1
Transitions:
t₂: l0(X₀, X₁) → l1(X₀, X₁)
t₀: l1(X₀, X₁) → l1(D, X₁) :|: 0 ≤ X₀ ∧ 0 ≤ X₁ ∧ X₀+1 ≤ X₁ ∧ 2⋅C ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅C ∧ C+1 ≤ D ∧ 2⋅E ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅E ∧ D ≤ E+1
t₁: l1(X₀, X₁) → l1(X₀, D) :|: 0 ≤ X₀ ∧ 0 ≤ X₁ ∧ X₀+1 ≤ X₁ ∧ 2⋅C ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅C ∧ C ≤ D ∧ 2⋅E ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅E ∧ D ≤ E
MPRF for transition t₁: l1(X₀, X₁) → l1(X₀, D) :|: 0 ≤ X₀ ∧ 0 ≤ X₁ ∧ X₀+1 ≤ X₁ ∧ 2⋅C ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅C ∧ C ≤ D ∧ 2⋅E ≤ X₀+X₁ ∧ X₀+X₁+1 ≤ 3⋅E ∧ D ≤ E of depth 1:
new bound:
2⋅X₁+1 {O(n)}
MPRF:
l1 [2⋅X₁+1 ]
Analysing control-flow refined program
Found invariant 1 ≤ X₁ ∧ 3 ≤ X₀+X₁ ∧ 2 ≤ X₀ for location n_l1___4
Found invariant 4 ≤ X₁ ∧ 8 ≤ X₀+X₁ ∧ 4 ≤ X₀ for location n_l1___2
Found invariant 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 0 ≤ X₀ for location n_l1___3
Found invariant 2 ≤ X₁ ∧ 4 ≤ X₀+X₁ ∧ 2 ≤ X₀ for location n_l1___1
MPRF for transition t₃₁: n_l1___1(X₀, X₁) → n_l1___3(Arg0_P, Arg1_P) :|: 0 ≤ X₀ ∧ 2 ≤ X₀+X₁ ∧ 0 ≤ X₀ ∧ 1 ≤ X₁ ∧ 2+2⋅X₀ ≤ 3⋅X₁ ∧ 1+Arg0_P ≤ X₁ ∧ 0 ≤ Arg0_P ∧ 2⋅Arg1_P ≤ X₁+Arg0_P ∧ 1+X₁+Arg0_P ≤ 3⋅Arg1_P ∧ X₀ ≤ Arg0_P ∧ Arg0_P ≤ X₀ ∧ 2 ≤ X₁ ∧ 4 ≤ X₀+X₁ ∧ 2 ≤ X₀ of depth 1:
new bound:
3⋅X₀+5⋅X₁+5 {O(n)}
MPRF:
n_l1___3 [4⋅X₁-3⋅X₀-4 ]
n_l1___1 [2⋅X₁-X₀-1 ]
n_l1___4 [X₁-1 ]
n_l1___2 [X₁-1 ]
MPRF for transition t₃₂: n_l1___1(X₀, X₁) → n_l1___4(Arg0_P, X₁) :|: 0 ≤ X₀ ∧ 2 ≤ X₀+X₁ ∧ 0 ≤ X₀ ∧ 1 ≤ X₁ ∧ 2+2⋅X₀ ≤ 3⋅X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ 2⋅Arg0_P ≤ 2+X₀+X₁ ∧ 4+X₀+X₁ ≤ 3⋅Arg0_P ∧ 2 ≤ X₁ ∧ 4 ≤ X₀+X₁ ∧ 2 ≤ X₀ of depth 1:
new bound:
8⋅X₁+14 {O(n)}
MPRF:
n_l1___3 [4⋅X₁-5 ]
n_l1___1 [4⋅X₁-7 ]
n_l1___4 [4⋅X₁-9 ]
n_l1___2 [4⋅X₁-9 ]
MPRF for transition t₃₃: n_l1___2(X₀, X₁) → n_l1___1(Arg0_P, Arg1_P) :|: 0 ≤ X₀ ∧ 2 ≤ X₀+X₁ ∧ 4+X₁ ≤ 3⋅X₀ ∧ 2 ≤ X₀ ∧ 2⋅X₀ ≤ 1+2⋅X₁ ∧ 0 ≤ X₀ ∧ 1 ≤ X₁ ∧ 2+2⋅X₀ ≤ 3⋅X₁ ∧ 1+Arg0_P ≤ X₁ ∧ 0 ≤ Arg0_P ∧ 2⋅Arg1_P ≤ X₁+Arg0_P ∧ 1+X₁+Arg0_P ≤ 3⋅Arg1_P ∧ X₀ ≤ Arg0_P ∧ Arg0_P ≤ X₀ ∧ 4 ≤ X₁ ∧ 8 ≤ X₀+X₁ ∧ 4 ≤ X₀ of depth 1:
new bound:
4⋅X₁+1 {O(n)}
MPRF:
n_l1___3 [2⋅X₁ ]
n_l1___1 [4⋅X₁-2⋅X₀-3 ]
n_l1___4 [2⋅X₁-1 ]
n_l1___2 [2⋅X₁-1 ]
MPRF for transition t₃₅: n_l1___3(X₀, X₁) → n_l1___3(Arg0_P, Arg1_P) :|: 0 ≤ X₀ ∧ 0 ≤ X₀ ∧ 1 ≤ X₁ ∧ 2+2⋅X₀ ≤ 3⋅X₁ ∧ 1+Arg0_P ≤ X₁ ∧ 0 ≤ Arg0_P ∧ 2⋅Arg1_P ≤ X₁+Arg0_P ∧ 1+X₁+Arg0_P ≤ 3⋅Arg1_P ∧ X₀ ≤ Arg0_P ∧ Arg0_P ≤ X₀ ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
4⋅X₁ {O(n)}
MPRF:
n_l1___3 [2⋅X₁ ]
n_l1___1 [4⋅X₁-2⋅X₀-2 ]
n_l1___4 [2⋅X₁ ]
n_l1___2 [2⋅X₁-2 ]
MPRF for transition t₃₆: n_l1___3(X₀, X₁) → n_l1___4(Arg0_P, X₁) :|: 0 ≤ X₀ ∧ 0 ≤ X₀ ∧ 1 ≤ X₁ ∧ 2+2⋅X₀ ≤ 3⋅X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ 2⋅Arg0_P ≤ 2+X₀+X₁ ∧ 4+X₀+X₁ ≤ 3⋅Arg0_P ∧ 1 ≤ X₁ ∧ 1 ≤ X₀+X₁ ∧ 0 ≤ X₀ of depth 1:
new bound:
2⋅X₀+6⋅X₁+7 {O(n)}
MPRF:
n_l1___3 [4⋅X₁-2⋅X₀-3 ]
n_l1___1 [2⋅X₁-3 ]
n_l1___4 [2⋅X₁-4 ]
n_l1___2 [2⋅X₁-4 ]
MPRF for transition t₃₇: n_l1___4(X₀, X₁) → n_l1___1(Arg0_P, Arg1_P) :|: 0 ≤ X₀ ∧ 2 ≤ X₀+X₁ ∧ 4+X₁ ≤ 3⋅X₀ ∧ 2 ≤ X₀ ∧ 2⋅X₀ ≤ 1+2⋅X₁ ∧ 1+Arg0_P ≤ X₁ ∧ 0 ≤ Arg0_P ∧ 2⋅Arg1_P ≤ X₁+Arg0_P ∧ 1+X₁+Arg0_P ≤ 3⋅Arg1_P ∧ X₀ ≤ Arg0_P ∧ Arg0_P ≤ X₀ ∧ 1 ≤ X₁ ∧ 3 ≤ X₀+X₁ ∧ 2 ≤ X₀ of depth 1:
new bound:
3⋅X₁+X₀ {O(n)}
MPRF:
n_l1___3 [2⋅X₁-X₀ ]
n_l1___1 [2⋅X₁-X₀-1 ]
n_l1___4 [X₁ ]
n_l1___2 [X₁ ]
MPRF for transition t₃₈: n_l1___4(X₀, X₁) → n_l1___2(Arg0_P, X₁) :|: 0 ≤ X₀ ∧ 2 ≤ X₀+X₁ ∧ 4+X₁ ≤ 3⋅X₀ ∧ 2 ≤ X₀ ∧ 2⋅X₀ ≤ 1+2⋅X₁ ∧ 1+X₀ ≤ X₁ ∧ 0 ≤ X₀ ∧ 2⋅Arg0_P ≤ 2+X₀+X₁ ∧ 4+X₀+X₁ ≤ 3⋅Arg0_P ∧ 1 ≤ X₁ ∧ 3 ≤ X₀+X₁ ∧ 2 ≤ X₀ of depth 1:
new bound:
18⋅X₁+6⋅X₀ {O(n)}
MPRF:
n_l1___3 [12⋅X₁-6⋅X₀ ]
n_l1___1 [6⋅X₁ ]
n_l1___4 [6⋅X₁ ]
n_l1___2 [6⋅X₁-3 ]
CFR did not improve the program. Rolling back
All Bounds
Timebounds
Overall timebound:inf {Infinity}
t₂: 1 {O(1)}
t₀: inf {Infinity}
t₁: 2⋅X₁+1 {O(n)}
Costbounds
Overall costbound: inf {Infinity}
t₂: 1 {O(1)}
t₀: inf {Infinity}
t₁: 2⋅X₁+1 {O(n)}
Sizebounds
t₂, X₀: X₀ {O(n)}
t₂, X₁: X₁ {O(n)}
t₀, X₁: 2⋅X₁ {O(n)}
t₁, X₁: 2⋅X₁ {O(n)}