Advertisement

Graphical specification and reasoning: Case study generalised railroad crossing

  • Henning Dierks
  • Cheryl Dietz
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1313)

Abstract

A benchmark real-time problem, the generalised railroad crossing [9], serves as illustration of a fully graphical approach to the formal development of correct reactive real-time systems. We show how to formally capture requirements with the graphical language Constraint Diagrams [6] and perform graphical refinement steps towards implementable requirements. These requirements correspond directly to PLC-Automata [4], a class of real-time automata suitable to describe the behaviour of Programmable Logic Controllers (PLCs), a hardware widely used in industry in order to control processes. A compilation schema generates runnable PLC-source-code. Optionally; error states can be introduced in the automata to allow checks of correctness of assumptions. While all languages used — except for the PLC-source-code — are visual, their common semantics is formally defined employing Duration Calculus (DC) [20]. Correctness of refinement steps can thus be formally proven. Once established, graphical refinement rules can be used without knowledge of the DC inside. In that way visuality eases application of formal reasoning.

Keywords

Programmable Logic Controller Graphical Specification Time Automaton Graphical Language State Assertion 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    R. Alur and D.L. Dill. A theory of timed automata. Theoret. Comput. Sci., 126:183–235, 1994.Google Scholar
  2. 2.
    E. Clarke, O. Grumberg, and D. Long. Verification tools for finite-state concurrent systems. In A Decade of Concurrency — Reflections and Perspectives, volume 803 of Lecture Notes in Computer Science. Springer-Verlag, 1994.Google Scholar
  3. 3.
    H. Dierks. Rules and Theorems for PLC-Automata. Technical report, University of Oldenburg, November 1996.Google Scholar
  4. 4.
    H. Dierks. PLC-Automata: A New Class of Implementable Real-Time Automata. In M. Bertran and T. Rus, editors, ARTS'97, volume 1231 of Lecture Notes in Computer Science, pages 111–125. Springer-Verlag, May 1997.Google Scholar
  5. 5.
    H. Dierks. Synthesising Controllers from Real-Time Specifications. In Proceedings of ISSS'97. IEEE, 1997. to appear.Google Scholar
  6. 6.
    C. Dietz. Graphical Formalization of Real-Time Requirements. In B. Jonsson and J. Parrow, editors, Formal Techniques in Real-Time and Fault-Tolerant Systems, volume 1135 of Lecture Notes in Computer Science, pages 366–385, Uppsala, Sweden, September 1996. Springer-Verlag.Google Scholar
  7. 7.
    C. Dietz. Action Diagrams. In WRTP'97 (to appear). Elsevier Science, 1997.Google Scholar
  8. 8.
    Jifeng He, C.A.R. Hoare, M. Fränzle, M. Müller-Olm, E.-R. Olderog, M. Schenke, M.R. Hansen, A.P. Ravn, and H. Rischel. Provably Correct Systems. In H. Langmaack, W.-P. de Roever, and J. Vytopil, editors, Formal Techniques in Real-Time and Fault-Tolerant Systems, volume 863 of Lecture Notes in Computer Science, pages 288–335. Springer-Verlag, 1994.Google Scholar
  9. 9.
    C. Heitmeyer and N. Lynch. The Generalized Railroad Crossing. In IEEE RealTime Systems Symposium, 1994.Google Scholar
  10. 10.
    C. Heitmeyer and D. Mandrioli, editors. Formal Methods for Real-Time Computing, volume 5 of Trends in Software. Wiley, 1996.Google Scholar
  11. 11.
    K.-H. John and M. Tiegelkamp. SPS-Programmierung mit IEC 1131-3. SpringerVerlag, 1995. in German.Google Scholar
  12. 12.
    B. Krieg-Bruckner, J. Peleska, E.-R. Olderog, D. Balzer, and A. Baer. UniForM — Universal Formal Methods Workbench. In U. Grote and G. Wolf, editors, Statusseminar des BMBF Softwaretechnologie, pages 357–378. BMBF, Berlin, March 1996.Google Scholar
  13. 13.
    R.W. Lewis. Programming industrial control systems using IEC 1131-3. The institution of Electrical Engineers, 1995.Google Scholar
  14. 14.
    B. Moszkowski. A Temporal Logic for Multilevel Reasoning about Hardware. IEEE Computer, 18(2):10–19, 1985.Google Scholar
  15. 15.
    E.-R. Olderog, A.P. Ravn, and J.U. Skakkebwk. Refining System Requirements to Program Specifications. In Heitmeyer and Mandrioli [10], pages 107–134.Google Scholar
  16. 16.
    A.P. Ravn. Design of Embedded Real-Time Computing Systems. Technical Report 1995-170, Technical University of Denmark, 1995.Google Scholar
  17. 17.
    M. Schenke and A.P. Ravn. Refinement from a control problem to programs. In J.R. Abrial, E. Börger, and H. Langmaack, editors, Formal Methods for Industrial Applications: Specifying and Programming the Steam Boiler Control, volume 1165 of Lecture Notes in Computer Science. Springer-Verlag, 1996.Google Scholar
  18. 18.
    R. Schlör and W. Damm. Specification and Verification of System Level Hardware Designs using Timing Diagrams. In Proc. The European Conference on Design Automation. Paris, France, 1993.Google Scholar
  19. 19.
    Zhou Chaochen. Duration Calculi: An overview. In D. Bjørner, M. Broy, and I.V. Pottosin, editors, Formal Methods in Programming and Their Application, volume 735 of Lecture Notes in Computer Science, pages 256–266. Springer-Verlag, 1993.Google Scholar
  20. 20.
    Zhou Chaochen, C.A.R. Hoare, and A.P. Ravn. A Calculus of Durations. Inform. Proc. Letters, 40/5:269–276, 1991.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Henning Dierks
    • 1
  • Cheryl Dietz
    • 1
  1. 1.University of OldenburgGermany

Personalised recommendations