Initial Problem
Start: evalndecrstart
Program_Vars: X₀
Temp_Vars:
Locations: evalndecrbb1in, evalndecrbbin, evalndecrentryin, evalndecrreturnin, evalndecrstart, evalndecrstop
Transitions:
t₂: evalndecrbb1in(X₀) → evalndecrbbin(X₀) :|: 2 ≤ X₀
t₃: evalndecrbb1in(X₀) → evalndecrreturnin(X₀) :|: X₀ ≤ 1
t₄: evalndecrbbin(X₀) → evalndecrbb1in(X₀-1)
t₁: evalndecrentryin(X₀) → evalndecrbb1in(X₀-1)
t₅: evalndecrreturnin(X₀) → evalndecrstop(X₀)
t₀: evalndecrstart(X₀) → evalndecrentryin(X₀)
Preprocessing
Found invariant X₀ ≤ 1 for location evalndecrstop
Found invariant X₀ ≤ 1 for location evalndecrreturnin
Found invariant 2 ≤ X₀ for location evalndecrbbin
Problem after Preprocessing
Start: evalndecrstart
Program_Vars: X₀
Temp_Vars:
Locations: evalndecrbb1in, evalndecrbbin, evalndecrentryin, evalndecrreturnin, evalndecrstart, evalndecrstop
Transitions:
t₂: evalndecrbb1in(X₀) → evalndecrbbin(X₀) :|: 2 ≤ X₀
t₃: evalndecrbb1in(X₀) → evalndecrreturnin(X₀) :|: X₀ ≤ 1
t₄: evalndecrbbin(X₀) → evalndecrbb1in(X₀-1) :|: 2 ≤ X₀
t₁: evalndecrentryin(X₀) → evalndecrbb1in(X₀-1)
t₅: evalndecrreturnin(X₀) → evalndecrstop(X₀) :|: X₀ ≤ 1
t₀: evalndecrstart(X₀) → evalndecrentryin(X₀)
MPRF for transition t₂: evalndecrbb1in(X₀) → evalndecrbbin(X₀) :|: 2 ≤ X₀ of depth 1:
new bound:
X₀+2 {O(n)}
MPRF:
• evalndecrbb1in: [X₀-1]
• evalndecrbbin: [X₀-2]
MPRF for transition t₄: evalndecrbbin(X₀) → evalndecrbb1in(X₀-1) :|: 2 ≤ X₀ of depth 1:
new bound:
X₀+2 {O(n)}
MPRF:
• evalndecrbb1in: [X₀-1]
• evalndecrbbin: [X₀-1]
All Bounds
Timebounds
Overall timebound:2⋅X₀+8 {O(n)}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: X₀+2 {O(n)}
t₃: 1 {O(1)}
t₄: X₀+2 {O(n)}
t₅: 1 {O(1)}
Costbounds
Overall costbound: 2⋅X₀+8 {O(n)}
t₀: 1 {O(1)}
t₁: 1 {O(1)}
t₂: X₀+2 {O(n)}
t₃: 1 {O(1)}
t₄: X₀+2 {O(n)}
t₅: 1 {O(1)}
Sizebounds
t₀, X₀: X₀ {O(n)}
t₁, X₀: X₀+1 {O(n)}
t₂, X₀: X₀+1 {O(n)}
t₃, X₀: 2⋅X₀+2 {O(n)}
t₄, X₀: X₀+1 {O(n)}
t₅, X₀: 2⋅X₀+2 {O(n)}