ACM Transactions on Programming Languages and Systems (TOPLAS)
Reasoning About Time in Higher-Level Language Software
IEEE Transactions on Software Engineering
A Case-Study in Timed Refinement: A Mine Pump
IEEE Transactions on Software Engineering - Special issue: specification and analysis of real-time systems
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
An Accurate Worst Case Timing Analysis for RISC Processors
IEEE Transactions on Software Engineering
Integrating Real-Time Scheduling Theory and Program Refinement
FME '96 Proceedings of the Third International Symposium of Formal Methods Europe on Industrial Benefit and Advances in Formal Methods
Real-Time Program Refinement Using Auxiliary Variables
FTRTFT '00 Proceedings of the 6th International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems
Systems Development Using Z Generics
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume II
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume II
The Real-Time Refinement Calculus: A Foundation for Machine-Independent Real-Time Programming
ICATPN '02 Proceedings of the 23rd International Conference on Applications and Theory of Petri Nets
MPC '02 Proceedings of the 6th International Conference on Mathematics of Program Construction
A predicative semantics for real-time refinement
Programming methodology
Capturing Periodic Concurrent Interactions of Mission Computer Tasks
APSEC '99 Proceedings of the Sixth Asia Pacific Software Engineering Conference
Unifying theories of programming that distinguish nontermination and abort
MPC'10 Proceedings of the 10th international conference on Mathematics of program construction
Termination of real-time programs: definitely, definitely not, or maybe
UTP'06 Proceedings of the First international conference on Unifying Theories of Programming
Linking Unifying Theories of Program refinement
Science of Computer Programming
Hi-index | 0.00 |
Our overall goal is to support the development of real-time programs from specifications via a process of stepwise refinement. One problem in developing a real-time program in a high-level programming language is that it is not possible to determine the detailed timing characteristics of the program until the compiler and target machine are taken into account. To overcome this problem the programming language can be augmented with directives specifying real-time constraints; it is a compile-time error if the compiler cannot guarantee that the generated code will meet them. During the refinement process the timing directives are inserted into the program in order to ensure it meets the specification. The paper introduces the real-time directives, gives a set of laws for real-time refinement, and illustrates their use in the refinement of a simple real-time transmitter.