Empirical Evaluation of "Deciding Innermost Loops"

In the paper Deciding Innermost Loops, we present the first method to disprove innermost termination of term rewrite systems automatically. The paper introduces a suitable notion of an innermost loop and shows how to detect such an innermost loop: One can start with any technique amenable to detect loops. Then our novel procedure can be applied to decide whether a given loop is an innermost loop.

In our experiments, we want to assess the power of our new method. Therefore, we compare it to existing techniques to detect non-termination for full rewriting, as used by various tools in the previous termination competition. We are not aware of any other existing tool for disproving innermost termination.


Implementation in AProVE

We integrated our approach in the termination tool AProVE. To experiment with this new version of AProVE, please use the AProVE web interface.


Examples and Settings

We tested the new version of AProVE on the Termination Problem Data Base (TPDB) 4.0. The TPDB is the collection of problems used in the annual International Termination Competition. In our experiments below, we regard the 129 TRSs from the TPDB where at least one tool has been able to disprove termination in the competition in 2007.

As we want to determine the power of our method for disproving innermost termination, we transformed these termination problems into termination problems for innermost rewriting (by adding the declaration "(STRATEGY INNERMOST)" to the top of the file).

For our experiments, AProVE was run on Dual Intel Xeons at 2.33 GHz. For each example, we imposed a time limit of 60 seconds (corresponding to the way tools were evaluated in most of the previous competitions).

Of course AProVE can also disprove innermost termination of Example 1 from the paper. Please click on the following button to load the TRS into the web interface:




Experiments

In the following table, we list the results of the new AProVE version on the 129 examples described above. The result "NO" means that innermost termination could be disproved while "YES" indicates that the example could be shown to be innermost terminating. The result "MAYBE" means that no proof was found and "KILLED" indicates a time-out. Please click on any example to load it into the AProVE web interface (one has to insert the line "(STRATEGY INNERMOST)" manually) or on the indicated runtime to view the proof.

The below table clearly demonstrates the power of our method. With the results of this paper, AProVE now also disproves innermost termination for 93 of these 129 TRSs. Note that from the remaining 36 TRSs at least 30 are innermost terminating.


ExampleAProVE
NO1.48
NO1.61
NO2.22
NO6.77
NO2.02
NO5.51
NO1.73
NO4.16
NO2.31
NO1.04
NO1.05
NO1.14
NO1.09
NO1.06
NO1.15
YES1.15
YES1.41
YES0.99
YES1.05
YES1.04
YES1.05
YES1.54
YES1.10
YES1.14
YES1.11
YES1.26
YES1.03
YES1.15
NO1.32
NO1.58
NO1.50
NO1.21
NO1.32
NO1.54
NO1.66
NO1.58
NO1.65
NO1.60
NO1.62
NO1.40
YES0.98
NO1.59
NO1.16
YES0.99
NO1.70
NO1.65
NO1.60
NO1.64
NO2.10
NO4.43
NO1.82
NO1.72
NO1.57
NO1.60
NO1.43
NO1.83
NO1.64
NO1.83
NO1.61
NO1.15
NO1.62
NO1.64
NO1.38
NO1.94
NO1.76
NO1.15
NO1.70
NO1.54
NO2.27
NO1.68
NO1.49
YES1.03
NO1.26
YES1.14
YES1.05
YES1.08
YES1.14
YES1.14
YES0.98
NO1.78
YES1.03
YES2.35
NO1.59
NO3.54
NO3.48
NO1.09
NO3.39
KILLED60.00
NO4.99
NO1.83
YES1.31
YES1.06
NO1.15
YES3.71
NO0.98
YES1.48
NO1.08
NO1.12
NO0.97
NO0.97
NO0.96
MAYBE3.87
NO0.97
NO0.97
NO1.26
NO1.47
YES1.01
NO1.42
NO1.06
NO0.97
NO0.92
NO1.49
NO0.97
MAYBE2.90
NO0.99
NO1.04
NO0.92
NO0.98
NO1.04
KILLED60.00
MAYBE7.24
KILLED60.00
NO1.81
NO3.84
NO0.93
NO1.72
NO1.54
NO1.50
YES1.23