The foundations of program verification
The foundations of program verification
Functional programming, formal specification, and rapid prototyping
IEEE Transactions on Software Engineering
Writing Larch interface language specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
RT-ASLAN: A specification language for real-time systems
IEEE Transactions on Software Engineering - Special issue on reliability and safety in real-time process control
The application of formal methods to the assessment of high integrity software
IEEE Transactions on Software Engineering - Special issue on reliability and safety in real-time process control
Towards a Formal Basis for the Formal Development Method and the Ina Jo Specification Language
IEEE Transactions on Software Engineering - Special issue on computer security and privacy
Implementation of a high-speed Prolog interpreter
SIGPLAN '87 Papers of the Symposium on Interpreters and interpretive techniques
Efficient interpretation of Prolog programs
SIGPLAN '87 Papers of the Symposium on Interpreters and interpretive techniques
Software engineering concepts
Programming in Prolog
Software processes are software too
ICSE '87 Proceedings of the 9th international conference on Software Engineering
On the use of formal methods in software development
ICSE '87 Proceedings of the 9th international conference on Software Engineering
ICSE '88 Proceedings of the 10th international conference on Software engineering
Please: executable specifications for incremental software development
Journal of Systems and Software
New directions in logic programming
CSC '86 Proceedings of the 1986 ACM fourteenth annual conference on Computer science
PLEASE:Predictable Logic based ExecutAble SpeCifications
CSC '86 Proceedings of the 1986 ACM fourteenth annual conference on Computer science
Logic and Databases: A Deductive Approach
ACM Computing Surveys (CSUR)
Reference Manual for the ADA Programming Language
Reference Manual for the ADA Programming Language
Software Development: A Rigorous Approach
Software Development: A Rigorous Approach
Introduction to Mathematical Theory of Computation
Introduction to Mathematical Theory of Computation
Symbolic Logic and Mechanical Theorem Proving
Symbolic Logic and Mechanical Theorem Proving
Formal specification as a design tool
POPL '80 Proceedings of the 7th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Software Specification Techniques (International Computer Science Series)
Software Specification Techniques (International Computer Science Series)
Encompass: an environment for incremental software development using executable, logic-based specifications
Rapid prototyping workshop: overview
Proceedings of the workshop on Rapid prototyping
Introduction of a formal technique into a software development environment: early observations
ACM SIGSOFT Software Engineering Notes
ACM SIGSOFT Software Engineering Notes
Run-time analysis of time-critical systems
Journal of Systems Architecture: the EUROMICRO Journal
Hi-index | 0.00 |
PLEASE is an Ada®-based, executable specification language which supports a formal development method similar to VDM. Like ANNA, PLEASE allows software to be annotated with formulae written in predicate logic; annotations can be used in proofs of correctness and to generate run-time assertion checks. PLEASE differs from ANNA by restricting the logic used in annotations to Horn clauses; therefore, PLEASE specifications can also be transformed into prototypes which use Prolog to "execute" pre- and post-conditions. We believe the early production of executable prototypes will enhance the development process. We also believe the restriction to Horn clauses will allow us to build on the significant research being performed on logic-based programming languages and databases. In this paper we give an overview of PLEASE, present an example specification, describe the translation of PLEASE specifications into Prolog procedures, and discuss some of the techniques used to obtain acceptable efficiency in the resultant prototypes.