Controller Synthesis from LSC Requirements

  • Hillel Kugler
  • Cory Plock
  • Amir Pnueli
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5503)


Live Sequence Charts (LSCs) is a visual requirements language for specifying reactive system behavior. When modeling and designing open reactive systems, it is often essential to have a guarantee that the requirements can be satisfied under all possible circumstances. We apply results in the area of controller synthesis to a subset of the LSC language to decide the realizability of LSC requirements. If realizable, we show how to generate system responses that are guaranteed to satisfy the requirements. We discuss one particular implementation of this result which is formulated as an extension of smart play-out, a method for direct execution of scenario-based requirements.


  1. 1.
    Microsoft Research Cambridge, Scenario-Based Tool for Biological Modeling (2009),
  2. 2.
    Abadi, M., Lamport, L., Wolper, P.: Realizable and unrealizable concurrent program specifications. In: Ronchi Della Rocca, S., Ausiello, G., Dezani-Ciancaglini, M. (eds.) ICALP 1989. LNCS, vol. 372, pp. 1–17. Springer, Heidelberg (1989)CrossRefGoogle Scholar
  3. 3.
    Bontemps, Y., Heymans, P., Schobbens, P.Y.: From live sequence charts to state machines and back: A guided tour. IEEE Trans. Software Eng. 31(12), 999–1014 (2005)CrossRefGoogle Scholar
  4. 4.
    Damm, W., Harel, D.: LSCs: Breathing life into message sequence charts. Formal Methods in System Design 19(1), 45–80 (2001); preliminary version appeared in: Proc. 3rd IFIP Int. Conf. on Formal Methods for Open Object-Based Distributed Systems (FMOODS 1999)CrossRefMATHGoogle Scholar
  5. 5.
    Damm, W., Toben, T., Westphal, B.: On the Expressive Power of Live Sequence Charts. In: Reps, T., Sagiv, M., Bauer, J. (eds.) Wilhelm Festschrift. LNCS, vol. 4444, pp. 225–246. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  6. 6.
    de Alfaro, L., Henzinger, T., Majumdar, R.: From verification to control: dynamic programs for omega-regular objectives. In: Proc. 16th IEEE Symp. Logic in Comp. Sci., pp. 279–290. IEEE Computer Society Press, Los Alamitos (2001)Google Scholar
  7. 7.
    Harel, D., Kantor, A., Maoz, S.: On the Power of Play-Out for Scenario-Based Programs. Technical report, Weizmann Institute (2009)Google Scholar
  8. 8.
    Harel, D., Kugler, H.: Synthesizing state-based object systems from LSC specifications. Int. J. of Foundations of Computer Science (IJFCS) 13(1), 5–51 (2002); also in: Yu, S., Păun, A. (eds.) CIAA 2000. LNCS, vol. 2088, pp. 1–51. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  9. 9.
    Harel, D., Kugler, H., Marelly, R., Pnueli, A.: Smart play-out of behavioral requirements. In: Aagaard, M.D., O’Leary, J.W. (eds.) FMCAD 2002. LNCS, vol. 2517, pp. 378–398. Springer, Heidelberg (2002); also available as Tech. Report MCS02-08, The Weizmann Institute of ScienceCrossRefGoogle Scholar
  10. 10.
    Harel, D., Kugler, H., Pnueli, A.: Synthesis Revisited: Generating Statechart Models from Scenarios-Based Requirements. In: Kreowski, H.-J., Montanari, U., Orejas, F., Rozenberg, G., Taentzer, G. (eds.) Formal Methods in Software and Systems Modeling. LNCS, vol. 3393, pp. 309–324. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  11. 11.
    Harel, D., Marelly, R.: Come, Let’s Play: Scenario-Based Programming Using LSCs and the Play-Engine. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  12. 12.
    Hennicker, R., Knapp, A.: Activity-Driven Synthesis of State Machines. In: Dwyer, M.B., Lopes, A. (eds.) FASE 2007. LNCS, vol. 4422, pp. 87–101. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Kam, N., Kugler, H., Marelly, R., Appleby, L., Fisher, J., Pnueli, A., Harel, D., Stern, M., Hubbard, E.: A scenario-based approach to modeling development: A prototype model of C. elegans vulval fate specification. Developmental Biology 323(1), 1–5 (2008)CrossRefGoogle Scholar
  14. 14.
    Klose, J., Wittke, H.: An automata based interpretation of live sequence chart. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, p. 512. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  15. 15.
    Koskimies, K., Makinen, E.: Automatic synthesis of state machines from trace diagrams. Software — Practice and Experience 24(7), 643–658 (1994)CrossRefGoogle Scholar
  16. 16.
    Koskimies, K., Mannisto, T., Systa, T., Tuomi, J.: SCED: A Tool for Dynamic Modeling of Object Systems. Tech. Report A-1996-4, University of Tampere (July 1996)Google Scholar
  17. 17.
    Krüger, I., Grosu, R., Scholz, P., Broy, M.: From MSCs to Statecharts. In: Proc. Int. Workshop on Distributed and Parallel Embedded Systems (DIPES 1998), pp. 61–71. Kluwer Academic Publishers, Dordrecht (1999)CrossRefGoogle Scholar
  18. 18.
    Kugler, H., Harel, D., Pnueli, A., Lu, Y., Bontemps, Y.: Temporal Logic for Scenario-Based Specifications. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 445–460. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  19. 19.
    Kugler, H., Segall, I.: Compositional Synthesis of Reactive Systems from Live Sequence Chart Specifications. In: Proc. 15th Intl. Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2009). LNCS. Springer, Heidelberg (2009)Google Scholar
  20. 20.
    Leue, S., Mehrmann, L., Rezai, M.: Synthesizing ROOM models from message sequence chart specifications. Tech. Report 98-06, University of Waterloo (April 1998)Google Scholar
  21. 21.
    Liang, H., Dingel, J., Diskin, Z.: A comparative survey of scenario-based to state-based model synthesis approaches. In: Proceedings of the International Workshop on Scenarios and State Machines: Models, Algorithms, and Tools (SCESM 2006), pp. 5–12 (2006)Google Scholar
  22. 22.
    McMillan, K.: Symbolic Model Checking. Kluwer Academic Publishers, Boston (1993)CrossRefMATHGoogle Scholar
  23. 23.
    Piterman, N., Pnueli, A., Sa’ar, Y.: Synthesis of reactive(1) designs. In: Emerson, E.A., Namjoshi, K.S. (eds.) VMCAI 2006. LNCS, vol. 3855, pp. 364–380. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  24. 24.
    Pnueli, A.: Extracting controllers for timed automata. Technical report, New York University (2005)Google Scholar
  25. 25.
    Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: Proc. 16th ACM Symp. Princ. of Prog. Lang., pp. 179–190 (1989)Google Scholar
  26. 26.
    Pnueli, A., Shahar, E.: A platform for combining deductive with algorithmic verification. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 184–195. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  27. 27.
    Sun, J., Dong, J.S.: Synthesis of distributed processes from scenario-based specifications. In: Fitzgerald, J.S., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 415–431. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  28. 28.
    Uchitel, S., Kramer, J., Magee, J.: Incremental elaboration of scenario-based specifications and behavior models using implied scenarios. ACM Trans. Software Engin. Methods 13(1), 37–85 (2004)CrossRefGoogle Scholar
  29. 29.
    Vardi, M.: An automata-theoretic approach to fair realizability and synthesis. In: Wolper, P. (ed.) CAV 1995. LNCS, vol. 939, pp. 267–278. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  30. 30.
    Whittle, J., Saboo, J., Kwan, R.: From scenarios to code: an air traffic control case study. In: 25th International Conference on Software Engineering (ICSE 2003), pp. 490–495. IEEE Computer Society, Los Alamitos (2003)Google Scholar
  31. 31.
    Whittle, J., Schumann, J.: Generating statechart designs from scenarios. In: 22nd International Conference on Software Engineering (ICSE 2000), pp. 314–323. ACM Press, New York (2000)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Hillel Kugler
    • 1
  • Cory Plock
    • 1
  • Amir Pnueli
    • 2
  1. 1.Computational Biology GroupMicrosoft ResearchCambridgeUK
  2. 2.Computer Science DepartmentNew York UniversityNew York, NYUSA

Personalised recommendations