Skip to main content
Log in

Reasoning about goal-directed real-time teleo-reactive programs

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

The teleo-reactive programming model is a high-level approach to developing real-time systems that supports hierarchical composition and durative actions. The model is different from frameworks such as action systems, timed automata and TLA+, and allows programs to be more compact and descriptive of their intended behaviour. Teleo-reactive programs are particularly useful for implementing controllers for autonomous agents that must react robustly to their dynamically changing environments. In this paper, we develop a real-time logic that is based on Duration Calculus and use this logic to formalise the semantics of teleo-reactive programs. We develop rely/guarantee rules that facilitate reasoning about a program and its environment in a compositional manner. We present several theorems for simplifying proofs of teleo-reactive programs and present a partially mechanised method for proving progress properties of goal-directed agents.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Burns A, Baxter G (2006) Time bands in systems structure, chap 4. In: Besnard D, Gacek C, Jones CB (eds) Structure for dependability: computer-based systems from an interdisciplinary perspective. Springer, London, pp 74–88

  2. Burns A., Hayes IJ. (2010) A timeband framework for modelling real-time systems. Real Time Syst 45(1): 106–142

    Article  MATH  Google Scholar 

  3. Back R-JR, Petre L, Porres I (2000) Generalizing action systems to hybrid systems. In: Joseph M (ed) FTRTFT. LNCS, vol 1926. Springer, Berlin, pp 202–213

  4. Chaochen Z, Ravn AP, Hansen MR (1993) An extended duration calculus for hybrid real-time systems. In: Grossman et al. [GNRR93], pp 36–59

  5. Dongol B, Hayes IJ (2012) Approximating idealised real-time specifications using time bands. ECEASST 46:1–16 (11th international workshop on automated verification of critical systems)

    Google Scholar 

  6. Dongol B, Hayes IJ (2012) Deriving real-time action systems controllers from multiscale system specifications. In: Gibbons, J, Nogueira P (eds) MPC. Lecture notes in computer science, vol 7342. Springer, Berlin, pp 102–131

  7. Dongol B, Hayes IJ (2012) Rely/guarantee reasoning for teleo-reactive programs over multiple time bands. In: Derrick J, Gnesi S, Latella D, Treharne H (eds) IFM. Lecture notes in computer science, vol 7321. Springer, Berlin, pp 39–53

  8. Emerson EA (1990) Temporal and modal logic. In: van Leeuwen J (ed) Handbook of theoretical computer science, vol B. Elsevier Science Publishers, Amsterdam, pp 996–1072

  9. Fritsch S, Senart A, Schmidt DC, Clarke S (2008) Time-bounded adaptation for automotive system software. In: ICSE ’08: proceedings of the 30th international conference on software engineering, New York, NY, USA. ACM, New York, pp 571–580

  10. Gargantini A., Morzenti A. (2001) Automated deductive requirements analysis of critical systems. ACM Trans Softw Eng Methodol 10: 255–307

    Article  Google Scholar 

  11. Grossman RL, Nerode A, Ravn AP, Rischel H (eds) (1993) Hybrid systems. LNCS, vol 736. Springer, Berlin

  12. Gubisch G, Steinbauer G, Weiglhofer M, Wotawa F (2008) A teleo-reactive architecture for fast, reactive and robust control of mobile robots. In: IEA/AIE ’08: proceedings of the 21st international conference on industrial, engineering and other applications of applied intelligent systems. Springer, Berlin, pp 541–550

  13. Hawthorne J, Anthony R (2010) Using a teleo-reactive programming style to develop self-healing applications. In: ACCS. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 23. Springer, Berlin, pp 114–129

  14. Hayes IJ (2008) Towards reasoning about teleo-reactive programs for robust real-time systems. In: SERENE ’08: proceedings of the 2008 RISE/EFTS joint international workshop on software engineering for resilient systems, New York, NY, USA. ACM, New York, pp 87–94

  15. Hayes IJ, Burns A, Dongol B, Jones C (2011) Comparing models of nondeterministic expression evaluation. Technical Report CS-TR-1273, Newcastle University

  16. Henzinger TA (1996) The theory of hybrid automata. In: LICS’96, Washington, DC, USA. IEEE Computer Society, New York, pp 278–292

  17. Hoare CAR (1969) An axiomatic basis for computer programming. Commun ACM 12(10):576–580

    Google Scholar 

  18. Jones CB. (1983) Tentative steps toward a development method for interfering programs. ACM Trans Program Lang Syst 5(4): 596–619

    Article  MATH  Google Scholar 

  19. Lamport L (1993) Hybrid systems in TLA+. In Grossman et al. [GNRR93], pp 77–102

  20. Lamport L (2002) Specifying systems: the TLA+ language and tools for hardware and software engineers. Addison-Wesley Longman Publishing Co., Inc., Boston

  21. Lewerentz C, Lindner T (eds) (1995) Formal development of reactive systems—case study production cell. LNCS, vol 891. Springer, Berlin

  22. Lynch N., Segala R., Vaandraager F. (2003) Hybrid I/O automata. Inf Comput 185(1): 105–157

    Article  MATH  Google Scholar 

  23. Meinicke L, Hayes IJ (2006) Continuous action system refinement. In: Uustalu T (ed) MPC. LNCS, vol 4014. Springer, Berlin, pp 316–337

  24. Moszkowski BC (1997) Compositional reasoning using interval temporal logic and Tempura. In: de Roever WP, Langmaack H, Pnueli A (eds) COMPOS. Lecture notes in computer science, vol 1536. Springer, Berlin, pp 439–464

  25. Manna Z, Pnueli A (1992) Temporal verification of reactive and concurrent systems: specification. Springer-Verlag New York, Inc., New York

  26. Nilsson NJ. (2001) Teleo-reactive programs and the triple-tower architecture. Electron Trans Artif Intell 5: 99–110

    Google Scholar 

  27. Nafz F, Ortmeier F, Seebach H, Steghöfer JP, Reif W (2009) A universal self-organization mechanism for role-based organic computing systems. In: Reif W, Wang G, Indulska J (eds) ATC. LNCS, vol 5586. Springer, Berlin, pp 17–31

  28. Rönkkö M., Ravn AP., Sere K. (2003) Hybrid action systems. Theor Comput Sci 290: 937–973

    Article  MATH  Google Scholar 

  29. Twidle KP, Marinovic S, Dulay N (2010) Teleo-reactive policies in Ponder2. In: POLICY. IEEE Computer Society, New York, pp 57–60

  30. Zhou C., Hansen MR. (2004) Duration calculus: a formal approach to real-time systems EATCS: monographs in theoretical computer science. Springer, Berlin

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Brijesh Dongol.

Additional information

by Jin Song Dong

Rights and permissions

Reprints and permissions

About this article

Cite this article

Dongol, B., Hayes, I.J. & Robinson, P.J. Reasoning about goal-directed real-time teleo-reactive programs. Form Asp Comp 26, 563–589 (2014). https://doi.org/10.1007/s00165-012-0272-1

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-012-0272-1

Keywords

Navigation