Skip to main content

Minimizing Characterizing Sets

  • Conference paper
  • First Online:
Formal Aspects of Component Software (FACS 2019)

Abstract

A characterizing set (CS) for a given finite state machine (FSM) defines a set of input sequences such that for any pair of states of FSM, there exists an input sequence in a CS that can separate these states. There are techniques that generate test sequences with guaranteed fault detection power using CSs. The number of inputs and input sequences in a CS directly impacts the cost of the test: the higher the number of elements, the longer it takes to generate the test. Despite the direct benefits of using CSs with fewer sequences, there has been no work focused on generating minimum sized characterizing sets. In this paper, we show that constructing CS with fewer elements is a PSPACE-Hard problem and that the corresponding decision problem is PSPACE-Complete. We then introduce a heuristic to construct CSs with fewer input sequences. We evaluate the proposed algorithm using randomly generated FSMs as well as some benchmark FSMs. The results are promising, and the proposed method reduces the number of test sequences by \(37.3\%\) and decreases the total length of the tests by \(34.6\%\) on the average.

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

Notes

  1. 1.

    Since the circuits receive inputs in bits, and since b bits correspond to \(2^b\) inputs, we do not consider FSMs with \(b \ge 10\) bits.

  2. 2.

    FSM specification Ex4 is partially specified. We complete the missing transitions by adding self looping transitions with a special output symbol, and do not use these inputs for W-set construction.

  3. 3.

    One way ANOVA test accepts null hypothesis [36].

