Abstract Transducers

10/16/2019
by   Andreas Stahlbauer, et al.
0

Several abstract machines that operate on symbolic input alphabets have been proposed in the last decade, for example, symbolic automata or lattice automata. Applications of these types of automata include software security analysis and natural language processing. While these models provide means to describe words over infinite input alphabets, there is no considerable work on symbolic output (as present in transducers) alphabets, or even abstraction (widening) thereof. Furthermore, established approaches for transforming, for example, minimizing or reducing, finite-state machines that produce output on states or transitions are not applicable. A notion of equivalence of this type of machines is needed to make statements about whether or not transformations maintain the semantics. We present abstract transducers as a new form of finite-state transducers. Both their input alphabet and the output alphabet is composed of abstract words, where one abstract word represents a set of concrete words. The mapping between these representations is described by abstract word domains. By using words instead of single letters, abstract transducers provide the possibility of lookaheads to decide on state transitions to conduct. Since both the input symbol and the output symbol on each transition is an abstract entity, abstraction techniques can be applied naturally. We apply abstract transducers as the foundation for sharing task artifacts for reuse in context of program analysis and verification, and describe task artifacts as abstract words. A task artifact is any entity that contributes to an analysis task and its solution, for example, candidate invariants or source code to weave.

READ FULL TEXT

page 15

page 16

page 17

page 19

page 20

page 23

page 28

page 30

research
12/28/2017

Abstract Interpretation using a Language of Symbolic Approximation

The traditional abstract domain framework for imperative programs suffer...
research
11/23/2016

Static Analysis of Communicating Processes using Symbolic Transducers

We present a general model allowing static analysis based on abstract in...
research
10/21/2017

Program Synthesis using Abstraction Refinement

We present a new approach to example-guided program synthesis based on c...
research
07/07/2020

A Myhill-Nerode Theorem for Register Automata and Symbolic Trace Languages

We propose a new symbolic trace semantics for register automata (extende...
research
09/29/2020

Computing and Proving Well-founded Orderings through Finite Abstractions

A common technique for checking properties of complex state machines is ...
research
07/23/2018

Simulation Algorithms for Symbolic Automata (Technical Report)

We investigate means of efficient computation of the simulation relation...
research
06/21/2021

Abstract Geometrical Computation 11: Slanted Firing Squad Synchronisation on Signal Machines

Firing Squad Synchronisation on Cellular Automata is the dynamical synch...

Please sign up or login with your details

Forgot password? Click here to reset