A Program Refinement Framework Supporting Reasoning about Knowledge and Time

(Preliminary Report)
  • Kai Engelhardt
  • Ron van der Meyden
  • Yoram Moses
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1784)

Abstract

This paper develops a highly expressive semantic framework for program refinement that supports both temporal reasoning and reasoning about the knowledge of a single agent. The framework generalizes a previously developed temporal refinement framework by amalgamating it with a logic of quantified local propositions, a generalization of the logic of knowledge. The combined framework provides a formal setting for development of knowledge-based programs, and addresses two problems of existing theories of such programs: lack of compositionality and the fact that such programs often have only implementations of high computational complexity. Use of the framework is illustrated by a control theoretic example concerning a robot operating with an imprecise position sensor.

References

  1. 1.
    R.-J. Back and J. von Wright. Refinement Calculus: A Systematic Introduction. Graduate Texts in Computer Science. Springer-Verlag, 1998.Google Scholar
  2. 2.
    R. I. Brafman, J.-C. Latombe, Y. Moses, and Y. Shoham. Applications of a logic of knowledge to motion planning under uncertainty. Journal of the ACM, 44(5):633–668, Sept. 1997.MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    K. Engelhardt, R. van der Meyden, and Y. Moses. Knowledge and the logic of local propositions. In I. Gilboa, editor, Theoretical Aspects of Rationality and Knowledge, Proceedings of the Seventh Conference (TARK 1998), pages 29–41. Morgan Kaufmann, July 1998.Google Scholar
  4. 4.
    R. Fagin, J. Y. Halpern, Y. Moses, and M. Y. Vardi. Reasoning About Knowledge. MIT-Press, 1995.Google Scholar
  5. 5.
    R. Fagin, J. Y. Halpern, Y. Moses, and M. Y. Vardi. Knowledge-based programs. Distributed Computing, 10(4):199–225, 1997.CrossRefGoogle Scholar
  6. 6.
    J. Y. Halpern and Y. Moses. Knowledge and common knowledge in a distributed environment. Journal of the ACM, 37(3):549–587, July 1990.MATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    I. Hayes. Separating timing and calculation in real-time refinement. In J. Grundy, M. Schwenke, and T. Vickers, editors, International Refinement Workshop and Formal Methods Pacific 1998, Discrete Mathematics and Theoretical Computer Science, pages 1–16. Springer-Verlag, 1998.Google Scholar
  8. 8.
    Z. Manna and A. Pnueli. The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer-Verlag, 1992.Google Scholar
  9. 9.
    C. C. Morgan. Programming from Specifications. Prentice Hall, 1990.Google Scholar
  10. 10.
    J. M. Morris. A theoretical basis for stepwise refinement and the programming calculus. Science of Computer Programming, 9(3):287–306, Dec. 1987.MATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Y. Moses and O. Kislev. Knowledge-oriented programming. In Proceeding of the 12th Annual ACM Symposium on Principles of Distributed Computing (PODC 93), pages 261–270, New York, USA, Aug. 1993. ACM Press.Google Scholar
  12. 12.
    Y. Moses and M. R. Tuttle. Programming simultaneous actions using common knowledge. Algorithmica, 3:121–169, 1988.MATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    B. Sanders. A predicate transformer approach to knowledge and knowledge-based protocols. In Proceeding of the 10th Annual ACM Symposium on Principles of Distributed Computing (PODC 91), pages 217–230, 19–21 Aug. 1991.Google Scholar
  14. 14.
    M. Utting and C. Fidge. A real-time refinement calculus that changes only time. In H. Jifeng, J. Cooke, and P. Wallis, editors, BCS-FACS Seventh Refinement Workshop. Springer-Verlag, 1996.Google Scholar
  15. 15.
    R. van der Meyden. Knowledge based programs: On the complexity of perfect recall in finite environments. In Y. Shoham, editor, Proceedings of the Sixth Conference on Theoretical Aspects of Rationality and Knowledge, pages 31–50. Morgan Kaufmann, Mar. 17–20 1996.Google Scholar
  16. 16.
    R. van der Meyden and Y. Moses. On refinement and temporal annotations. http://www.cse.unsw.edu.au/~meyden/research/temprefine.ps.
  17. 17.
    R. van der Meyden and Y. Moses. Top-down considerations on distributed systems. In Proceedings 12th International Symposium on Distributed Computing, DISC’98, volume 1499 of LNCS, pages 16–19, Sept. 1998. Springer-Verlag.Google Scholar
  18. 18.
    M. Y. Vardi. Implementing knowledge-basd programs. In Y. Shoham, editor, Proceedings of the Sixth Conference on Theoretical Aspects of Rationality and Knowledge, pages 15–30. Morgan Kaufmann, Mar. 17–20 1996.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Kai Engelhardt
    • 1
  • Ron van der Meyden
    • 1
  • Yoram Moses
    • 2
  1. 1.School of Computer Science and EngineeringThe University of New South WalesSydneyAustralia
  2. 2.Department of Electrical EngineeringTechnionHaifaIsrael

Personalised recommendations