Side effects and aliasing can have simple axiomatic descriptions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Writing Larch interface language specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
An axiomatic treatment of exception handling in an expression-oriented language
ACM Transactions on Programming Languages and Systems (TOPLAS)
A computational logic handbook
A computational logic handbook
The synthesizer generator: a system for constructing language-based editors
The synthesizer generator: a system for constructing language-based editors
Simplification by Cooperating Decision Procedures
ACM Transactions on Programming Languages and Systems (TOPLAS)
Ada exception handling: an axiomatic approach
ACM Transactions on Programming Languages and Systems (TOPLAS)
An axiomatic basis for computer programming
Communications of the ACM
The Science of Programming
A Discipline of Programming
Program verification based on denotation semantics
POPL '81 Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An Aximatic Treatment of Algol 68 Routines
Proceedings of the 6th Colloquium, on Automata, Languages and Programming
A Sound and Complete Hoare Axiomatization of the Ada-Rendevous
Proceedings of the 9th Colloquium on Automata, Languages and Programming
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Stanford Pascal Verifier user manual
Stanford Pascal Verifier user manual
ANNA: a language for annotating ADA programs
ANNA: a language for annotating ADA programs
Using Larch to Specify Avalon/C++ Objects
IEEE Transactions on Software Engineering
Analysis of timing hazards in Ada programs
CSC '93 Proceedings of the 1993 ACM conference on Computer science
Interface language for supporting programming styles
IDL '94 Proceedings of the workshop on Interface definition languages
Integrating parallel dataflow programming with the Ada tasking model
TRI-Ada '94 Proceedings of the conference on TRI-Ada '94
Towards reuse of verified Ada software
TRI-Ada '90 Proceedings of the conference on TRI-ADA '90
SPARK—an annotated Ada subset for safety-critical programming
TRI-Ada '90 Proceedings of the conference on TRI-ADA '90
Looking into safety with the safety and security Rapporteur group
Proceedings of the 1998 annual ACM SIGAda international conference on Ada
A formal model of the Ada Ravenscar tasking profile; delay until
Proceedings of the 1999 annual ACM SIGAda international conference on Ada
Safety critical systems based on formal models
ACM SIGAda Ada Letters - special issue on presentations from SIGAda 2000
Proof planning for strategy development
Annals of Mathematics and Artificial Intelligence
A Ravenscar-Compliant Run-time Kernel for Safety-Critical Systems*
Real-Time Systems
An Architecture for Interactive Program Provers
TACAS '00 Proceedings of the 6th International Conference on Tools and Algorithms for Construction and Analysis of Systems: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000
A Formal Model of the Ada Ravenscar Tasking Profile; Protected Objects
Ada-Europe '99 Proceedings of the 1999 Ada-Europe International Conference on Reliable Software Technologies
DataFAN: A Practical Approach to Data Flow Analysis for Ada 95
Ada-Europe '02 Proceedings of the 7th Ada-Europe International Conference on Reliable Software Technologies
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume II
An approach to formal verication of real time concurrent Ada programs
IRTAW '03 Proceedings of the 12th international workshop on Real-time Ada
Logical Foundations of Program Assertions: What do Practitioners Want?
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
Formulating the Data-Flow Perspective for Business Process Management
Information Systems Research
Towards Formal Verification of ToolBus Scripts
AMAST 2008 Proceedings of the 12th international conference on Algebraic Methodology and Software Technology
Modular specification and verification of object-oriented programs
Modular specification and verification of object-oriented programs
Automated translation and analysis of a ToolBus script for auctions
FSEN'09 Proceedings of the Third IPM international conference on Fundamentals of Software Engineering
The spec# programming system: an overview
CASSIS'04 Proceedings of the 2004 international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
Hi-index | 0.00 |
The Penelope verification editor and its formal basis are described. Penelope is a prototype system for the interactive development and verification of programs that are written in a rich subset of sequential Ada. Because it generates verification conditions incrementally, Penelope can be used to develop a program and its correctness proof in concert. If an already-verified program is modified, one can attempt to prove the modified version by replaying and modifying the original sequence of proof steps. Verification conditions are generated by predicate transformers whose logical soundness can be proven by establishing a precise formal connection between predicate transformation and denotational definitions in the style of continuation semantics. Penelope's specification language, Larch/Ada, belongs to the family of Larch interface languages. It scales up properly, in the sense that one can demonstrate the soundness of decomposing an implementation hierarchically and reasoning locally about the implementation of each node in the hierarchy.