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.
Similar content being viewed by others
References
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
ACM/SIGDA benchmark dataset. http://www.cbl.ncsu.edu:16080/benchmarks. Accessed 06 Aug 2013.
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
Aho AV, Sethi R, Ullman JD (1986) Compilers: principles, techniques, and tools. Addison-Wesley, Boston
Ananichev DS, Volkov MV (2004) Synchronizing monotonic automata. Theor Comput Sci 327(3): 225–239
Ananichev DS, Volkov MV (2005) Synchronizing generalized monotonic automata. Theor Comput Sci 330(1): 3–13
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
Binder RV (1999) Testing object-oriented systems: models, patterns, and tools. Addison-Wesley, Boston
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
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
Černý J (1964) A remark on homogeneous experiments with finite automata. Mat -Fyz Časopis Sloven Akad Vied 14: 208–216
Chow TS (1978) Testing software design modeled by finite-state machines. IEEE Trans Softw Eng SE- 4(3): 178–187
Černý J, Pirická A, Rosenauerová B (1971) On directable automata. Kybernetika 07(4): 289–298
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
Eppstein D (1990) Reset sequences for monotonic automata. SIAM J Comput 19(3): 500–510
Friedman AD, Menon PR (1971) Fault detection in digital circuits. Computer Applications in Electrical Engineering Series. Prentice-Hall, Englewood Cliffs
Fominykh FM, Volkov MV (2012) P(l)aying for synchronization. In: Moreira and Reis [MR12], pp 159–170
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
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
Garey MR, Johnson DS (1979) Computers and intractability. W.H. Freeman and Company, New York
Gönenç G (1970) A method for the design of fault detection experiments. IEEE Trans Comput C-19(6):551–558
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
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
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
Holzmann GJ (1991) Design and validation of computer protocols. Prentice Hall, Englewood Cliffs
Harel D, Politi M (1998) Modeling reactive systems with statecharts: the STATEMATE approach. McGraw-Hill, New York
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
ITU-T (1999) Recommendation Z.100 Specification and Description Language (SDL). International Telecommunications Union, Geneva
Jourdan GV, Ural H, Yenigun H, Zhang JC (2010) Lower bounds on lengths of checking sequences. Formal Aspects Comput 22(6): 667–679
Karp RM (1972) Reducibility among combinatorial problems. In: Miller RE, Thatcher JW (eds) Complexity of computer computations. Plenum Press, New York, pp 85–103
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
Kohavi Z (1978) Switching and finite state automata theory. McGraw-Hill, New York
Kudlacik R, Roman A, Wagner H (2012) Effective synchronizing algorithms. Expert Syst Appl 39(14): 11746–11757
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
Lai R (2002) A survey of communication protocol testing. J Syst Softw 62(1): 21–46
Lee D, Yannakakis M (1994) Testing finite-state machines: state identification and verification. IEEE Trans Comput 43(3): 306–320
Lee D, Yannakakis M (1996) Principles and methods of testing finite-state machines—a survey. Proc IEEE 84(8): 1089–1123
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
Martyugin PV (2012) Complexity of problems concerning reset words for cyclic and eulerian automata. Theor Comput Sci 450: 3–9
Martyugin PV (2012b) Synchronization of automata with one undefined or ambiguous transition. In: Moreira and Reis [MR12], pp 278–288
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
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
Naik K (1997) Efficient computation of unique input/output sequences in finite-state machines. IEEE ACM Trans Netw 5(4)
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
Petrenko A, Yevtushenko N (2005) Testing from partial deterministic FSM specifications. IEEE Trans Comput 54(9): 1154–1165
Roman A (2009) Synchronizing finite automata with short reset words. Appl Math Comput 209(1): 125–136
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
Rystsov IK (1983) Polynomial complete problems in automata theory. Inf Process Lett 16(3): 147–151
Rystsov IK (1997) Reset words for commutative and solvable automata. Theor Comput Sci 172(1–2):273–279
Sandberg S (2004) Homing and synchronizing sequences. In: Broy et al. [BJK+05], pp 5–33
Sabnani K, Dahbura A (1988) A protocol test generation procedure. Comput Netw 15(4): 285–297
Stannett M (2006) Simulation testing of automata. Formal Aspects Comput 18(1): 31–41
Stowell S (2012) Instant R: an introduction to R for statistical Analysis. Jotunheim Publishing
Teetor P (2011) R Cookbook, 1st edn. O’Reilly
Trahtman AN (2004) Some results of implemented algorithms of synchronization. In: 10th Journees Montoises d’Inform., Liege
Ural H, Williams C (2006) Constructing checking sequences for distributed testing. Formal Aspects Comput 18(1): 84–101
Ural H, Zhu K (1993) Optimal length test sequence generation using distinguishing sequences. IEEE/ACM Trans Netw 1(3): 358–371
Vasilevskii MP (1973) Failure diagnosis of automata. Cybern Syst Anal 9(4):653–665. doi:10.1007/BF01068590
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
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
Wickham H (2009) ggplot2: elegant graphics for data analysis (Use R!), 1st edn, corr. 3rd printing 2010 edition. Springer, New York
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Manfred Broy
Rights and permissions
About this article
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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-014-0297-8