References

  1. Aho, A.V., Dahbura, A.T., Lee, D., Uyar, M.U.: An optimization technique for protocol conformance test generation based on UIO sequences and rural Chinese postman tours. In: Protocol Specification, Testing, and Verification, North-Holland, Atlantic City, vol. VIII, pp. 75–86. Elsevier (1988)

    Google Scholar 

  2. Aho, A., Sethi, R., Ullman, J.: Compilers, Principles, Techniques, and Tools. Addison-Wesley Series in Computer Science. Addison-Wesley Publishing Company (1986)

    Google Scholar 

  3. Betin-Can, A., Bultan, T.: Verifiable concurrent programming using concurrency controllers. In: Proceedings of the 19th IEEE International Conference on Automated Software Engineering, pp. 248–257. IEEE Computer Society (2004)

    Google Scholar 

  4. Binder, R.V.: Testing Object-Oriented Systems: Models, Patterns, and Tools. Addison-Wesley (1999)

    Google Scholar 

  5. Brglez, F.: ACM/SIGMOD benchmark dataset. http://www.cbl.ncsu.edu/benchmarks/Benchmarks-upto-1996.html (1996). Accessed 12 Feb 2014

  6. Brinksma, E.: A theory for the derivation of tests. In: Proceedings of Protocol Specification, Testing, and Verification, North-Holland, Atlantic City, vol. VIII, pp. 63–74 (1988)

    Google Scholar 

  7. Chow, T.S.: Testing software design modelled by finite state machines. IEEE Trans. Softw. Eng. 4, 178–187 (1978)

    Article  Google Scholar 

  8. Dahbura, A., Sabnani, K., Uyar, M.: Formal methods for generating protocol conformance test sequences. Proc. IEEE 78(8), 1317–1326 (1990). https://doi.org/10.1109/5.58319

    Article  Google Scholar 

  9. Dorofeeva, R., El-Fakih, K., Maag, S., Cavalli, A.R., Yevtushenko, N.: FSM-based conformance testing methods: a survey annotated with experimental evaluation. Inf. Softw. Technol. 52(12), 1286–1297 (2010)

    Article  Google Scholar 

  10. Dorofeeva, R., El-Fakih, K., Yevtushenko, N.: An improved conformance testing method. In: Wang, F. (ed.) FORTE 2005. LNCS, vol. 3731, pp. 204–218. Springer, Heidelberg (2005). https://doi.org/10.1007/11562436_16

    Chapter  Google Scholar 

  11. Friedman, A., Menon, P.: Fault Detection in Digital Circuits. Computer Applications in Electrical Engineering Series. Prentice-Hall (1971)

    Google Scholar 

  12. Friedman, A.D., Menon, P.R. (eds.): Fault Detection in Digital Circuits. Prentice-Hall Englewood Cliffs, N.J (1971)

    Google Scholar 

  13. Fujiwara, S., Bochmann, G.V., Khendek, F., Amalou, M., Ghedamsi, A.: Test selection based on finite state models. IEEE Trans. Softw. Eng. 17(6), 591–603 (1991)

    Article  Google Scholar 

  14. Gill, A.: Introduction to the Theory of Finite State Machines. McGraw-Hill, New York (1962)

    MATH  Google Scholar 

  15. Gonenc, G.: A method for the design of fault detection experiments. IEEE Trans. Comput. 19, 551–558 (1970)

    Article  Google Scholar 

  16. Grieskamp, W., Kicillof, N., Stobie, K., Braberman, V.A.: Model-based quality assurance of protocol documentation: tools and methodology. Softw. Test. Verif. Reliab. 21(1), 55–71 (2011). https://doi.org/10.1002/stvr.427

    Article  Google Scholar 

  17. Güniçen, C., Türker, U.C., Ural, H., Yenigün, H.: Generating preset distinguishing sequences using SAT. In: Gelenbe, E., Lent, R., Sakellari, G. (eds.) Computer and Information Sciences II, pp. 487–493. Springer, London (2011). https://doi.org/10.1007/978-1-4471-2155-8_62

    Chapter  Google Scholar 

  18. Haydar, M., Petrenko, A., Sahraoui, H.: Formal verification of web applications modeled by communicating automata. In: de Frutos-Escrig, D., Núñez, M. (eds.) FORTE 2004. LNCS, vol. 3235, pp. 115–132. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30232-2_8

    Chapter  MATH  Google Scholar 

  19. Hennie, F.C.: Fault-detecting experiments for sequential circuits. In: Proceedings of Fifth Annual Symposium on Switching Circuit Theory and Logical Design, pp. 95–110. Princeton, New Jersey, November 1964

    Google Scholar 

  20. Hierons, R.M.: Minimizing the number of resets when testing from a finite state machine. Inf. Process. Lett. 90(6), 287–292 (2004)

    Article  Google Scholar 

  21. Hierons, R.M., Türker, U.C.: Parallel algorithms for generating harmonised state identifiers and characterising sets. IEEE Trans. Comput. 65(11), 3370–3383 (2016). https://doi.org/10.1109/TC.2016.2532869

    Article  MathSciNet  MATH  Google Scholar 

  22. Hopcroft, J.E.: An n log n algorithm for minimizing the states in a finite automaton. In: Kohavi, Z. (ed.) The theory of Machines and Computation, pp. 189–196. Academic Press (1971)

    Google Scholar 

  23. Hsieh, E.P.: Checking experiments for sequential machines. IEEE Trans. Comput. 20, 1152–1166 (1971)

    Article  MathSciNet  Google Scholar 

  24. Kohavi, Z.: Switching and Finite State Automata Theory. McGraw-Hill, New York (1978)

    MATH  Google Scholar 

  25. Koufareva, I., Dorofeeva, M.: A novel modification of w-method. Joint Bull. Novosibirsk Comput. 69–81 (2002)

    Google Scholar 

  26. Lee, D., Sabnani, K., Kristol, D., Paul, S.: Conformance testing of protocols specified as communicating finite state machines-a guided random walk based approach. IEEE Trans. Commun. 44(5), 631–640 (1996). https://doi.org/10.1109/26.494307

    Article  Google Scholar 

  27. Lee, D., Yannakakis, M.: Testing finite-state machines: state identification and verification. IEEE Trans. Comput. 43(3), 306–320 (1994)

    Article  MathSciNet  Google Scholar 

  28. Lee, D., Yannakakis, M.: Principles and methods of testing finite-state machines - a survey. Proc. IEEE 84(8), 1089–1123 (1996)

    Article  Google Scholar 

  29. Low, S.: Probabilistic conformance testing of protocols with unobservable transitions. In: 1993 International Conference on Network Protocols, pp. 368–375 (Oct). https://doi.org/10.1109/ICNP.1993.340890

  30. Luo, G., Petrenko, A., v. Bochmann, G.: Selecting test sequences for partially-specified nondeterministic finite state machines. In: Mizuno, T., Higashino, T., Shiratori, N. (eds.) Protocol Test Systems. ITIFIP, pp. 95–110. Springer, Boston, MA (1995). https://doi.org/10.1007/978-0-387-34883-4_6

    Chapter  Google Scholar 

  31. Petrenko, A., Bochmann, G.V., Dssouli, R.: Conformance relations and test derivation. In: Proceedings of Protocol Test Systems VI (C-19), pp. 157–178 (1993)

    Google Scholar 

  32. Petrenko, A., Yevtushenko, N.: Testing from partial deterministic FSM specifications. IEEE Trans. Comput. 54(9), 1154–1165 (2005)

    Article  Google Scholar 

  33. Pomeranz, I., Reddy, S.M.: Test generation for multiple state-table faults in finite-state machines. IEEE Trans. Comput. 46(7), 783–794 (1997)

    Article  Google Scholar 

  34. Sabnani, K., Dahbura, A.: A protocol test generation procedure. Comput. Netw. 15(4), 285–297 (1988)

    Google Scholar 

  35. Sidhu, D.P., Leung, T.K.: Formal methods for protocol testing: a detailed study. IEEE Trans. Software Eng. 15(4), 413–426 (1989)

    Article  Google Scholar 

  36. Teetor, P.: R Cookbook, 1st edn. O’Reilly (2011). http://oreilly.com/catalog/9780596809157

  37. Ural, H., Zhu, K.: Optimal length test sequence generation using distinguishing sequences. IEEE/ACM Trans. Netw. 1(3), 358–371 (1993)

    Article  Google Scholar 

  38. Ural, H.: Formal methods for test sequence generation. Comput. Commun. 15(5), 311–325 (1992). https://doi.org/10.1016/0140-3664(92)90092-S

    Article  Google Scholar 

  39. Utting, M., Pretschner, A., Legeard, B.: A taxonomy of model-based testing approaches. Softw. Test. Verif. Reliab. 22(5), 297–312 (2012)

    Article  Google Scholar 

  40. Vasilevskii, M.P.: Failure diagnosis of automata. Cybernetics 4, 653–665 (1973)

    Google Scholar 

  41. Vuong, S.T., Chan, W.W.L., Ito, M.R.: The UIOv-method for protocol test sequence generation. In: The 2nd International Workshop on Protocol Test Systems, Berlin (1989)

    Google Scholar 

Download references

Acknowledgements

This work is supported by the scientific and technological council of Turkey (TUBITAK) under the grant 117E987.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Uraz Cengiz Türker .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Bulut, K., Jourdan, G.V., Türker, U.C. (2020). Minimizing Characterizing Sets. In: Arbab, F., Jongmans, SS. (eds) Formal Aspects of Component Software. FACS 2019. Lecture Notes in Computer Science(), vol 12018. Springer, Cham. https://doi.org/10.1007/978-3-030-40914-2_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-40914-2_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-40913-5

  • Online ISBN: 978-3-030-40914-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics