Sometime = always + recursion \(\equiv\) always. On the equivalence of the intermittent and invariant assertions methods for proving inevitability properties of programs (Q1071491): Difference between revisions

From MaRDI portal
Import240304020342 (talk | contribs)
Set profile property.
ReferenceBot (talk | contribs)
Changed an Item
Property / cites work
 
Property / cites work: Q3860820 / rank
 
Normal rank
Property / cites work
 
Property / cites work: Q4054648 / rank
 
Normal rank
Property / cites work
 
Property / cites work: Q3968981 / rank
 
Normal rank
Property / cites work
 
Property / cites work: Q3802590 / rank
 
Normal rank
Property / cites work
 
Property / cites work: ``A la Burstall'' intermittent assertions induction principles for proving inevitability properties of programs / rank
 
Normal rank
Property / cites work
 
Property / cites work: Q5584402 / rank
 
Normal rank
Property / cites work
 
Property / cites work: Is Sometimes Ever Better Than Always? / rank
 
Normal rank
Property / cites work
 
Property / cites work: Formal verification of parallel programs / rank
 
Normal rank
Property / cites work
 
Property / cites work: Is “sometime” sometimes better than “always”? / rank
 
Normal rank
Property / cites work
 
Property / cites work: Q5598318 / rank
 
Normal rank
Property / cites work
 
Property / cites work: Proving Liveness Properties of Concurrent Programs / rank
 
Normal rank

Revision as of 12:04, 17 June 2024

scientific article
Language Label Description Also known as
English
Sometime = always + recursion \(\equiv\) always. On the equivalence of the intermittent and invariant assertions methods for proving inevitability properties of programs
scientific article

    Statements

    Sometime = always + recursion \(\equiv\) always. On the equivalence of the intermittent and invariant assertions methods for proving inevitability properties of programs (English)
    0 references
    0 references
    0 references
    1987
    0 references
    We propose and compare two induction principles called ''always'' and ''sometime'' for proving inevitability properties of programs. They are respective formalizations and generalizations of Floyd's invariant assertions and Burstall's intermittent assertions methods for proving total correctness of sequential programs whose methodological advantages or disadvantages have been discussed in a number of previous papers. Both principles are formalized in the abstract setting of arbitrary nondeterministic transition systems and illustrated by appropriate examples. The ''sometime'' method is interpreted as a recursive application of the ''always'' method. Hence ''always'' can be considered as a special case of ''sometime''. These proof methods are strongly equivalent in the sense that a proof by one induction principle can be rewritten into a proof by the other one. The first two theorems of the paper show that an invariant for the ''always'' method can be translated into an invariant for the ''sometime'' method even if every recursive application of the later is required to be of finite length. The third and main theorem of the paper shows how to translate an invariant for the ''sometime'' method into an invariant for the ''always'' method. It is emphasized that this translation technique follows the idea of transforming recursive programs into iterative ones. Of course, a general translation technique does not imply that the original ''sometime'' invariant and the resulting ''always'' invariant are equally understable. This is illustrated by an example.
    0 references
    induction principles
    0 references
    inevitability properties of programs
    0 references
    Floyd's invariant assertions
    0 references
    Burstall's intermittent assertions
    0 references
    correctness of sequential programs
    0 references
    nondeterministic transition systems
    0 references

    Identifiers