Software & Systems Modeling

, Volume 15, Issue 4, pp 1163–1180 | Cite as

Knowledge-based construction of distributed constrained systems

  • Susanne Graf
  • Sophie Quinton
Theme Section Paper


The problem of deriving distributed implementations from global specifications has been extensively studied for a number of application domains. We explore it here from the knowledge perspective: A process may decide to take a local action when it has enough knowledge to do so. Such knowledge may be acquired by communication through primitives available on the platform or by static analysis. In this paper, we want to combine control and distribution, that is, we need to impose some global control constraint on a system executed in a distributed fashion. To reach that goal, we compare two approaches: either build a centralized controlled system, distribute its controller and then implement this controlled system on a distributed platform; or alternatively, directly enforce the control constraint while implementing the distributed system on the platform. We show how to achieve a solution following the second approach and explain why this is a pragmatic and more efficient strategy than the other, previously proposed one.


Distributed implementations  Knowledge Controlled system Correct-by-construction  Implementation relation Knowledge preservation 


  1. 1.
    Bagrodia, R.: Process synchronization: design and performance evaluation of distributed algorithms. IEEE Trans. Softw. Eng. 15(9), 1053–1065 (1989)CrossRefGoogle Scholar
  2. 2.
    Basu, A., Bensalem, S., Peled, D., Sifakis, J.: Priority scheduling of distributed systems based on model checking. In: Proceedings of CAV’09, vol. 5643 of LNCS, pp. 79–93. Springer (2009)Google Scholar
  3. 3.
    Bensalem, S., Bozga, M., Graf, S., Peled, D., Quinton, S.: Methods for knowledge-based controlling of distributed systems. In: Proceedings of ATVA’10, vol. 6252 of LNCS, pp. 52–66. Springer (2010)Google Scholar
  4. 4.
    Bensalem, S., Bozga, M., Quilbeuf, J., Sifakis, J.: Knowledge-based distributed conflict resolution for multiparty interactions and priorities. In: Proceedings of FMOODS-FORTE’12, vol. 7273 of LNCS, pp. 118–134. Springer (2012)Google Scholar
  5. 5.
    Benveniste, A., Caspi, P., Edwards, S.A., Halbwachs, N., Le Guernic, P., de Simone, R.: The synchronous languages twelve years later. Proc. IEEE 91(1), 64–83 (2003)CrossRefGoogle Scholar
  6. 6.
    Boussinot, F., de Simone, R.: The esterel language. In: Proceedings of the IEEE, Special Issue on Synchronous Programming, vol. 79, pp. 1293–1304 (1991)Google Scholar
  7. 7.
    Caspi, P., Girault, A.: Execution of distributed reactive systems. In: Proceedings of Euro-Par’95, vol. 966 of LNCS, pp. 15–26. Springer (1995)Google Scholar
  8. 8.
    Chu, P.M., Liu, M.T.: Synthesizing protocol specifications from service specifications. In: Proceedings of Computer Networking Symposium, pp. 173–182. IEEE (1988)Google Scholar
  9. 9.
    Fagin, R., Halpern, J.Y., Vardi, M.Y., Moses, Y.: Reasoning about knowledge. MIT Press, Cambridge, MA (1995)zbMATHGoogle Scholar
  10. 10.
    Genrich, H.J., Lautenbach, K.: System modelling with high-level Petri nets. Theor. Comput. Sci. 13, 109–136 (1981)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Graf, S., Peled, D., Quinton, S.: Achieving distributed control through model checking. In: Proceedings of CAV’10, vol. 6174 of LNCS, pp. 396–409. Springer (2010)Google Scholar
  12. 12.
    Graf, S., Peled, D., Quinton, S.: Monitoring distributed systems using knowledge. In: Proceedings of FMOODS-FORTE’11, vol. 6722 of LNCS, pp. 183–197. Springer (2011)Google Scholar
  13. 13.
    Graf, S., Quinton, S.: Knowledge for the distributed implementation of constrained systems. In: 10th International Conference on Integrated Formal Methods, iFM 2013, Turku, 10–14 June. Proceedings, vol. 7940 of LNCS, pp. 77–93. Springer (2013)Google Scholar
  14. 14.
    Graf, S., Quinton, S.: Building distributed controllers for systems with priorities. J. Log. Algebr. Program. 80(3–5), 194–218 (2011)MathSciNetzbMATHGoogle Scholar
  15. 15.
    Gotzhein, R., von Bochmann, G.: Deriving protocol specifications from service specifications including parameters. ACM Trans. Comput. Syst. 8(4), 255–283 (1990)CrossRefGoogle Scholar
  16. 16.
    Halpern, J.Y., Fagin, R.: Modelling knowledge and action in distributed systems. Distrib. Comput. 3(4), 159–177 (1989)CrossRefzbMATHGoogle Scholar
  17. 17.
    Kahn, G.: The semantics of simple language for parallel programming. In: IFIP Congress, pp. 471–475 (1974)Google Scholar
  18. 18.
    Kant, C., Higashino, T., von Bochmann, G.: Deriving protocol specifications from service specifications written in lotos. Distrib. Comput. 10(1), 29–47 (1996)CrossRefGoogle Scholar
  19. 19.
    Katz, S., Peled, D.: Verification of distributed programs using representative interleaving sequences. Distrib. Comput. 6(2), 107–120 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Katz, G., Peled, D., Schewe, S.: Synthesis of distributed control through knowledge accumulation. In: Proceedings of CAV’11, vol. 6806 of LNCS, pp. 510–525. Springer (2011)Google Scholar
  21. 21.
    Lamport, L.: How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Comput. 28(9), 690–691 (1979)CrossRefzbMATHGoogle Scholar
  22. 22.
    Laurie Ricker, S.: Know means no: incorporating knowledge into discrete-event control systems. IEEE Trans. Autom. Control 45(9), 1656–1668 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  23. 23.
    Laurie Ricker, S., Rudie, K.: Knowledge is a terrible thing to waste: using inference in discrete-event control problems. IEEE Trans. Autom. Control 52(3), 428–441 (2007)MathSciNetCrossRefGoogle Scholar
  24. 24.
    Lin, F., Wonham, W.M.: Decentralized supervisory control of discrete-event systems. Inf. Sci. 44(3), 199–224 (1988)MathSciNetCrossRefzbMATHGoogle Scholar
  25. 25.
    Pérez, J.A., Corchuelo, R., Toro, M.: An order-based algorithm for implementing multiparty synchronization. Concurr. Pract. Exp. 16(12), 1173–1206 (2004)CrossRefGoogle Scholar
  26. 26.
    Peterson, J.L.: Petri Net Theory and Modeling of Systems. Prentice Hall, Englewood Cliffs (1981)zbMATHGoogle Scholar
  27. 27.
    Probert, R.L., Saleh, K.: Synthesis of communication protocols: survey and assessment. IEEE Trans. Comput. 40(4), 468–476 (1991)CrossRefGoogle Scholar
  28. 28.
    Reisig, W.: Petri Nets, an Introduction. EATCS Monographs on Theoretical Computer Science. Springer, Berlin (1985)Google Scholar
  29. 29.
    Rudie, K., Wonham, W.M.: Think globally, act locally: decentralized supervisory control. IEEE Trans. Autom. Control 37(11), 1692–1708 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  30. 30.
    von Bochmann, G., Gotzhein, R.: Deriving protocol specifications from service specifications. In: Proceedings of SIGCOMM’86, pp. 148–156. ACM (1986)Google Scholar
  31. 31.
    Wong, K.C., Wonham, W.M.: Modular control and coordination of discrete-event systems. Discrete Event Dyn. Syst. 8(3), 247–297 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  32. 32.
    Yamaguchi, H., El-Fakih, K., von Bochmann, G., Higashino, T.: Deriving protocol specifications from service specifications written as predicate/transition-nets. Comput. Netw. 51(1), 258–284 (2007)Google Scholar
  33. 33.
    Yoo, T.-S., Lafortune, S.: A general architecture for decentralized supervisory control of discrete-event systems. Discrete Event Dyn. Syst. 12(3), 335–377 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  34. 34.
    Yamaguchi, H., Okano, K., Higashino, T., Taniguchi, K.: Synthesis of protocol entities’ specifications from service specifications in a petri net model with registers. In: Proceedings of ICDCS’95, pp. 510–517 (1995)Google Scholar
  35. 35.
    Zafiropulo, P., West, C.H., Rudin, H., Cowan, D.D., Brand, D.: Towards analyzing and synthesizing protocols. IEEE Trans. Commun. COM–28(4), 651–661 (1980)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  1. 1.VERIMAG/CNRSUniversité Joseph FourierGrenobleFrance
  2. 2.INRIA Rhône-AlpesGrenobleFrance

Personalised recommendations