Refinement of infeasible real-time programs

Embedded real-time programs can be succinctly specified using timed traces. Each sequentially executed statement acts to define a distinct trace segment. An elegant way of defining the effect of such statements is as trace `coercers' that impose constraints on existing, but underspecified, traces. Unfortunately this model fails the usual refinement calculus feasibility test. Here we overcome this by proving that the coercive model is equivalent to a trace `extending' model that does pass the test. The proof is itself interesting because it adopts non-standard data refinement techniques. 1 Introduction The overall behaviour of an embedded real-time program is most succinctly specified using timed traces which record the value of each system variable at each moment in time. Ideally, each such trace requirement should then be refinable to a sequence of actions on consecutive trace segments that collectively achieve the total desired trace.

[1]  Ralph-Johan Back,et al.  Refinement Calculus, Part I: Sequential Nondeterministic Programs , 1989, REX Workshop.

[2]  Carroll Morgan Data Refinement by Miracles , 1988, Inf. Process. Lett..

[3]  Brendan P. Mahony Using the Reenement Calculus for Dataaow Processes Using the Reenement Calculus for Dataaow Processes , 2007 .

[4]  Carroll Morgan,et al.  The specification statement , 1988, TOPL.

[5]  Hussein Zedan,et al.  Real-Time Refinement: Semantics and Application , 1993, MFCS.

[6]  Ian J. Hayes,et al.  A Case-Study in Timed Refinement: A Mine Pump , 1992, IEEE Trans. Software Eng..

[7]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[8]  Ian J. Hayes,et al.  A Case Study in Timed Refinement: A Central Heater , 1991 .

[9]  Carroll Morgan,et al.  Types and Invariants in the Refinement Calculus , 1990, Sci. Comput. Program..

[10]  Ralph-Johan Back,et al.  Predicate Transformers and Higher Order Logic , 1992, REX Workshop.

[11]  Barry Mark Utting An object-oriented refinement calculus with modular reasoning , 1992 .

[12]  Ian J. Hayes,et al.  Coercing real-time refinement: a transmitter , 1996, FME 1996.

[13]  C. A. R. Hoare,et al.  Prespecification in Data Refinement , 1987, Inf. Process. Lett..

[14]  Carroll Morgan,et al.  Data Refinement of Predicate Transformers , 1991, Theor. Comput. Sci..

[15]  Hussein Zedan,et al.  A Specification-Oriented Semantics for the Refinement of Real-Time Systems , 1994, Theor. Comput. Sci..

[16]  Carroll Morgan,et al.  Types and Invariants in the Refinement Calculus , 1989, Sci. Comput. Program..

[17]  Colin J. Fidge,et al.  A real-time refinement calculus that changes only time , 1996 .

[18]  Edsger W. Dijkstra,et al.  Predicate Calculus and Program Semantics , 1989, Texts and Monographs in Computer Science.

[19]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[20]  Ralph-Johan Back Refinement Calculus, Lattices and Higher Order Logic , 1992, NATO ASI PDC.

[21]  Zhou Chaochen,et al.  Duration Calculi: An overview , 1993 .

[22]  Christophe Wolinski,et al.  A Real-Time HW/SW Co-Design Approach Based on the SIGNAL Language and its Environment , 1996 .

[23]  Colin J. Fidge,et al.  Integrating Real-Time Scheduling Theory and Program Refinement , 1996, FME.

[24]  C. A. R. Hoare,et al.  A Calculus of Durations , 1991, Inf. Process. Lett..

[25]  Carroll Morgan,et al.  The Refinement Calculus , 1994, NATO ASI PDC.