Abstract

Part 1 Introduction: Safety-Critical Systems and Formal Methods. A brief historical perspective. Safety-critical computer systems. Industrial-scale examples of use. Areas of application of formal methods. Safety standards. Discussion. Overview of the Project. The SAFEMOS project. System modelling. Software development and compilation. Hardware design and compilation. Other SAFEMOS project work. Related work. Conclusion. Part 2 Tools and Models: The HOL Logic and System. Introduction. The HOL logic. The HOL system. Timed Transition Systems. Introduction to TTSs and HOL. Example: A traffic light controller. A real-time temporal logic. Timed transition systems. Timed transition diagrams. Verification. Discussion. Part 3 Software: State Transition Assertions - A Case Study. Introduction. An example - Mult. A more detailed specification of Mult. Determining a machine from a program. State transition assertions. Formal specification of Mult. Correctness of MuItProg. Generating Atomic STAs. Laws for combining STAs. Conclusions. Part 4 A Real-Time Language: The SAFE programming language. Interval model. Interval semantics. SAFE semantics. Laws. Conclusion. Program Compilation. Machine language syntax. Machine Language semantics. Compiler specification. Correctness of compilation. Proof of correctness of compilation. Conclusion. Part 5 Hardware: A Framework for Microprocessor Design. lntroduction. Machine specification framework. Microcoded machine example. Incremental model of control memory. Summary. Designing a Processor. Instruction set and machine architecture. Top-level specification. Microcoded implementation. Low-level implementation. Conclusions. Hardware Compilation. Introduction. A language of communicating processes. Normal form implementation. Reduction to normal form. Example proof. Rapid prototype compiler. Mapping normal form into hardware. Conclusions. Part 6 Technology Transfer: Transfer into Industrial Design. Historical background. Benefits from formal methods. Technology Transfer problems. Requirements for transfer of formal methods. Methods for transferring formal methods. Technology transfer from the SAFEMOS project. Appendices: Related Work. System Verification and the CLI Stack. Introduction. Our philosophy of systems verification. Verifying systems. The CLI stack and kit. Extending the stack. Future verified systems. Conclusions. The ProCoS Project: Provably Correct Systems. Introduction. History and experience. Requirements engineering and duration calculus. Program specification and development. Compiler correctness. Base systems. Conclusion.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call