LTS Termination Proof

by AProVE

Input

Integer Transition System

Proof

1 Switch to Cooperation Termination Proof

We consider the following cutpoint-transitions:
f626_0_main_GE f626_0_main_GE f626_0_main_GE: x1 = x1x2 = x2x3 = x3x4 = x4
f60_0_power_GT f60_0_power_GT f60_0_power_GT: x1 = x1x2 = x2x3 = x3x4 = x4
f753_0_main_InvokeMethod f753_0_main_InvokeMethod f753_0_main_InvokeMethod: x1 = x1x2 = x2x3 = x3x4 = x4
f168_0_odd_NE f168_0_odd_NE f168_0_odd_NE: x1 = x1x2 = x2x3 = x3x4 = x4
f116_0_even_NE f116_0_even_NE f116_0_even_NE: x1 = x1x2 = x2x3 = x3x4 = x4
f60_0_power_GT' f60_0_power_GT' f60_0_power_GT': x1 = x1x2 = x2x3 = x3x4 = x4
f1_0_main_ConstantStackPush f1_0_main_ConstantStackPush f1_0_main_ConstantStackPush: x1 = x1x2 = x2x3 = x3x4 = x4
f675_0_main_InvokeMethod f675_0_main_InvokeMethod f675_0_main_InvokeMethod: x1 = x1x2 = x2x3 = x3x4 = x4
f712_0_main_ArrayAccess f712_0_main_ArrayAccess f712_0_main_ArrayAccess: x1 = x1x2 = x2x3 = x3x4 = x4
__init __init __init: x1 = x1x2 = x2x3 = x3x4 = x4
and for every transition t, a duplicate t is considered.

2 SCC Decomposition

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

2.1 SCC Subproblem 1/3

Here we consider the SCC { f626_0_main_GE, f753_0_main_InvokeMethod, f675_0_main_InvokeMethod, f712_0_main_ArrayAccess }.

2.1.1 Transition Removal

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

f626_0_main_GE: −1 − 2⋅x2 + 2⋅x3
f675_0_main_InvokeMethod: −1 − 2⋅x2 + 2⋅x4
f753_0_main_InvokeMethod: −3 − 2⋅x2 + 2⋅x4
f712_0_main_ArrayAccess: −1 − 2⋅x2 + 2⋅x3

2.1.2 Transition Removal

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

f626_0_main_GE: 2
f675_0_main_InvokeMethod: 1
f753_0_main_InvokeMethod: 3
f712_0_main_ArrayAccess: 0

2.1.3 Trivial Cooperation Program

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

2.2 SCC Subproblem 2/3

Here we consider the SCC { f168_0_odd_NE, f116_0_even_NE }.

2.2.1 Transition Removal

We remove transitions 17, 18 using the following ranking functions, which are bounded by 0.

f116_0_even_NE: x1
f168_0_odd_NE: x1

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

Here we consider the SCC { f60_0_power_GT, f60_0_power_GT' }.

2.3.1 Transition Removal

We remove transitions 13, 14 using the following ranking functions, which are bounded by 0.

f60_0_power_GT: 2⋅x2
f60_0_power_GT': x2 + 1

2.3.2 Trivial Cooperation Program

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

Tool configuration

AProVE