
TL;DR
This paper introduces a keyboard-editable matrix code approach based on Floyd's method and Dijkstra's guarded commands, facilitating the discovery of algorithms that meet specific pre- and postconditions, advancing program correctness verification.
Contribution
It presents a novel, editable matrix code method using Floyd's approach, simplifying the process of algorithm discovery and correctness verification compared to prior assertion-fitting techniques.
Findings
Matrix code helps discover algorithms from pre- to postconditions.
The method simplifies correctness verification without fitting assertions.
It extends the concept of guarded commands with an interactive editing tool.
Abstract
The correctness of a structured program is, at best, plausible. Though this is a step forward compared to what came before, it falls short of verified correctness. To verify a structured program according to Hoare's method one is faced with the problem of finding assertions to fit existing code. In 1971 this mode of verification was declared by Dijkstra as too hard to be of practical use---he advised that proof and code were to grow together. A method for doing this was independently published by Reynolds in 1978 and by van Emden in 1979. The latter was further developed to attain the form of matrix code. This form of code not only obviates the need of fitting assertions to existing code, but helps in discovering an algorithm that reaches a given postcondition from a fixed precondition. In this paper a keyboard-editable version of matrix code is presented that uses E.W. Dijkstra's…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed and Parallel Computing Systems
