4,332 research outputs found
Towards Practical Typechecking for Macro Tree Transducers
Macro tree transducers (mtt) are an important model that both covers many
useful XML transformations and allows decidable exact typechecking. This paper
reports our first step toward an implementation of mtt typechecker that has a
practical efficiency. Our approach is to represent an input type obtained from
a backward inference as an alternating tree automaton, in a style similar to
Tozawa's XSLT0 typechecking. In this approach, typechecking reduces to checking
emptiness of an alternating tree automaton. We propose several optimizations
(Cartesian factorization, state partitioning) on the backward inference process
in order to produce much smaller alternating tree automata than the naive
algorithm, and we present our efficient algorithm for checking emptiness of
alternating tree automata, where we exploit the explicit representation of
alternation for local optimizations. Our preliminary experiments confirm that
our algorithm has a practical performance that can typecheck simple
transformations with respect to the full XHTML in a reasonable time
Learn with SAT to Minimize B\"uchi Automata
We describe a minimization procedure for nondeterministic B\"uchi automata
(NBA). For an automaton A another automaton A_min with the minimal number of
states is learned with the help of a SAT-solver.
This is done by successively computing automata A' that approximate A in the
sense that they accept a given finite set of positive examples and reject a
given finite set of negative examples. In the course of the procedure these
example sets are successively increased. Thus, our method can be seen as an
instance of a generic learning algorithm based on a "minimally adequate
teacher" in the sense of Angluin.
We use a SAT solver to find an NBA for given sets of positive and negative
examples. We use complementation via construction of deterministic parity
automata to check candidates computed in this manner for equivalence with A.
Failure of equivalence yields new positive or negative examples. Our method
proved successful on complete samplings of small automata and of quite some
examples of bigger automata.
We successfully ran the minimization on over ten thousand automata with
mostly up to ten states, including the complements of all possible automata
with two states and alphabet size three and discuss results and runtimes;
single examples had over 100 states.Comment: In Proceedings GandALF 2012, arXiv:1210.202
A Fast Algorithm Finding the Shortest Reset Words
In this paper we present a new fast algorithm finding minimal reset words for
finite synchronizing automata. The problem is know to be computationally hard,
and our algorithm is exponential. Yet, it is faster than the algorithms used so
far and it works well in practice. The main idea is to use a bidirectional BFS
and radix (Patricia) tries to store and compare resulted subsets. We give both
theoretical and practical arguments showing that the branching factor is
reduced efficiently. As a practical test we perform an experimental study of
the length of the shortest reset word for random automata with states and 2
input letters. We follow Skvorsov and Tipikin, who have performed such a study
using a SAT solver and considering automata up to states. With our
algorithm we are able to consider much larger sample of automata with up to
states. In particular, we obtain a new more precise estimation of the
expected length of the shortest reset word .Comment: COCOON 2013. The final publication is available at
http://link.springer.com/chapter/10.1007%2F978-3-642-38768-5_1
Computing Aggregate Properties of Preimages for 2D Cellular Automata
Computing properties of the set of precursors of a given configuration is a
common problem underlying many important questions about cellular automata.
Unfortunately, such computations quickly become intractable in dimension
greater than one. This paper presents an algorithm --- incremental aggregation
--- that can compute aggregate properties of the set of precursors
exponentially faster than na{\"i}ve approaches. The incremental aggregation
algorithm is demonstrated on two problems from the two-dimensional binary Game
of Life cellular automaton: precursor count distributions and higher-order mean
field theory coefficients. In both cases, incremental aggregation allows us to
obtain new results that were previously beyond reach
A Model-Derivation Framework for Software Analysis
Model-based verification allows to express behavioral correctness conditions
like the validity of execution states, boundaries of variables or timing at a
high level of abstraction and affirm that they are satisfied by a software
system. However, this requires expressive models which are difficult and
cumbersome to create and maintain by hand. This paper presents a framework that
automatically derives behavioral models from real-sized Java programs. Our
framework builds on the EMF/ECore technology and provides a tool that creates
an initial model from Java bytecode, as well as a series of transformations
that simplify the model and eventually output a timed-automata model that can
be processed by a model checker such as UPPAAL. The framework has the following
properties: (1) consistency of models with software, (2) extensibility of the
model derivation process, (3) scalability and (4) expressiveness of models. We
report several case studies to validate how our framework satisfies these
properties.Comment: In Proceedings MARS 2017, arXiv:1703.0581
- …