Streaming String Transducers | Springer Nature Link
Advertisement
Streaming String Transducers
Conference paper
pp 1
Cite this conference paper
Logic, Language, Information and Computation
(WoLLIC 2011)
Streaming String Transducers
Abstract
Streaming string transducers
define (partial) functions from input strings to output strings. A streaming string transducer makes a single pass through the input string and uses a finite set of variables that range over strings from the output alphabet. At every step, the transducer processes an input symbol, and updates all the variables in parallel using assignments whose right-hand-sides are concatenations of output symbols and variables with the restriction that a variable can be used at most once in a right-hand-side expression. The expressiveness of streaming string transducers coincides with the class of “regular” transductions that can be equivalently defined using two-way deterministic finite-state transducers and using monadic second-order logic. The problems of checking functional equivalence of two streaming transducers, and of checking whether a streaming transducer satisfies pre/post verification conditions specified by finite automata, are solvable in
Pspace
. These decision procedures also generalize to the model of streaming transducers over
data strings
—strings over symbols tagged with data values over a potentially infinite data domain that supports only the operations of equality and ordering. We identify a class of imperative and a class of functional programs, manipulating lists of data items, which can be effectively translated to such streaming data-string transducers. Our results lead to algorithms for assertion checking and for checking functional equivalence of two programs, written possibly in different programming styles, for commonly used routines such as insert, delete, and reverse.
This talk is based on results reported in [2] and [1].
Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
A Decision Procedure for Path Feasibility of String Manipulating Programs with Integer Data Type
Chapter
A decision procedure for string constraints with string/integer conversion and flat regular constraints
Article
24 October 2023
Enumerated Automata Implementation of String Dictionaries
Chapter
Explore related subjects
Discover the latest articles, books and news in related subjects, suggested using machine learning.
Compilers and Interpreters
Formal Languages and Automata Theory
Lisp
Perl
Input/Output and Data Communications
Computer Science Logic and Foundations of Programming
Type Systems and Functional Programming Language Theory
References
Alur, R., Černý, P.: Expressiveness of streaming string transducers. In: Proc. 30th FSTTCS, pp. 1–12 (2010)
Google Scholar
Alur, R., Černý, P.: Streaming transducers for algorithmic verification of single-pass list-processing programs. In: Proc. 38th POPL, pp. 599–610 (2011)
Google Scholar
Download references
Author information
Authors and Affiliations
Department of Computer and Information Science, University of Pennsylvania, USA
Rajeev Alur
Authors
Rajeev Alur
View author publications
Search author on:
PubMed
Google Scholar
Editor information
Editors and Affiliations
Steklov Mathematical Institute, Gubkina 8, 117966, Moscow, Russia
Lev D. Beklemishev
Centro de Informática, Universidade Federal de Pernambuco, Avenida Prof Luis Freire s/n, Cidade Universitária, 50740-540, Recife, PE, Brazil
Ruy de Queiroz
Rights and permissions
Reprints and permissions
Copyright information
About this paper
Cite this paper
Alur, R. (2011). Streaming String Transducers.
In: Beklemishev, L.D., de Queiroz, R. (eds) Logic, Language, Information and Computation. WoLLIC 2011. Lecture Notes in Computer Science(), vol 6642. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-20920-8_1
Download citation
.RIS
.ENW
.BIB
DOI
Publisher Name
Springer, Berlin, Heidelberg
Print ISBN
978-3-642-20919-2
Online ISBN
978-3-642-20920-8
eBook Packages
Computer Science
Computer Science (R0)
Springer Nature Proceedings Computer Science
Share this paper
Anyone you share the following link with will be able to read this content:
Sorry, a shareable link is not currently available for this article.
Provided by the Springer Nature SharedIt content-sharing initiative
Keywords
Data Item
Decision Procedure
Single Pass
Finite Automaton
Data Domain
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Publish with us
Policies and ethics