18,190 research outputs found
Learning automata with side-effects
Automata learning has been successfully applied in the verification of hardware and software. The size of the automaton model learned is a bottleneck for scalability, and hence optimizations that enable learning of compact representations are important. This paper exploits monads, both as a mathematical structure and a programming construct, to design and prove correct a wide class of such optimizations. Monads enable the development of a new learning algorithm and correctness proofs, building upon a general framework for automata learning based on category theory. The new algorithm is parametric on a monad, which provides a rich algebraic structure to capture non-determinism and other side-effects. We show that this allows us to uniformly capture existing algorithms, develop new ones, and add optimizations
Learning automata with side-effects
Automata learning has been successfully applied in the verification of hardware and software. The size of the automaton model learned is a bottleneck for scalability, and hence optimizations that enable learning of compact representations are important. This paper exploits monads, both as a mathematical structure and a programming construct, to design and prove correct a wide class of such optimizations. Monads enable the development of a new learning algorithm and correctness proofs, building upon a general framework for automata learning based on category theory. The new algorithm is parametric on a monad, which provides a rich algebraic structure to capture non-determinism and other side-effects. We show that this allows us to uniformly capture existing algorithms, develop new ones, and add optimizations
CALF: Categorical Automata Learning Framework
Automata learning is a popular technique used to automatically construct an automaton model from queries, and much research has gone into devising specific adaptations of such algorithms for different types of automata. This thesis presents a unifying approach to many existing algorithms using category theory, which eases correctness proofs and guides the design of new automata learning algorithms. We provide a categorical automata learning framework---CALF---that at its core includes an abstract version of the popular L* algorithm. Using this abstract algorithm we derive several concrete ones. We instantiate the framework to a large class of Set functors, by which we recover for the first time a tree automata learning algorithm from an abstract framework, which moreover is the first to cover also algebras of quotiented polynomial functors. We further develop a general algorithm to learn weighted automata over a semiring. On the one hand, we identify a class of semirings, principal ideal domains, for which this algorithm terminates and for which no learning algorithm previously existed; on the other hand, we show that it does not terminate over the natural numbers. Finally, we develop an algorithm to learn automata with side-effects determined by a monad and provide several optimisations, as well as an implementation with experimental evaluation. This allows us to improve existing algorithms and opens the door to learning a wide range of automata
Canonical Algebraic Generators in Automata Learning
Many methods for the verification of complex computer systems require the
existence of a tractable mathematical abstraction of the system, often in the
form of an automaton. In reality, however, such a model is hard to come up
with, in particular manually. Automata learning is a technique that can
automatically infer an automaton model from a system -- by observing its
behaviour. The majority of automata learning algorithms is based on the
so-called L* algorithm. The acceptor learned by L* has an important property:
it is canonical, in the sense that, it is, up to isomorphism, the unique
deterministic finite automaton of minimal size accepting a given regular
language. Establishing a similar result for other classes of acceptors, often
with side-effects, is of great practical importance. Non-deterministic finite
automata, for instance, can be exponentially more succinct than deterministic
ones, allowing verification to scale. Unfortunately, identifying a canonical
size-minimal non-deterministic acceptor of a given regular language is in
general not possible: it can happen that a regular language is accepted by two
non-isomorphic non-deterministic finite automata of minimal size. In
particular, it thus is unclear which one of the automata should be targeted by
a learning algorithm. In this thesis, we further explore the issue and identify
(sub-)classes of acceptors that admit canonical size-minimal representatives.Comment: PhD thesi
Canonical Algebraic Generators in Automata Learning
Many methods for the verification of complex computer systems require the existence of a tractable mathematical abstraction of the system, often in the form of an automaton. In reality, however, such a model is hard to come up with, in particular manually. Automata learning is a technique that can automatically infer an automaton model from a system -- by observing its behaviour. The majority of automata learning algorithms is based on the so-called L* algorithm. The acceptor learned by L* has an important property: it is canonical, in the sense that, it is, up to isomorphism, the unique deterministic finite automaton of minimal size accepting a given regular language. Establishing a similar result for other classes of acceptors, often with side-effects, is of great practical importance. Non-deterministic finite automata, for instance, can be exponentially more succinct than deterministic ones, allowing verification to scale. Unfortunately, identifying a canonical size-minimal non-deterministic acceptor of a given regular language is in general not possible: it can happen that a regular language is accepted by two non-isomorphic non-deterministic finite automata of minimal size. In particular, it thus is unclear which one of the automata should be targeted by a learning algorithm. In this thesis, we further explore the issue and identify (sub-)classes of acceptors that admit canonical size-minimal representatives.
In more detail, the contributions of this thesis are three-fold.
First, we expand the automata (learning) theory of Guarded Kleene Algebra with Tests (GKAT), an efficiently decidable logic expressive enough to model simple imperative programs. In particular, we present GL*, an algorithm that learns the unique size-minimal GKAT automaton for a given deterministic language, and prove that GL* is more efficient than an existing variation of L*. We implement both algorithms in OCaml, and compare them on example programs.
Second, we present a category-theoretical framework based on generators, bialgebras, and distributive laws, which identifies, for a wide class of automata with side-effects in a monad, canonical target models for automata learning. Apart from recovering examples from the literature, we discover a new canonical acceptor of regular languages, and present a unifying minimality result.
Finally, we show that the construction underlying our framework is an instance of a more general theory. First, we see that deriving a minimal bialgebra from a minimal coalgebra can be realized by applying a monad on a category of subobjects with respect to an epi-mono factorisation system. Second, we explore the abstract theory of generators and bases for algebras over a monad: we discuss bases for bialgebras, the product of bases, generalise the representation theory of linear maps, and compare our ideas to a coalgebra-based approach
Dynamic systems as tools for analysing human judgement
With the advent of computers in the experimental labs, dynamic systems have become a new tool for research on problem solving and decision making. A short review on this research is given and the main features of these systems (connectivity and dynamics) are illustrated. To allow systematic approaches to the influential variables in this area, two formal frameworks (linear structural equations and finite state automata) are presented. Besides the formal background, it is shown how the task demands of system identification and system control can be realized in these environments and how psychometrically acceptable dependent variables can be derived
Fashion, Cooperation, and Social Interactions
Fashion plays such a crucial rule in the evolution of culture and society
that it is regarded as a second nature to the human being. Also, its impact on
economy is quite nontrivial. On what is fashionable, interestingly, there are
two viewpoints that are both extremely widespread but almost opposite:
conformists think that what is popular is fashionable, while rebels believe
that being different is the essence. Fashion color is fashionable in the first
sense, and Lady Gaga in the second. We investigate a model where the population
consists of the afore-mentioned two groups of people that are located on social
networks (a spatial cellular automata network and small-world networks). This
model captures two fundamental kinds of social interactions (coordination and
anti-coordination) simultaneously, and also has its own interest to game
theory: it is a hybrid model of pure competition and pure cooperation. This is
true because when a conformist meets a rebel, they play the zero sum matching
pennies game, which is pure competition. When two conformists (rebels) meet,
they play the (anti-) coordination game, which is pure cooperation. Simulation
shows that simple social interactions greatly promote cooperation: in most
cases people can reach an extraordinarily high level of cooperation, through a
selfish, myopic, naive, and local interacting dynamic (the best response
dynamic). We find that degree of synchronization also plays a critical role,
but mostly on the negative side. Four indices, namely cooperation degree,
average satisfaction degree, equilibrium ratio and complete ratio, are defined
and applied to measure people's cooperation levels from various angles. Phase
transition, as well as emergence of many interesting geographic patterns in the
cellular automata network, is also observed.Comment: 21 pages, 12 figure
Formal Modeling of Connectionism using Concurrency Theory, an Approach Based on Automata and Model Checking
This paper illustrates a framework for applying formal methods techniques, which are symbolic in nature, to specifying and verifying neural networks, which are sub-symbolic in nature. The paper describes a communicating automata [Bowman & Gomez, 2006] model of neural networks. We also implement the model using timed automata [Alur & Dill, 1994] and then undertake a verification of these models using the model checker Uppaal [Pettersson, 2000] in order to evaluate the performance of learning algorithms. This paper also presents discussion of a number of broad issues concerning cognitive neuroscience and the debate as to whether symbolic processing or connectionism is a suitable representation of cognitive systems. Additionally, the issue of integrating symbolic techniques, such as formal methods, with complex neural networks is discussed. We then argue that symbolic verifications may give theoretically well-founded ways to evaluate and justify neural learning systems in the field of both theoretical research and real world applications
Coalgebra Learning via Duality
Automata learning is a popular technique for inferring minimal automata
through membership and equivalence queries. In this paper, we generalise
learning to the theory of coalgebras. The approach relies on the use of logical
formulas as tests, based on a dual adjunction between states and logical
theories. This allows us to learn, e.g., labelled transition systems, using
Hennessy-Milner logic. Our main contribution is an abstract learning algorithm,
together with a proof of correctness and termination
- …