Symbolic String Transformations with Regular Lookahead and Rollback

作者: Margus Veanes

DOI: 10.1007/978-3-662-46823-4_27

关键词:

摘要: Implementing string transformation routines, such as encoders, decoders, and sanitizers, correctly efficiently is a difficult error prone task. Such routines are often used in security critical settings, process large amounts of data, must work correctly. We introduce new declarative language called Bex that builds on elements regular expressions, symbolic automata transducers, enables compilation scheme into C, C# or JavaScript avoids many the potential sources errors arise when implemented directly. The approach allows correctness analysis using theory not possible at level generated code. Moreover, case studies show code consistently outperforms hand-optimized

参考文章(22)
Loris D’Antoni, Margus Veanes, Equivalence of Extended Symbolic Finite Transducers Computer Aided Verification. pp. 624- 639 ,(2013) , 10.1007/978-3-642-39799-8_41
Leonardo de Moura, Nikolaj Bjørner, Z3: an efficient SMT solver tools and algorithms for construction and analysis of systems. pp. 337- 340 ,(2008) , 10.1007/978-3-540-78800-3_24
Luc Segoufin, Automata and Logics for Words and Trees over an Infinite Alphabet Computer Science Logic. pp. 41- 57 ,(2006) , 10.1007/11874683_3
Margus Veanes, Nikolaj Bjørner, Symbolic Tree Transducers Perspectives of Systems Informatics. ,vol. 7162, pp. 377- 393 ,(2012) , 10.1007/978-3-642-29709-0_32
Aske Simon Christensen, Michael I. Schwartzbach, Anders Møller, Precise analysis of string expressions static analysis symposium. pp. 1- 18 ,(2003) , 10.5555/1760267.1760269
Pieter Hooimeijer, Margus Veanes, David Molnar, Prateek Saxena, Benjamin Livshits, Fast and precise sanitizer analysis with BEK usenix security symposium. pp. 1- 1 ,(2011)
Rajeev Alur, Pavol Černý, Streaming transducers for algorithmic verification of single-pass list-processing programs symposium on principles of programming languages. ,vol. 46, pp. 599- 610 ,(2011) , 10.1145/1925844.1926454
Matko Botinčan, Domagoj Babić, Sigma* Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '13. ,vol. 48, pp. 443- 456 ,(2013) , 10.1145/2429069.2429123
Rajeev Alur, Emmanuel Filiot, Ashutosh Trivedi, Regular Transformations of Infinite Strings 2012 27th Annual IEEE Symposium on Logic in Computer Science. pp. 65- 74 ,(2012) , 10.1109/LICS.2012.18