Skip to main content

Learning Communicating State Machines

  • Conference paper
  • First Online:
Tests and Proofs (TAP 2019)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 11823))

Included in the following conference series:

Abstract

We consider the problems of learning and conformance testing of components in a modular system. We assume that each component can be modelled as a Finite State Machine (FSM), the topology of the system is known, but some (or all) component FSMs are unknown and have to be learned by testing the whole system, as it cannot be disassembled. Thus the classical problem of active inference of an automaton in isolation is now further lifted to a system of communicating FSMs of an arbitrary topology. As opposed to the existing work on automata learning, the proposed approach neither needs a Minimally Adequate Teacher, also called the Oracle, nor uses it a conformance tester to approximate equivalence queries. The approach further enhances a SAT solving method suggested by the authors and allows to adaptively test conformance of a system with unknown components assuming that internal communications are observable. The resulting tests are much smaller than the classical universal conformance tests derived from the composite machine of the system.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Abel, A., Reineke, J.: Gray-box learning of serial compositions of mealy machines. In: Rayadurgam, S., Tkachuk, O. (eds.) NFM 2016. LNCS, vol. 9690, pp. 272–287. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-40648-0_21

    Chapter  Google Scholar 

  2. Angluin, D.: Learning regular sets from queries and counterexamples. Inf. Comput. 75(2), 87–106 (1987)

    Article  MathSciNet  Google Scholar 

  3. Bennaceur, A., Giannakopoulou, D., Hähnle, R., Meinke, K.: Machine Learning for Dynamic Software Analysis: Potentials and Limits. LNCS, vol. 11026. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96562-8

    Book  Google Scholar 

  4. Berg, T., Grinchtein, O., Jonsson, B., Leucker, M., Raffelt, H., Steffen, B.: On the correspondence between conformance testing and regular inference. In: Cerioli, M. (ed.) FASE 2005. LNCS, vol. 3442, pp. 175–189. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-31984-9_14

    Chapter  Google Scholar 

  5. Biermann, A.W., Feldman, J.A.: On the synthesis of finite-state machines from samples of their behavior. IEEE Trans. Comput. 100(6), 592–597 (1972)

    Article  MathSciNet  Google Scholar 

  6. De la Higuera, C.: Grammatical Inference: Learning Automata and Grammars. Cambridge University Press, Cambridge (2010)

    Book  Google Scholar 

  7. Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24605-3_37

    Chapter  Google Scholar 

  8. Gold, E.M.: Complexity of automaton identification from given data. Inf. Control 37(3), 302–320 (1978)

    Article  MathSciNet  Google Scholar 

  9. Groz, R., Li, K., Petrenko, A., Shahbaz, M.: Modular system verification by inference, testing and reachability analysis. In: Suzuki, K., Higashino, T., Ulrich, A., Hasegawa, T. (eds.) FATES/TestCom -2008. LNCS, vol. 5047, pp. 216–233. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-68524-1_16

    Chapter  Google Scholar 

  10. Groz, R., Li, K., Petrenko, A.: Integration testing of communicating systems with unknown components. Ann. Telecommun. 70(3–4), 107–125 (2015)

    Article  Google Scholar 

  11. Groz, R., Simao, A., Petrenko, A., Oriat, C.: Inferring FSM models of systems without reset. In: Bennaceur, A., Hähnle, R., Meinke, K. (eds.) Machine Learning for Dynamic Software Analysis: Potentials and Limits. LNCS, vol. 11026, pp. 178–201. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96562-8_7

    Chapter  Google Scholar 

  12. Heule, M.J.H., Verwer, S.: Exact DFA identification using SAT solvers. In: Sempere, J.M., García, P. (eds.) ICGI 2010. LNCS (LNAI), vol. 6339, pp. 66–79. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-15488-1_7

    Chapter  Google Scholar 

  13. Jaffar-ur Rehman, M., Jabeen, F., Bertolino, A., Polini, A.: Testing software components for integration: a survey of issues and techniques. Softw. Test. Verif. Reliab. 17, 95–133 (2007)

    Article  Google Scholar 

  14. Kella, J.: Sequential machine identification. IEEE Trans. Comput. 100(3), 332–338 (1971)

    Article  Google Scholar 

  15. Luo, G., von Bochmann, G., Petrenko, A.: Test selection based on communicating nondeterministic finite-state machines using a generalized Wp-method. IEEE Trans. Softw. Eng. 20(2), 149–162 (1994)

    Article  Google Scholar 

  16. Meinke, K.: CGE: a sequential learning algorithm for mealy automata. In: Sempere, J.M., García, P. (eds.) ICGI 2010. LNCS (LNAI), vol. 6339, pp. 148–162. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-15488-1_13

    Chapter  Google Scholar 

  17. Peled, D., Vardi, M.Y., Yannakakis, M.: Black box checking. J. Automat. Lang. Comb. 7(2), 225–246 (2001)

    MathSciNet  MATH  Google Scholar 

  18. Petrenko, A., Avellaneda, F., Groz, R., Oriat, C.: From passive to active FSM inference via checking sequence construction. In: Yevtushenko, N., Cavalli, A.R., Yenigün, H. (eds.) ICTSS 2017. LNCS, vol. 10533, pp. 126–141. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-67549-7_8

    Chapter  Google Scholar 

  19. Petrenko, A., Avellaneda, F., Groz, R., Oriat, C.: FSM inference and checking sequence construction are two sides of the same coin. Softw. Qual. J. (2018). https://doi.org/10.1007/s11219-018-9429-3

    Article  Google Scholar 

  20. Petrenko, A., Avellaneda, F.: Conformance testing and inference of embedded components. In: Medina-Bulo, I., Merayo, M.G., Hierons, R. (eds.) ICTSS 2018. LNCS, vol. 11146, pp. 119–134. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99927-2_10

    Chapter  Google Scholar 

  21. Shahbaz, M., Shashidhar, K.C., Eschbach, R.: Iterative refinement of specification for component based embedded systems. In: Proceedings of the 2011 International Symposium on Software Testing and Analysis, pp. 276–286 (2011)

    Google Scholar 

  22. Steffen, B., et al.: Active automata learning: from DFAs to interface programs and beyond. In: ICGI, pp. 195–209 (2012)

    Google Scholar 

  23. Vasilevski, M.P.: Failure diagnosis of automata. Cybernetics 9(4), 653–665 (1973)

    Article  Google Scholar 

  24. Villa, T., Yevtushenko, N., Brayton, R.K., Mishchenko, A., Petrenko, A., Sangiovanni-Vincentelli, A.L.: The Unknown Component Problem: Theory and Applications. Springer, Heidelberg (2012). https://doi.org/10.1007/978-0-387-68759-9

    Book  MATH  Google Scholar 

  25. Villa, T., Petrenko, A., Yevtushenko, N., Mishchenko, A., Brayton, R.: Component-based design by solving language equations. Proc. IEEE 103(11), 2152–2167 (2015)

    Article  Google Scholar 

  26. Zafiropulo, P., West, C., Rudin, H., Cowan, D., Brand, D.: Towards analyzing and synthesizing protocols. IEEE Trans. Commun. 28(4), 651–661 (1980)

    Article  Google Scholar 

Download references

Acknowledgements

This work was partially supported by MEI (Ministère de l’Économie et Innovation) of Gouvernement du Québec and NSERC of Canada.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alexandre Petrenko .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Petrenko, A., Avellaneda, F. (2019). Learning Communicating State Machines. In: Beyer, D., Keller, C. (eds) Tests and Proofs. TAP 2019. Lecture Notes in Computer Science(), vol 11823. Springer, Cham. https://doi.org/10.1007/978-3-030-31157-5_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-31157-5_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-31156-8

  • Online ISBN: 978-3-030-31157-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics