Abstract
Active inference algorithms that are used to extract behavioural models of software systems usually assume that the System Under Inference (SUI) can be reset. Two approaches have been proposed to infer systems that cannot be reset. Rivest and Schapire proposed an adaptation of the \(L^*\) algorithm that relies on having a homing sequence for the SUI. We detail here another approach that is based on characterization sequences. More precisely, we assume classical testing hypotheses, namely that we are given a bound n on the number of states and a set W of characterizing sequences to distinguish states. Contrary to \(L^*\), it does not require an external oracle to decide on equivalence. The length of the test sequence is polynomial in n and the exponent depends on the cardinality |W| of the characterization set. For systems where resetting is impossible or expensive, this approach can be a viable alternative to classical learning methods.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
The round trip time for a local network is usually between 0.1 and 1 ms. Resetting a virtual machine may depend on the type of virtualization and the speed of the underlying processor, but starting a Linux or Windows machine usually takes several tens of seconds.
- 2.
The size of the output set does not play a role in this bound. The number of transitions is solely determined by the number of states and the number of inputs. In practice, a higher number of different outputs increases distinguishability and therefore can reduce the length and the number of separating sequences. The worst case in practice is for \(|O|=2\).
- 3.
Since we have a bound on the number of states, another method for searching counterexamples could be used: enumerating sequences of increasing length up to the given bound. This would be an exponential search, but with a low bound it could be viable. However, this would still be longer than the shortest counterexamples to which we compared for reference.
References
Ural, H., Rezaki, A.: Construction of checking sequences based on characterization sets. Comput. Commun. 18(12), 911–920 (1995)
Balcazar, J.L., Diaz, J., Gavalda, R.: Algorithms for learning finite automata from queries: a unified view. In: Du, D.Z., Ko, K.I. (eds) Advances in Algorithms, Languages, and Complexity, pp. 53–72. Springer, Heidelberg (1997). https://doi.org/10.1007/978-1-4613-3394-4_2
Büchler, M., Hossen, K., Mihancea, P.F., Minea, M., Groz, R., Oriat, C.: Model inference and security testing in the spacios project. In: CSMR-WCRE, Antwerp, Belgium (2014)
Groz, R., Simao, A., Oriat, C.: Adaptive localizer based on splitting trees. In: Yevtushenko, N., Cavalli, A.R., Yenigün, H. (eds.) ICTSS 2017. LNCS, vol. 10533, pp. 326–332. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-67549-7_21
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
Groz, R., Oriat, C., Bremond, N.: Inferring non-resettable mealy machines with n states. In: Proceedings ICGI 2016, pp. 30–41 (2016)
Groz, R., Simao, A., Bremond, N., Oriat, C.: Revisiting AI and testing methods to infer FSM models of black-box systems. In: AST 2018, Göteborg, May 2018
Groz, R., Simao, A., Petrenko, A., Oriat, C.: Inferring finite state machines without reset using state identification sequences. In: El-Fakih, K., Barlas, G., Yevtushenko, N. (eds.) ICTSS 2015. LNCS, vol. 9447, pp. 161–177. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-25945-1_10
Hennie, F.C.: Fault-detecting experiments for sequential circuits. In: Proceedings of Fifth Annual Symposium on Circuit Theory and Logical Design, pp. 95–110 (1965)
Irfan, M.N., Oriat, C., Groz, R.: Angluin style finite state machine inference with non-optimal counterexamples. In: MIIT, pp. 11–19. ACM, New York (2010)
Lee, D., Yannakakis, M.M.: Principles and methods of testing finite state machines - a survey. Proc. IEEE 84(8), 1090–1123 (1996)
Margaria, T., Niese, O., Raffelt, H., Steffen, B.: Efficient test-based model generation for legacy reactive systems. In: High-Level Design, Validation, and Test Workshop. IEEE (2004)
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
Peled, D., Vardi, M.Y., Yannakakis, M.: Black box checking. In: Wu, J., Chanson, S.T., Gao, Q. (eds.) Formal Methods for Protocol Engineering and Distributed Systems. IAICT, vol. 28, pp. 225–240. Springer, Boston, MA (1999). https://doi.org/10.1007/978-0-387-35578-8_13
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
Rivest, R.L., Schapire, R.E.: Inference of finite automata using homing sequences. In: Hanson, S.J., Remmele, W., Rivest, R.L. (eds.) Machine Learning: From Theory to Applications. LNCS, vol. 661, pp. 51–73. Springer, Heidelberg (1993). https://doi.org/10.1007/3-540-56483-7_22
Shahbaz, M., Groz, R.: Inferring mealy machines. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 207–222. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-05089-3_14
Shahbaz, M., Groz, R.: Analysis and testing of black-box component-based systems by inferring partial models. Softw. Test. Verif. Reliab. 24(4), 253–288 (2014)
Trakhtenbrot, B.A., Barzdin, Y.M.: Finite Automata, Behaviour and Synthesis. North Holland, Amsterdam (1973)
Vasilievskii, M.P.: Failure diagnosis of automata. Cybernetics 9, 653–665 (1973)
Groz, R., Simao, A., Bremond, N., Oriat, C.: Revisiting AI and testing methods to infer FSM models of black-box systems. In: Proceedings of the 13th International Workshop on Automation of Software Test, AST 2018, Gothenburg, Sweden, 28–29 May 2018, pp. 16–19 (2018). https://doi.org/10.1145/3194733.3194736
Acknowledgements
The authors acknowledge the work of Nicolas Bremond, master student from Enseirb-Matmeca who implemented the algorithms.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this chapter
Cite this chapter
Groz, R., Simao, A., Petrenko, A., Oriat, C. (2018). 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. Lecture Notes in Computer Science(), vol 11026. Springer, Cham. https://doi.org/10.1007/978-3-319-96562-8_7
Download citation
DOI: https://doi.org/10.1007/978-3-319-96562-8_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-96561-1
Online ISBN: 978-3-319-96562-8
eBook Packages: Computer ScienceComputer Science (R0)