669 research outputs found
Using Sat solvers for synchronization issues in partial deterministic automata
We approach the task of computing a carefully synchronizing word of minimum
length for a given partial deterministic automaton, encoding the problem as an
instance of SAT and invoking a SAT solver. Our experimental results demonstrate
that this approach gives satisfactory results for automata with up to 100
states even if very modest computational resources are used.Comment: 15 pages, 3 figure
Exact synchronization in partial deterministic automata
An automaton is a synchronizing if it has an input word that transfers it from any state to a particular state. There are two versions of synchronization in partial deterministic automata: Careful synchronization and exact synchronization. In this paper we focus on the exact version; we survey the complexity of testing exact synchronization and describe a SAT solver based algorithm for calculating the length of the shortest exact synchronizing word. © Published under licence by IOP Publishing Ltd
D2-SYNCHRONIZATION IN NONDETERMINISTIC AUTOMATA
We approach the problem of computing a D2-synchronizing word of minimum length for a given nondeterministic automaton via its encoding as an instance of SAT and invoking a SAT solver. In addition, we report some of the experimental results obtained when we had tested our method on randomly generated automata and certain benchmarks
Careful synchronization of partial deterministic finite automata
We approach the task of computing a carefully synchronizing word of minimum length for a given partial deterministic automaton, encoding the problem as an instance of SAT and invoking a SAT solver. Our experiments demonstrate that this approach gives satisfactory results for automata with up to 100 states even if very modest computational resources are used. We compare our results with the ones obtained by the first author for exact synchronization, which is another version of synchronization studied in the literature, and draw some theoretical conclusions. © 2022, The Author(s), under exclusive licence to Springer-Verlag GmbH Germany, part of Springer Nature.Ministry of Education and Science of the Russian Federation, Minobrnauka: FEUZ-2020-0016Supported by the Ministry of Science and Higher Education of the Russian Federation, project FEUZ-2020-0016
Fundamental Approaches to Software Engineering
This open access book constitutes the proceedings of the 23rd International Conference on Fundamental Approaches to Software Engineering, FASE 2020, which took place in Dublin, Ireland, in April 2020, and was held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2020. The 23 full papers, 1 tool paper and 6 testing competition papers presented in this volume were carefully reviewed and selected from 81 submissions. The papers cover topics such as requirements engineering, software architectures, specification, software quality, validation, verification of functional and non-functional properties, model-driven development and model transformation, software processes, security and software evolution
Abstract Learning Frameworks for Synthesis
We develop abstract learning frameworks (ALFs) for synthesis that embody the
principles of CEGIS (counter-example based inductive synthesis) strategies that
have become widely applicable in recent years. Our framework defines a general
abstract framework of iterative learning, based on a hypothesis space that
captures the synthesized objects, a sample space that forms the space on which
induction is performed, and a concept space that abstractly defines the
semantics of the learning process. We show that a variety of synthesis
algorithms in current literature can be embedded in this general framework.
While studying these embeddings, we also generalize some of the synthesis
problems these instances are of, resulting in new ways of looking at synthesis
problems using learning. We also investigate convergence issues for the general
framework, and exhibit three recipes for convergence in finite time. The first
two recipes generalize current techniques for convergence used by existing
synthesis engines. The third technique is a more involved technique of which we
know of no existing instantiation, and we instantiate it to concrete synthesis
problems
- …