Abstract
Symbolic finite automata and transducers augment classic automata and transducers with symbolic alphabets represented as parametric theories. This extension enables to succinctly represent large and potentially infinite alphabets while preserving closure and decidability properties. Extended symbolic finite automata and transducers further extend these objects by allowing transitions to read consecutive input elements in a single step. In this paper we study the properties of these models. In contrast to the case of finite alphabets, we show how reading multiple symbols increases the expressiveness of the models, which causes some closure properties to stop holding and most decision problems to become undecidable. In particular we show how extended symbolic finite transducers are not closed under composition, and the equivalence problem is undecidable for both extended symbolic finite automata and transducers. We then introduce the subclass of Cartesian extended symbolic finite transducers in which guards are limited to conjunctions of unary predicates and we propose an equivalence algorithm for this subclass in the single-valued case. We also present a heuristic algorithm for composing extended symbolic finite transducers that works for many practical cases. Finally, we model real world programs with Cartesian extended symbolic finite transducers and use the proposed algorithms to prove their correctness.
Similar content being viewed by others
Notes
For more information see http://www.rise4fun.com/Bek/tutorial/base64.
Bek is available at: http://www.rise4fun.com/Bek.
Bex is available at: http://www.rise4fun.com/Bex.
More information at http://www.cs.washington.edu/research/networking/napt/.
References
Alur R, Cerný P (2011) Streaming transducers for algorithmic verification of single-pass list-processing programs. In: POPL’11, ACM, pp 599–610
Botincan M, Babic D (2013) Sigma*: symbolic learning of input-output specifications. In: POPL’13, ACM, pp 443–456
Culic K, Karhumäki J (1986) The equivalence of finite-valued transducers (on HDTOL languages) is decidable. Theor Comput Sci 47:71–84
D’Antoni L, Alur R (2014) Symbolic visibly pushdown automata. In: Biere A, Bloem R (eds) Computer aided verification, vol 8559. Lecture notes in computer science. Springer, New York, pp 209–225. doi:10.1007/978-3-319-08867-9-14
D’Antoni L, Veanes M (2013) Equivalence of extended symbolic finite transducers. In: Proceedings of the 25th international conference on computer aided verification, CAV’13, Springer, Berlin, pp 624–639. doi:10.1007/978-3-642-39799-8_41
D’Antoni L, Veanes M (2013) Static analysis of string encoders and decoders. In: Giacobazzi R, Berdine J, Mastroeni I (eds) VMCAI, LNCS, vol 7737, Springer, pp 209–228
D’Antoni L, Veanes M (2014) Minimization of symbolic automata. In: Proceedings of the 41st ACM SIGPLAN-SIGACT symposium on principles of programming languages, POPL ’14, ACM, New York, pp 541–553. doi:10.1145/2535838.2535849
D’Antoni L, Veanes M, Livshits B, Molnar D (2014) Fast: a transducer-based language for tree manipulation. In: Proceedings of the 35th ACM SIGPLAN conference on programming language design and implementation, PLDI ’14, ACM, New York, pp 384–394. doi:10.1145/2594291.2594309
Fülöp Z, Vogler H (1998) Syntax-directed semantics: formal models based on tree transducers. EATCS. Springer, New York
Griffiths T (1968) The unsolvability of the equivalence problem for \(\varLambda \)-free nondeterministic generalized machines. J ACM 15:409–413
Hooimeijer P, Livshits B, Molnar D, Saxena P, Veanes M (2011) Fast and precise sanitizer analysis with Bek. In: USENIX security, pp 1–16
Ibarra O (1978) The unsolvability of the equivalence problem for Efree NGSM’s with unary input (output) alphabet and applications. SIAM J Comput 4:524–532
Kaminski M, Francez N (1994) Finite-memory automata. TCS 134(2):329–363
Kumar S, Chandrasekaran B, Turner J, Varghese G (2007) Curing regular expressions matching algorithms from insomnia, amnesia, and acalculia. In: ANCS 2007, ACM/IEEE, pp 155–164
Maletti A, Graehl J, Hopkins M, Knight K (2009) The power of extended top-down tree transducers. SIAM J Comput 39(2):410–430. doi:10.1137/070699160
Mohri M (1997) Finite-state transducers in language and speech processing. Comput Linguist 23(2):269–311. http://dl.acm.org/citation.cfm?id=972695.972698
van Noord G, Gerdemann D (2001) Finite state transducers with predicates and identities. Grammars 4(3):263–286
Schützenberger MP (1975) Sur les relations rationnelles. In: GI conference on automata theory and formal languages. LNCS 33:209–213
Segoufin L, Segoufin L (2006) Automata and logics for words and trees over an infinite alphabet. CSL. Springer, Berlin Heidelberg, pp 41–57
Smith R, Estan C, Jha S, Kong S (2008) Deflating the big bang: fast and scalable deep packet inspection with extended finite automata. In: SIGCOMM ’08, ACM, pp 207–218
Veanes M, Bjørner N, Nachmanson L, Bereg S (2014) Monadic decomposition. In: CAV’14, LNCS, vol 8559, Springer, pp 628–645
Veanes M, Hooimeijer P, Livshits B, Molnar D, Bjorner N (2012) Symbolic finite state transducers: algorithms and applications. In: POPL’12, ACM, pp 137–150
Veanes M, Mytkowicz T, Molnar D, Livshits B (2015) Data-parallel string-manipulating programs. In: Proceedings of the 42nd ACM SIGPLAN-SIGACT symposium on principles of programming languages, POPL’15, ACM, pp 139–152
Watson BW (1996) Implementing and using finite automata toolkits. Nat Lang Eng 2(4):295–302. doi:10.1017/S135132499700154X
Weber A (1993) Decomposing finite-valued transducers and deciding their equivalence. SIAM J Comput 22(1):175–202
Yu S (1997) Regular languages. In: Rozenberg G, Salomaa A (eds) Handbook of formal languages, vol 1. Springer, New York, pp 41–110
Acknowledgments
Loris D’Antoni’s research was supported by National Science Foundation Expeditions in Computing award CCF 1138996.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
D’Antoni, L., Veanes, M. Extended symbolic finite automata and transducers. Form Methods Syst Des 47, 93–119 (2015). https://doi.org/10.1007/s10703-015-0233-4
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10703-015-0233-4