LTS Termination Proof

by AProVE

Input

Integer Transition System

Proof

1 Switch to Cooperation Termination Proof

We consider the following cutpoint-transitions:
f1_0_main_New f1_0_main_New f1_0_main_New: x1 = x1x2 = x2x3 = x3
f262_0_main_InvokeMethod f262_0_main_InvokeMethod f262_0_main_InvokeMethod: x1 = x1x2 = x2x3 = x3
f288_0__init__InvokeMethod f288_0__init__InvokeMethod f288_0__init__InvokeMethod: x1 = x1x2 = x2x3 = x3
f76_0__init__LE f76_0__init__LE f76_0__init__LE: x1 = x1x2 = x2x3 = x3
f194_0_height_NONNULL f194_0_height_NONNULL f194_0_height_NONNULL: x1 = x1x2 = x2x3 = x3
__init __init __init: x1 = x1x2 = x2x3 = x3
and for every transition t, a duplicate t is considered.

2 SCC Decomposition

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

2.1 SCC Subproblem 1/2

Here we consider the SCC { f288_0__init__InvokeMethod, f76_0__init__LE }.

2.1.1 Transition Removal

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

f76_0__init__LE: 2⋅x2
f288_0__init__InvokeMethod: 1 + 2⋅x3

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/2

Here we consider the SCC { f194_0_height_NONNULL }.

2.2.1 Transition Removal

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

f194_0_height_NONNULL: x1

2.2.2 Trivial Cooperation Program

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

Tool configuration

AProVE