Fast and precise sanitizer analysis with {BEK}
Web applications often use special string-manipulating sanitizers on untrusted user data, but
it is difficult to reason manually about the behavior of these functions, leading to errors. For …
it is difficult to reason manually about the behavior of these functions, leading to errors. For …
Symbolic finite state transducers: Algorithms and applications
Finite automata and finite transducers are used in a wide range of applications in software
engineering, from regular expressions to specification languages. We extend these classic …
engineering, from regular expressions to specification languages. We extend these classic …
Expressiveness of streaming string transducers
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 …
streaming string transducer makes a single pass through the input string and uses a finite …
Regular programming for quantitative properties of data streams
We propose quantitative regular expressions (QREs) as a high-level programming
abstraction for specifying complex numerical queries over data streams in a modular way …
abstraction for specifying complex numerical queries over data streams in a modular way …
Transducers, logic and algebra for functions of finite words
The robust theory of regular languages is based on three important pillars: computation
(automata), logic, and algebra. In this paper, we survey old and recent results on extensions …
(automata), logic, and algebra. In this paper, we survey old and recent results on extensions …
Regular functions and cost register automata
We propose a deterministic model for associating costs with strings that is parameterized by
operations of interest (such as addition, scaling, and minimum), a notion of regularity that …
operations of interest (such as addition, scaling, and minimum), a notion of regularity that …
StreamQRE: modular specification and efficient evaluation of quantitative queries over streaming data
Real-time decision making in emerging IoT applications typically relies on computing
quantitative summaries of large data streams in an efficient and incremental manner. To …
quantitative summaries of large data streams in an efficient and incremental manner. To …
On runtime enforcement via suppressions
Runtime enforcement is a dynamic analysis technique that uses monitors to enforce the
behaviour specified by some correctness property on an executing system. The …
behaviour specified by some correctness property on an executing system. The …
Regular combinators for string transformations
We focus on (partial) functions that map input strings to a monoid such as the set of integers
with addition and the set of output strings with concatenation. The notion of regularity for …
with addition and the set of output strings with concatenation. The notion of regularity for …
String-to-string interpretations with polynomial-size output
String-to-string MSO interpretations are like Courcelle's MSO transductions, except that a
single output position can be represented using a tuple of input positions instead of just a …
single output position can be represented using a tuple of input positions instead of just a …