Skip to main content
Log in

Knowledge-based construction of distributed constrained systems

  • Theme Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

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.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Notes

  1. Alternatively, we could allow processes with more than one token, but to keep the framework simple, we restrict ourselves to simple sequential processes.

  2. As already discussed, a (folded) transition of \(N\) may appear several times in \(\sigma \) but each occurrence can be mapped to a different \(t\in T^u\) so that a local transition \(t_\pi \) is part of only one \(t\) occurring in \(\sigma \).

  3. Remember that there is at most one transition of \(T(t_j)\) in a trace.

  4. Note that for transitions that are not symmetric, e.g., because of a data flow, one may add precedence constraints between local transitions of the same global transition—but such precedence relations are not derived from the Petri net.

  5. This is true because \(\varPsi \) is a safety constraint; one may, however, lose progress.

  6. Note that the problem statement as given by the centralized controller is completely symmetric; in case of circular conflicts—in which the size of the conflict set may not be reduced by a set of local arbitrations—some asymmetry must be introduced statically (for example, using priorities) to achieve conflict resolution, or the protocol must rely on some statistical decision (such as, for example, in Ethernet).

  7. This makes clear that for a different platform and a different high level specification paradigm, the response could be different. Our aim here is to propose criteria for choosing the best approach in any given setting.

  8. Note that this does not hold if \({ selected}_t\) is also used for guaranteeing fairness properties.

  9. This is the knowledge exploited in [22].

References

  1. Bagrodia, R.: Process synchronization: design and performance evaluation of distributed algorithms. IEEE Trans. Softw. Eng. 15(9), 1053–1065 (1989)

    Article  Google Scholar 

  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)

  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)

  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)

  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)

    Article  Google Scholar 

  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)

  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)

  8. Chu, P.M., Liu, M.T.: Synthesizing protocol specifications from service specifications. In: Proceedings of Computer Networking Symposium, pp. 173–182. IEEE (1988)

  9. Fagin, R., Halpern, J.Y., Vardi, M.Y., Moses, Y.: Reasoning about knowledge. MIT Press, Cambridge, MA (1995)

    MATH  Google Scholar 

  10. Genrich, H.J., Lautenbach, K.: System modelling with high-level Petri nets. Theor. Comput. Sci. 13, 109–136 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  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)

  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)

  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)

  14. Graf, S., Quinton, S.: Building distributed controllers for systems with priorities. J. Log. Algebr. Program. 80(3–5), 194–218 (2011)

    MathSciNet  MATH  Google Scholar 

  15. Gotzhein, R., von Bochmann, G.: Deriving protocol specifications from service specifications including parameters. ACM Trans. Comput. Syst. 8(4), 255–283 (1990)

    Article  Google Scholar 

  16. Halpern, J.Y., Fagin, R.: Modelling knowledge and action in distributed systems. Distrib. Comput. 3(4), 159–177 (1989)

    Article  MATH  Google Scholar 

  17. Kahn, G.: The semantics of simple language for parallel programming. In: IFIP Congress, pp. 471–475 (1974)

  18. Kant, C., Higashino, T., von Bochmann, G.: Deriving protocol specifications from service specifications written in lotos. Distrib. Comput. 10(1), 29–47 (1996)

    Article  Google Scholar 

  19. Katz, S., Peled, D.: Verification of distributed programs using representative interleaving sequences. Distrib. Comput. 6(2), 107–120 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  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)

  21. Lamport, L.: How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Comput. 28(9), 690–691 (1979)

    Article  MATH  Google Scholar 

  22. Laurie Ricker, S.: Know means no: incorporating knowledge into discrete-event control systems. IEEE Trans. Autom. Control 45(9), 1656–1668 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  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)

    Article  MathSciNet  Google Scholar 

  24. Lin, F., Wonham, W.M.: Decentralized supervisory control of discrete-event systems. Inf. Sci. 44(3), 199–224 (1988)

    Article  MathSciNet  MATH  Google Scholar 

  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)

    Article  Google Scholar 

  26. Peterson, J.L.: Petri Net Theory and Modeling of Systems. Prentice Hall, Englewood Cliffs (1981)

    MATH  Google Scholar 

  27. Probert, R.L., Saleh, K.: Synthesis of communication protocols: survey and assessment. IEEE Trans. Comput. 40(4), 468–476 (1991)

    Article  Google Scholar 

  28. Reisig, W.: Petri Nets, an Introduction. EATCS Monographs on Theoretical Computer Science. Springer, Berlin (1985)

    Google Scholar 

  29. Rudie, K., Wonham, W.M.: Think globally, act locally: decentralized supervisory control. IEEE Trans. Autom. Control 37(11), 1692–1708 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  30. von Bochmann, G., Gotzhein, R.: Deriving protocol specifications from service specifications. In: Proceedings of SIGCOMM’86, pp. 148–156. ACM (1986)

  31. Wong, K.C., Wonham, W.M.: Modular control and coordination of discrete-event systems. Discrete Event Dyn. Syst. 8(3), 247–297 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  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)

  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)

    Article  MathSciNet  MATH  Google Scholar 

  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)

  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)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Susanne Graf.

Additional information

Communicated by Prof. Einar Broch Johnsen and Luigia Petre.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Graf, S., Quinton, S. Knowledge-based construction of distributed constrained systems. Softw Syst Model 15, 1163–1180 (2016). https://doi.org/10.1007/s10270-014-0451-z

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-014-0451-z

Keywords

Navigation