Abstract
A common tool for proving the termination of programs is the well-founded set, a set ordered in such a way as to admit no infinite descending sequences. The basic approach is to find a termination function that maps the values of the program variables into some well-founded set, such that the value of the termination function is repeatedly reduced throughout the computation. All too often, the termination functions required are difficult to find and are of a complexity out of proportion to the program under consideration. Multisets (bags) over a given well-founded set S are sets that admit multiple occurrences of elements taken from S. The given ordering on S induces an ordering on the finite multisets over S. This multiset ordering is shown to be well-founded. The multiset ordering enables the use of relatively simple and intuitive termination functions in otherwise difficult termination proofs. In particular, the multiset ordering is used to prove the termination of production systems, programs defined in terms of sets of rewriting rules.
Original language | English |
---|---|
Pages (from-to) | 465-476 |
Number of pages | 12 |
Journal | Communications of the ACM |
Volume | 22 |
Issue number | 8 |
DOIs | |
State | Published - 1 Aug 1979 |
Externally published | Yes |
Keywords
- bags
- multisets
- production systems
- program correctness
- program termination
- program verification
- reduction rules
- term rewriting systems
- tree replacement systems
- well-founded orderings
- well-founded sets