Skip to main content
Log in

The relation between preset distinguishing sequences and synchronizing sequences

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

We study the relation between synchronizing sequences and preset distinguishing sequences which are some special sequences used in finite state machine based testing. We show that the problems related to preset distinguishing sequences can be converted into related problems of synchronizing sequences. Using the results existing in the literature for synchronizing sequences, we offer several reflections of these results for preset distinguishing sequences. Although computing a preset distinguishing sequence is PSPACE-hard , we do identify a class of machines for which computing a preset distinguishing sequence can be performed in polynomial time and argue that this class is practically relevant. We also present an experimental study to compare the performance of exponential brute-force and polynomial heuristic algorithms to compute a preset distinguishing sequence.

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.

Similar content being viewed by others

References

  1. Ahmad I, Ali FM, Das AS (2004) Lang-algorithm for constructing unique input/output sequences in finite-state machines. IEE Proc Comput Digital Tech 151(2): 131–140

    Article  Google Scholar 

  2. ACM/SIGDA benchmark dataset. http://www.cbl.ncsu.edu:16080/benchmarks. Accessed 06 Aug 2013.

  3. Aho AV, Dahbura AT, Lee D, Uyar MU (1988) An optimization technique for protocol conformance test generation based on UIO sequences and Rural Chinese Postman Tours. In: Protocol specification, testing, and verification VIII, Atlantic City. Elsevier, North Holland, pp 75–86

  4. Aho AV, Sethi R, Ullman JD (1986) Compilers: principles, techniques, and tools. Addison-Wesley, Boston

    Google Scholar 

  5. Ananichev DS, Volkov MV (2004) Synchronizing monotonic automata. Theor Comput Sci 327(3): 225–239

    Article  MathSciNet  MATH  Google Scholar 

  6. Ananichev DS, Volkov MV (2005) Synchronizing generalized monotonic automata. Theor Comput Sci 330(1): 3–13

    Article  MathSciNet  MATH  Google Scholar 

  7. Bogdanov K, Holcombe M, Ipate F, Seed L, Vanak SK (2006) Testing methods for X-machines: a review. Formal Aspects Comput 18(1): 3–30

    Article  MATH  Google Scholar 

  8. Binder RV (1999) Testing object-oriented systems: models, patterns, and tools. Addison-Wesley, Boston

    Google Scholar 

  9. Broy M, Jonsson B, Katoen J, Leucker M, Pretschner A (eds) (2005) Model-based testing of reactive systems, advanced lectures, Lecture Notes in Computer Science, vol 3472. Springer, Berlin

  10. Bochmann Gv, Petrenko A (1994) Protocol testing: review of methods and relevance for software testing. In: ACM international symposium on software testing and analysis, Seattle, pp 109–123

  11. Černý J (1964) A remark on homogeneous experiments with finite automata. Mat -Fyz Časopis Sloven Akad Vied 14: 208–216

    MATH  Google Scholar 

  12. Chow TS (1978) Testing software design modeled by finite-state machines. IEEE Trans Softw Eng SE- 4(3): 178–187

    Article  MATH  Google Scholar 

  13. Černý J, Pirická A, Rosenauerová B (1971) On directable automata. Kybernetika 07(4): 289–298

    Google Scholar 

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

    Article  Google Scholar 

  15. Eppstein D (1990) Reset sequences for monotonic automata. SIAM J Comput 19(3): 500–510

    Article  MathSciNet  MATH  Google Scholar 

  16. Friedman AD, Menon PR (1971) Fault detection in digital circuits. Computer Applications in Electrical Engineering Series. Prentice-Hall, Englewood Cliffs

  17. Fominykh FM, Volkov MV (2012) P(l)aying for synchronization. In: Moreira and Reis [MR12], pp 159–170

  18. Gerbush M, Heeringa B (2010) Approximating minimum reset sequences. In: Domaratzki M, Salomaa K (eds) CIAA, Lecture Notes in Computer Science, vol 6482. Springer, New York, pp 154–162

  19. Guo Q, Hierons RM, Harman M, Derderian K (2005) Constructing multiple unique input/output sequences using metaheuristic optimisation techniques. In: IEE proceedings software, pp 127–140

  20. Garey MR, Johnson DS (1979) Computers and intractability. W.H. Freeman and Company, New York

    MATH  Google Scholar 

  21. Gönenç G (1970) A method for the design of fault detection experiments. IEEE Trans Comput C-19(6):551–558

    Google Scholar 

  22. Hennie FC (1964) Fault-detecting experiments for sequential circuits. In: Proceedings of fifth annual symposium on switching circuit theory and logical design. Princeton, New Jersey, pp 95–110

  23. Hierons RM, Jourdan GV, Ural H, Yenigün H (2008) Using adaptive aistinguishing sequences in checking sequence constructions. In: Wainwright RL, Haddad H (eds) SAC. ACM, pp 682–687

  24. Hierons RM, Jourdan GV, Ural H, Yenigün H (2009) Checking sequence construction using adaptive and preset distinguishing sequences. In: Hung DV, Krishnan P (eds) SEFM. IEEE Computer Society, pp 157–166

  25. Holzmann GJ (1991) Design and validation of computer protocols. Prentice Hall, Englewood Cliffs

    Google Scholar 

  26. Harel D, Politi M (1998) Modeling reactive systems with statecharts: the STATEMATE approach. McGraw-Hill, New York

    Google Scholar 

  27. Haydar M, Petrenko A, Sahraoui H (2004) Formal verification of web applications modeled by communicating automata. In: Escrig DF, Núñez M (eds) Formal techniques for networked and distributed systems—FORTE 2004, Lecture Notes in Computer Science, vol 3235. Springer, New York, pp 115–132

  28. ITU-T (1999) Recommendation Z.100 Specification and Description Language (SDL). International Telecommunications Union, Geneva

  29. Jourdan GV, Ural H, Yenigun H, Zhang JC (2010) Lower bounds on lengths of checking sequences. Formal Aspects Comput 22(6): 667–679

    Article  MATH  Google Scholar 

  30. Karp RM (1972) Reducibility among combinatorial problems. In: Miller RE, Thatcher JW (eds) Complexity of computer computations. Plenum Press, New York, pp 85–103

  31. Kushik N, El-Fakih K, Yevtushenko N (2013) Adaptive homing and distinguishing experiments for nondeterministic finite state machines. In: Yenigün H, Yilmaz C, Ulrich A (eds) ICTSS, Lecture Notes in Computer Science, vol 8254. Springer, New York, pp 33–48

  32. Kohavi Z (1978) Switching and finite state automata theory. McGraw-Hill, New York

    Google Scholar 

  33. Kudlacik R, Roman A, Wagner H (2012) Effective synchronizing algorithms. Expert Syst Appl 39(14): 11746–11757

    Article  Google Scholar 

  34. Kushik N, Yevtushenko N (2013) On the length of homing sequences for nondeterministic finite state machines. In: Konstantinidis S (ed) CIAA, Lecture Notes in Computer Science, vol 7982. Springer, New York, pp 220–231

  35. Lai R (2002) A survey of communication protocol testing. J Syst Softw 62(1): 21–46

    Article  Google Scholar 

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

    Article  MathSciNet  Google Scholar 

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

    Article  Google Scholar 

  38. Martyugin PV (2010) Complexity of problems concerning carefully synchronizing words for PFA and directing words for NFA. In: Ablayev FM, Mayr EW (eds) Computer science—theory and applications, Lecture Notes in Computer Science, vol 6072. Springer, New York, pp 288–302

  39. Martyugin PV (2012) Complexity of problems concerning reset words for cyclic and eulerian automata. Theor Comput Sci 450: 3–9

    Article  MathSciNet  MATH  Google Scholar 

  40. Martyugin PV (2012b) Synchronization of automata with one undefined or ambiguous transition. In: Moreira and Reis [MR12], pp 278–288

  41. Martyugin PV (2013) Careful synchronization of partial automata with restricted alphabets. In: Bulatov A, Shur A (eds) Computer science—theory and applications, Lecture Notes in Computer Science, vol 7913. Springer, New York, pp 76–87

  42. Moreira N, Reis R (eds) (2012) Implementation and application of automata—17th international conference, CIAA 2012, Porto. In: Proceedings, Lecture Notes in Computer Science, vol 7381. Springer, New York

  43. Naik K (1997) Efficient computation of unique input/output sequences in finite-state machines. IEEE ACM Trans Netw 5(4)

  44. Natarajan BK (1986) An algorithmic approach to the automated design of parts orienters. In: 27th Annual symposium on foundations of computer science, pp 132–142

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

    Article  Google Scholar 

  46. Roman A (2009) Synchronizing finite automata with short reset words. Appl Math Comput 209(1): 125–136

    Article  MathSciNet  MATH  Google Scholar 

  47. Rabanal P, Rodríguez I, Rubio F (2013) Testing restorable systems: formal definition and heuristic solution based on river formation dynamics. Formal Aspects Comput 25(5): 743–768

    Article  Google Scholar 

  48. Rystsov IK (1983) Polynomial complete problems in automata theory. Inf Process Lett 16(3): 147–151

    Article  MathSciNet  MATH  Google Scholar 

  49. Rystsov IK (1997) Reset words for commutative and solvable automata. Theor Comput Sci 172(1–2):273–279

    Google Scholar 

  50. Sandberg S (2004) Homing and synchronizing sequences. In: Broy et al. [BJK+05], pp 5–33

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

    Google Scholar 

  52. Stannett M (2006) Simulation testing of automata. Formal Aspects Comput 18(1): 31–41

    Article  MathSciNet  MATH  Google Scholar 

  53. Stowell S (2012) Instant R: an introduction to R for statistical Analysis. Jotunheim Publishing

  54. Teetor P (2011) R Cookbook, 1st edn. O’Reilly

  55. Trahtman AN (2004) Some results of implemented algorithms of synchronization. In: 10th Journees Montoises d’Inform., Liege

  56. Ural H, Williams C (2006) Constructing checking sequences for distributed testing. Formal Aspects Comput 18(1): 84–101

    Article  MATH  Google Scholar 

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

    Article  Google Scholar 

  58. Vasilevskii MP (1973) Failure diagnosis of automata. Cybern Syst Anal 9(4):653–665. doi:10.1007/BF01068590

    Google Scholar 

  59. Vuong ST, Chan WWL, Ito MR (1989) The UIOv-method for protocol test sequence generation. In: The 2nd international workshop on protocol test systems, Berlin

  60. Volkov MV (2008) Synchronizing automata and the cerny conjecture. In: Martín-Vide C, Otto F, Fernau H (eds) LATA, Lecture Notes in Computer Science, vol 5196. Springer, New York, pp 11–27

  61. Wickham H (2009) ggplot2: elegant graphics for data analysis (Use R!), 1st edn, corr. 3rd printing 2010 edition. Springer, New York

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hüsnü Yenigün.

Additional information

Communicated by Manfred Broy

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Güniçen, C., İnan, K., Türker, U.C. et al. The relation between preset distinguishing sequences and synchronizing sequences. Form Asp Comp 26, 1153–1167 (2014). https://doi.org/10.1007/s00165-014-0297-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-014-0297-8

Keywords

Navigation