
| Theory and Pra ti e of Logi  Programming   | 31                 |                 |       |         |        |       |
|--------------------------------------------|--------------------|-----------------|-------|---------|--------|-------|
| Ben hmark                                  | na                 | nr              | bt    | nm      | dt (s) | t (s) |
| ephp-13                                    | 35 518             | 90 784          | +     | 35 518  | 2 110  | 362   |
| +h                                         | 35 518             | 2 110           | 362   |         |        |       |
| ±h                                         | 35 362             | 2 090           | 361   |         |        |       |
| mutex3                                     | 276 086            | 2 406 357       | +     | 101 819 | 22 900 | 9 570 |
| +h                                         | 101 819            | 23 300          | 9 640 |         |        |       |
| ±h                                         | 101 609            | 24 000          | 9 580 |         |        |       |
| phi3                                       | 7 379              | 14 274          | +     | 6 217   | 74,3   | 3,32  |
| +h                                         | 6 217              | 74,3            | 3,35  |         |        |       |
| ±h                                         | 5 686              | 63,2            | 2,92  |         |        |       |
| seq4-ss4                                   | 6 873              | 1 197 182       | +     | 3 425   | 121    | 60,0  |
| +h                                         | 1 403              | 89,4            | 31,9  |         |        |       |
| ±h                                         | 107                | 20,2            | 7,58  |         |        |       |
| Legends for abbreviations:                 | na:                | Number of atoms |       |         |        |       |
| nr:                                        | Number of rules    |                 |       |         |        |       |
| nm:                                        | Number of modules  |                 |       |         |        |       |
| bt:                                        | Ben hmark type     |                 |       |         |        |       |
| dt:                                        | De omposition time |                 |       |         |        |       |
| t:                                         | Composition time   |                 |       |         |        |       |

Table 1. Summary of ben hmark results for module (de)
omposition

```

ursion and little negative re
                             ursion in this program instan
                                                           e as indi
                                                                    ated by the
                                                                                

```

number of atoms (35 518) and the respe tive numbers of modules (see olumn nm).

Thus we have an example of a very ne-grained de omposition where the denition8 of ea h atom ends up as its own module in the out ome. The given timings indiate that modlist and lp at are able to handle 15 and 100 modules per se
ond, respe tively. The share of le I/O and (de)
ompression is substantial in program de omposition. For instan e, the a tual splitting of the ephp-13 ben hmark (+h)
using modlist takes only 0, 59 se
ondsthe rest of approximately **2110** se
onds is spent to reate the ziple. To the ontrary, inating the stream of modules from the ziple is very e ient as it takes only 0, 45 se
onds in 
ase of ephp-13. After that the restoration of the original program instan e takes roughly 361 se
onds.

The reation and ompression of a joint symbol table for the modules a ounts for the most of the time spent on this operation. It should also be stressed that it is impra ti al to store modules in separate les for this program. For instan e, a shell ommand that refers to all modules fails due to ex essive number of arguments at the respe tive ommand line.

The next two programs in Table 1, mutex3 and phi3, are related to the distributed
