A Framework for Specifying, Prototyping, and Reasoning about Computational Systems
Andrew Gacek

TL;DR
This thesis introduces a comprehensive framework combining a specification language, a prototype animation mechanism, and a logic for formal reasoning about systems, emphasizing the use of lambda-calculus for handling binding structures.
Contribution
It develops a rich meta-logic called G, an interactive reasoning system Abella, and demonstrates their effectiveness through various reasoning examples, advancing formal system analysis.
Findings
G supports induction and co-induction over specifications
Abella enables interactive reasoning about formal systems
Framework effectively models and analyzes computational systems
Abstract
This thesis concerns the development of a framework that facilitates the design and analysis of formal systems. Specifically, this framework provides a specification language which supports the concise and direct description of formal systems, a mechanism for animating the specification language thereby producing prototypes of encoded systems, and a logic for proving properties of specifications and therefore of the systems they encode. A defining characteristic of the proposed framework is that it is based on two separate but closely intertwined logics: a specification logic that facilitates the description of computational structure and another logic that exploits the special characteristics of the specification logic to support reasoning about the computational behavior of systems that are described using it. Both logics embody a natural treatment of binding structure by using the…
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
TopicsLogic, programming, and type systems · Formal Methods in Verification · Logic, Reasoning, and Knowledge
