Ebook: A Theory and Practice of Program Development
Author: Derek Andrews BSc MSc (auth.)
- Tags: Mathematical Logic and Formal Languages, Software Engineering, Programming Techniques
- Series: Formal Approaches to Computing and Information Technology
- Year: 1997
- Publisher: Springer-Verlag London
- Edition: 1
- Language: English
- pdf
A Theory and Practice of Program Development provides a comprehensive introduction to a software development method based on VDM-SL. Each development step is rigorously justified, and the strategies and transformations used are justified and explained ma thematically. The approach provides the formal semantics of a simple, but powerful, wide-spectrum programming language and gives a formal definition of both algorithmic and data refinement. Unlike other texts, it covers both the theory and practice of program development. Although based on VDM-SL, no knowledge of this language is assumed, thus making it widely accessible. A Theory and Practice of Program Development is intended for 3rd/4th year undergraduate and postgraduate students taking formal methods and software engineering; software developers involved in the production of provably correct computer systems and reusa ble design and the problems of reusable code.
A Theory and Practice of Program Development provides a comprehensive introduction to a software development method based on VDM-SL. Each development step is rigorously justified, and the strategies and transformations used are justified and explained ma thematically. The approach provides the formal semantics of a simple, but powerful, wide-spectrum programming language and gives a formal definition of both algorithmic and data refinement. Unlike other texts, it covers both the theory and practice of program development. Although based on VDM-SL, no knowledge of this language is assumed, thus making it widely accessible. A Theory and Practice of Program Development is intended for 3rd/4th year undergraduate and postgraduate students taking formal methods and software engineering; software developers involved in the production of provably correct computer systems and reusa ble design and the problems of reusable code.
A Theory and Practice of Program Development provides a comprehensive introduction to a software development method based on VDM-SL. Each development step is rigorously justified, and the strategies and transformations used are justified and explained ma thematically. The approach provides the formal semantics of a simple, but powerful, wide-spectrum programming language and gives a formal definition of both algorithmic and data refinement. Unlike other texts, it covers both the theory and practice of program development. Although based on VDM-SL, no knowledge of this language is assumed, thus making it widely accessible. A Theory and Practice of Program Development is intended for 3rd/4th year undergraduate and postgraduate students taking formal methods and software engineering; software developers involved in the production of provably correct computer systems and reusa ble design and the problems of reusable code.
Content:
Front Matter....Pages i-xvii
Writing Correct Programs....Pages 1-6
A Small Programming Language....Pages 7-36
Concepts and Properties....Pages 37-65
Building New Commands from Old....Pages 66-83
Program Refinement....Pages 84-104
The Basic Commands....Pages 105-116
Declarations and Blocks....Pages 117-134
Command Sequences....Pages 135-144
The Alternative Command....Pages 145-158
The Iterative Command....Pages 159-183
Functions and Procedures....Pages 184-196
An Example of Refinement at Work....Pages 197-204
On Refinement and Loops....Pages 205-215
Functions and Procedures in Refinement....Pages 216-221
Refinement and Performance....Pages 222-229
Searching and Sorting....Pages 230-246
Data refinement....Pages 247-281
A Theory of Data Refinement....Pages 282-307
An Alternative Refinement of the Security System....Pages 308-317
Stacks and Queues....Pages 318-351
Dynamic Data Structures....Pages 352-369
Binary Trees....Pages 370-387
Epilogue....Pages 388-391
Back Matter....Pages 393-405
A Theory and Practice of Program Development provides a comprehensive introduction to a software development method based on VDM-SL. Each development step is rigorously justified, and the strategies and transformations used are justified and explained ma thematically. The approach provides the formal semantics of a simple, but powerful, wide-spectrum programming language and gives a formal definition of both algorithmic and data refinement. Unlike other texts, it covers both the theory and practice of program development. Although based on VDM-SL, no knowledge of this language is assumed, thus making it widely accessible. A Theory and Practice of Program Development is intended for 3rd/4th year undergraduate and postgraduate students taking formal methods and software engineering; software developers involved in the production of provably correct computer systems and reusa ble design and the problems of reusable code.
Content:
Front Matter....Pages i-xvii
Writing Correct Programs....Pages 1-6
A Small Programming Language....Pages 7-36
Concepts and Properties....Pages 37-65
Building New Commands from Old....Pages 66-83
Program Refinement....Pages 84-104
The Basic Commands....Pages 105-116
Declarations and Blocks....Pages 117-134
Command Sequences....Pages 135-144
The Alternative Command....Pages 145-158
The Iterative Command....Pages 159-183
Functions and Procedures....Pages 184-196
An Example of Refinement at Work....Pages 197-204
On Refinement and Loops....Pages 205-215
Functions and Procedures in Refinement....Pages 216-221
Refinement and Performance....Pages 222-229
Searching and Sorting....Pages 230-246
Data refinement....Pages 247-281
A Theory of Data Refinement....Pages 282-307
An Alternative Refinement of the Security System....Pages 308-317
Stacks and Queues....Pages 318-351
Dynamic Data Structures....Pages 352-369
Binary Trees....Pages 370-387
Epilogue....Pages 388-391
Back Matter....Pages 393-405
....