LTS Termination Proof

by AProVE

Input

Integer Transition System

Proof

1 Switch to Cooperation Termination Proof

We consider the following cutpoint-transitions:
f603_0_createMap_Return f603_0_createMap_Return f603_0_createMap_Return: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f4672_0_containsValue_NULL f4672_0_containsValue_NULL f4672_0_containsValue_NULL: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f4731_0_containsValue_EQ f4731_0_containsValue_EQ f4731_0_containsValue_EQ: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f4768_0_put_NULL f4768_0_put_NULL f4768_0_put_NULL: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f4085_0_random_ArrayAccess f4085_0_random_ArrayAccess f4085_0_random_ArrayAccess: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f4846_0_put_EQ f4846_0_put_EQ f4846_0_put_EQ: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f5387_0_transfer_ArrayAccess f5387_0_transfer_ArrayAccess f5387_0_transfer_ArrayAccess: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f4007_0_createMap_LE f4007_0_createMap_LE f4007_0_createMap_LE: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f1_0_main_Load f1_0_main_Load f1_0_main_Load: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f5292_0_transfer_GE f5292_0_transfer_GE f5292_0_transfer_GE: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
__init __init __init: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
f4571_0_containsValue_GE f4571_0_containsValue_GE f4571_0_containsValue_GE: x1 = x1x2 = x2x3 = x3x4 = x4x5 = x5x6 = x6x7 = x7x8 = x8x9 = x9x10 = x10x11 = x11x12 = x12x13 = x13x14 = x14
and for every transition t, a duplicate t is considered.

2 SCC Decomposition

We consider subproblems for each of the 4 SCC(s) of the program graph.

2.1 SCC Subproblem 1/4

Here we consider the SCC { f4007_0_createMap_LE }.

2.1.1 Transition Removal

We remove transition 4 using the following ranking functions, which are bounded by 0.

f4007_0_createMap_LE: x2

2.1.2 Trivial Cooperation Program

There are no more "sharp" transitions in the cooperation program. Hence the cooperation termination is proved.

2.2 SCC Subproblem 2/4

Here we consider the SCC { f4768_0_put_NULL, f4846_0_put_EQ }.

2.2.1 Transition Removal

We remove transitions 16, 18, 19, 20, 21, 22, 17 using the following ranking functions, which are bounded by 0.

f4768_0_put_NULL: 1 + x4
f4846_0_put_EQ: x3

2.2.2 Trivial Cooperation Program

There are no more "sharp" transitions in the cooperation program. Hence the cooperation termination is proved.

2.3 SCC Subproblem 3/4

Here we consider the SCC { f5387_0_transfer_ArrayAccess, f5292_0_transfer_GE }.

2.3.1 Transition Removal

We remove transition 27 using the following ranking functions, which are bounded by 0.

f5292_0_transfer_GE: −1 − x4 + 2⋅x8
f5387_0_transfer_ArrayAccess: −1 − x3 + 2⋅x10

2.3.2 Transition Removal

We remove transition 25 using the following ranking functions, which are bounded by 0.

f5292_0_transfer_GE: −2⋅x4 + 2⋅x8 + 2
f5387_0_transfer_ArrayAccess: −2⋅x3 + 2⋅x10 + 1

2.3.3 Transition Removal

We remove transitions 28, 26 using the following ranking functions, which are bounded by 0.

f5387_0_transfer_ArrayAccess: x4
f5292_0_transfer_GE: x3

2.3.4 Trivial Cooperation Program

There are no more "sharp" transitions in the cooperation program. Hence the cooperation termination is proved.

2.4 SCC Subproblem 4/4

Here we consider the SCC { f4672_0_containsValue_NULL, f4731_0_containsValue_EQ, f4571_0_containsValue_GE }.

2.4.1 Transition Removal

We remove transitions 6, 10 using the following ranking functions, which are bounded by 0.

f4571_0_containsValue_GE: x2 + x3
f4672_0_containsValue_NULL: −1 − x2 + x5
f4731_0_containsValue_EQ: −1 − x2x4 + x6

2.4.2 Transition Removal

We remove transitions 7, 11, 12, 13, 9 using the following ranking functions, which are bounded by 0.

f4672_0_containsValue_NULL: 1 + x3
f4571_0_containsValue_GE: 0
f4731_0_containsValue_EQ: x3 + 0⋅x4

2.4.3 Trivial Cooperation Program

There are no more "sharp" transitions in the cooperation program. Hence the cooperation termination is proved.

Tool configuration

AProVE