All Classes and Interfaces
Class
Description
AbstractAAARLearner<L extends LearningAlgorithm<CM,CI,D> & SupportsGrowingAlphabet<CI>,AM,CM,AI,CI,D>
Base implementation of the learner presented in "Automata Learning with Automated Alphabet Abstraction Refinement" by
Howar et al.
AbstractAutomatonLStar<A,I,D,S,T,SP,TP,AI extends MutableDeterministic<S,I,T,SP,TP> & SupportsGrowingAlphabet<I>>
Abstract base class for algorithms that produce (subclasses of)
MutableDeterministic automata.An
EmptinessOracle that tries words in a breadth-first manner.An
InclusionOracle that generates words in a breadth-first manner.An
AutomatonOracle that processes words in a breadth-first manner.Class to test any
AbstractBFOracle.Note: this class has a natural ordering that is inconsistent with equals.
Abstract base class for Blue-Fringe-RPNI algorithms.
Abstract base class for a
SUL that step-wisely executes ContextExecutableInput symbols.Abstract integration test for DFA learning algorithms.
Abstract integration test for passive DFA learning algorithms.
An abstract super class for aggregating some information/functionality for discrimination trees.
An abstract super class (DAO) for aggregating some information stored in a node of a discrimination tree.
A batch processor that dynamically distributes queries to worker threads.
Builder class for a
AbstractDynamicBatchProcessor.AbstractExplicitAAARLearner<L extends LearningAlgorithm<CM,CI,D> & SupportsGrowingAlphabet<CI>,AM,CM,AI,CI,D>
An "explicit" refinement of the
AbstractAAARLearner.AbstractExtensibleAutomatonLStar<A,I,D,S,T,SP,TP,AI extends MutableDeterministic<S,I,T,SP,TP> & SupportsGrowingAlphabet<I>>
AbstractGenericAAARLearner<L extends LearningAlgorithm<CM,CI,D> & SupportsGrowingAlphabet<CI>,AM,CM,AI,CI,D>
A "generic" refinement of the
AbstractAAARLearner.AbstractGrowingAlphabetDFATest<L extends SupportsGrowingAlphabet<Character> & LearningAlgorithm<DFA<?,Character>,Character,Boolean>>
AbstractGrowingAlphabetMealyTest<L extends SupportsGrowingAlphabet<Character> & LearningAlgorithm<MealyMachine<?,Character,?,Character>,Character,Word<Character>>>
AbstractGrowingAlphabetMooreTest<L extends SupportsGrowingAlphabet<Character> & LearningAlgorithm<MooreMachine<?,Character,?,Character>,Character,Word<Character>>>
AbstractGrowingAlphabetTest<L extends SupportsGrowingAlphabet<I> & LearningAlgorithm<M,I,D>,M extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>,OR,I,D>
Simple (abstract super) test class that checks the basic workflow of a learning algorithm that implements
SupportsGrowingAlphabet.Abstract hypothesis transition.
A utility class to connect
AbstractBasicLinkedListEntrys with IntrusiveListEntrys.An interface for mapping concrete symbols to their abstraction, and abstractions to their representatives,
respectively.
AbstractLearnerASTDFATest<L extends AccessSequenceTransformer<Character> & LearningAlgorithm<DFA<?,Character>,Character,Boolean>>
AbstractLearnerASTMealyTest<L extends AccessSequenceTransformer<Character> & LearningAlgorithm<MealyMachine<?,Character,?,Character>,Character,Word<Character>>>
AbstractLearnerASTMooreTest<L extends AccessSequenceTransformer<Character> & LearningAlgorithm<MooreMachine<?,Character,?,Character>,Character,Word<Character>>>
AbstractLearnerASTTest<L extends AccessSequenceTransformer<I> & LearningAlgorithm<M,I,D>,M extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & SuffixOutput<I,D>,OR,I,D>
Test class that checks whether a learning algorithm which implements the
AccessSequenceTransformer interface
returns the correct representatives.An abstract base class for L*-style algorithms.
Abstract integration test for Mealy machine learning algorithms.
Abstract integration test for passive Mealy machine learning algorithms.
Abstract integration test for Mealy machine learning algorithms.
Abstract integration test for Moore machine learning algorithms.
Abstract integration test for passive Moore machine learning algorithms.
Abstract integration test for Moore machine learning algorithms.
An abstract counterexample analyzer that carries a name.
Abstract integration test for
OneSEVPA learning algorithms.Base implementation of the "Observation Pack" learning algorithm.
A symbol filter that answers all queries correctly.
A symbol filter that falsely answers a query with a specified probability.
AbstractResumableLearnerDFATest<L extends Resumable<T> & LearningAlgorithm<DFA<?,Character>,Character,Boolean>,T>
AbstractResumableLearnerMealyTest<L extends Resumable<T> & LearningAlgorithm<MealyMachine<?,Character,?,Character>,Character,Word<Character>>,T>
AbstractResumableLearnerMooreTest<L extends Resumable<T> & LearningAlgorithm<MooreMachine<?,Character,?,Character>,Character,Word<Character>>,T>
AbstractResumableLearnerTest<L extends Resumable<T> & LearningAlgorithm<M,I,D>,M extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>,OR,I,D,T>
Test class that checks the workflow of a learning algorithm that implements
Resumable.Abstract integration test for
SBA learning algorithms.Abstract integration test for
SPA learning algorithms.Abstract integration test for
SPMM learning algorithms.Abstract integration test for passive
SubsequentialTransducers learning algorithms.A batch processor that statically distributes a set of queries among several threads.
A builder for a
AbstractStaticBatchProcessor.Collects various statistics on symbol filtering, including false accepts + false ignores.
An omega membership oracle for an
ObservableSUL.AbstractTemporaryIntrusiveDTNode<DSCR,O,D,T,N extends AbstractTemporaryIntrusiveDTNode<DSCR,O,D,T,N>>
An extension of the
AbstractDTNode that adds the concept of temporary splitters as well as linking
discrimination tree nodes outside their regular tree structure.An abstract equivalence oracle that takes care of query batching and hypothesis checking and allows extending classes
to solely focus on test word generation by implementing
TestWordGenerator.generateTestWords(Object, Collection)}.A utility class that requires extending classes to answer the filter question truthfully.
Hypothesis DFA for the
TTT algorithm.The TTT learning algorithm for generic automata.
Data structure for representing a splitter.
Convenient class for word-based discrimination trees that already binds certain generics.
Convenient class for word-based discrimination tree nodes that already binds certain generics.
A pass-through filter that accepts all inputs.
Common interface for objects that have an access sequence associated with them (e.g., states and transitions of a
hypotheses).
This is a utility class, acting as a container for several
AbstractNamedAcexAnalyzers.Wraps a
AbstractNamedAcexAnalyzer.Utility class to answer regular
queries with an AdaptiveMembershipOracle.An adaptive variation of the
MembershipOracle that is tailored towards answering
adaptive queries.An adaptive query is a variation of the (regular)
Query that allows one to dynamically select the symbols to
query based on responses to previous symbols.The different types of responses when processing outputs from the system under learning.
A cache for an
AdaptiveMembershipOracle.The adaptive discrimination tree class.
Interface for configuration objects that specify how to finalize the temporary splitter given by regular
counterexample decomposition.
A collection of default
ADTExtender configurations.Hypothesis model.
Leaf node implementation.
The main learning algorithm.
A builder for constructing
ADTLearner instances.Utility class that captures all essential state of a
ADTLearner run.The ADT equivalent of
ADSNode.Utility enum to distinguish the 3 possible types of ADT nodes.
Reset node implementation.
Hypothesis state model.
Symbol node implementation.
Hypothesis transition model.
Utility class, that offers some operations revolving around adaptive distinguishing sequences.
A manager of access sequences and terminating sequences of
SBAs during the learning process.A manager of access sequences and terminating sequences of
SPMMs during the learning process.A manager of access sequences, terminating sequences, and return sequences of
SPAs during the learning
process.Class that contains all data that represent the internal state of the
AbstractAutomatonLStar learner and its
DFA and Mealy implementations.Finds counterexamples (to particular claims) to a hypothesis, while generating words that are in the given
hypothesis.
A
PropertyOracle that uses InclusionOracles and EmptinessOracles to evaluate potential
counterexamples produced by a given ModelChecker.Base class for prefix tree acceptors.
The discrimination tree data structure.
Exception that is thrown if a parallel batch is interrupted during processing.
A markup interface for classes that can process a batch of work in a parallel environment (e.g. a
MembershipOracle when used by a ParallelOracle).Binary discrimination tree node specialization.
Binary discrimination tree specialization.
Decides whether some words that do not satisfy properties evaluated by
BlackBoxOracle.getPropertyOracles() on a given
hypothesis, are included in a language.A state-merging learning algorithm based on the evidence principle.
A state-merging learning algorithm based on the minimal description length principle.
A Blue Fringe version of RPNI for learning DFAs.
Blue-fringe version of RPNI for inferring Mealy machines.
Blue-fringe version of RPNI for inferring Moore machines.
Primitive implementation for boolean maps.
A generic deque-derived container which transparently acts either as a stack or a queue, and optionally
a capacity restriction with a configurable policy which element is evicted (or reject) if the maximum capacity is
reached.
The policy which determines in which order elements are accessed.
The policy which determines in which order elements are removed if the maximum capacity is reached.
Default values for
ReuseTreeBuilder and ReuseOracleBuilder.Wrapper for a symbol filter that caches previous responses and allows caller to update these.
A set of markers that allow one to categorize logging output.
Outcome of a counterexample analysis.
The strategy of this black-box oracle is to first try out a property, to see if it can be disproved.
Implementation of the L* algorithm by Dana Angluin.
A builder for constructing
ClassicLStarDFA instances.An implementation of the L*Mealy algorithm for inferring Mealy machines, as described by Oliver Niese in his Ph.D.
A builder for constructing
ClassicLStarMealy instances.A
MooreMachine-based specialization of the classic L* learner.A builder for constructing
ClassicLStarMoore instances.An abstract counterexample based on prefix transformations.
An oracle that delegates its queries to an external program via the command-line interface.
An oracle that delegates its queries to an external program via the command-line interface.
An oracle that delegates its queries to an external program via the command-line interface.
Transformer for converting the
String-based output of a CLI application to a custom-typed output.Collection of predefined observation table closing strategies.
A closing strategy, determining how to proceed when an observation table needs to be closed.
Indicates the coloring of states of the prefix-tree acceptor during merging.
Implements an equivalence check by complete exploration up to a given depth, i.e., by testing all possible sequences
of a certain length within a specified range.
A context executable input is an input that performs a specific action on a
SUL itself, given a specific
execution context.A
SUL that executes ContextExecutableInput symbols.Facility for creating and disposing of contexts on which
ContextExecutableInputs operate.A context pair of prefix and suffix to discriminate a hypothesis state.
Wrapper for a
EquivalenceOracle that gathers various statistics on queries sent to this oracle.Wrapper for a
ObservableSUL that gathers various statistics on queries sent to this SUL.A
MembershipOracle that counts both the number of queries and the total number of symbols occurring in all
those queries.Wrapper for a
StateLocalInputSUL that gathers various statistics on queries sent to this SUL.Wrapper for a
SUL that gathers various statistics on queries sent to this SUL.Wrapper for a
TimedSUL that gathers various statistics on queries sent to this SUL.A default
ATManager that only extracts initial access sequences and terminating sequences from positive
counterexamples.A default
ATManager that only extracts initial access sequences and terminating sequences from positive
counterexamples.A default
ATRManager that only extracts initial access sequences, terminating sequences, and return sequences
from positive counterexamples.A
learning example that directly stores the alphabet and the reference automaton in its
fields.Default implementation for a passive learning example.
Standard processing orders that can be used for the RPNI algorithm.
A query is a container for tests a learning algorithms performs, containing the actual test and the corresponding
result.
A variant of the backtracking ADS search (see
ADS, BacktrackingSearch), that works on partially
defined automata.A type-specific refinement of
AbstractBFEmptinessOracle.A type-specific refinement of
AbstractBFInclusionOracle.DFA cache.
A factory for creating caches for
DFA-based MembershipOracles.A type-specific refinement of
CExFirstOracle.A type-specific refinement of
CompleteExplorationEQOracle.A type-specific refinement of
CounterOracle.A type-specific refinement of
DisproveFirstOracle.A type-specific refinement of
EQOracleChain.A type-specific refinement of
Experiment.A type-specific refinement of
BasePropertyOracle.A
LearningCacheOracle.DFALearningCacheOracle that uses a Map for internal cache organization.A type-specific refinement of
IncrementalWMethodEQOracle.A type-specific refinement of
LassoEmptinessOracleImpl.A type-specific refinement of
BasePropertyOracle.A type-specific refinement of
LockableOracle.A type-specific refinement of
LoggingPropertyOracle.A type-specific refinement of
PropertyOracleChain.A type-specific refinement of
RandomWMethodEQOracle.A type-specific refinement of
RandomWordsEQOracle.A type-specific refinement of
RandomWpMethodEQOracle.A type-specific refinement of
RefinementCounterLearner.A type-specific refinement of
SimulatorEQOracle.A type-specific refinement of
SimulatorOracle.A type-specific refinement of
WMethodEQOracle.A type-specific refinement of
WpMethodEQOracle.Factory methods for several kinds of discrimination tree node iterators.
The strategy of this black-box oracle is to first try to disprove all properties before finding a counter example to
the given hypothesis.
Specific discrimination tree node implementation.
Specific discrimination tree implementation.
A specialized
AbstractDynamicBatchProcessor for AdaptiveMembershipOracles that implements
ParallelAdaptiveOracle.A specialized
AbstractDynamicBatchProcessorBuilder for AdaptiveMembershipOracles.A specialized
AbstractDynamicBatchProcessor for OmegaMembershipOracles that implements ParallelOmegaOracle.A specialized
AbstractDynamicBatchProcessorBuilder for OmegaMembershipOracles.A specialized
AbstractDynamicBatchProcessorBuilder for MembershipOracles.A specialized
AbstractDynamicBatchProcessor for TimedQueryOracles that implements
ParallelTimedQueryOracle.A specialized
AbstractDynamicBatchProcessorBuilder for TimedQueryOracles.This
EquivalenceOracle.MealyEquivalenceOracle evaluates test words generated by the given TestWordGenerator on a
symbol-by-symbol basis (via the provided AdaptiveMembershipOracle) and returns a counterexample on the first
observed mismatch.Decides whether the intersection of the language of a given hypothesis and some other language (e.g., from a
SUL) is empty.An equivalence oracle, which checks hypothesis automata against the (possibly unknown) system under learning (SUL).
A specialization of the
EquivalenceOracle interface for a DFA learning scenario.A specialization of the
EquivalenceOracle interface for a Mealy learning scenario.A specialization of the
EquivalenceOracle interface for an MMLT learning scenario.A specialization of the
EquivalenceOracle interface for a Moore learning scenario.A wrapper for representing an exception-based method output via its
Class.getSimpleName().This class provides the example used in the paper ''Learning Regular Sets from Queries and Counterexamples'' by Dana
Angluin that consists of an automaton that accepts ''all strings over {0,1} with an even number of 0's and an even
number of 1's''.
This example represents the Coffee Machine example from Steffen et al.
This class generates a Mealy machine consisting of a two-dimensional grid of states.
This class implements a sad love story - DFA style.
This class provides the example used in the paper ''Inferring Mealy Machines'' by Muzammil Shahbaz and Roland Groz
(see Figure 1).
This example encodes a small stack with a capacity of three elements and "push" and "pop" operations as Mealy
machine.
Tiny DFA with language (ab)*.
Tiny machine with the language (a1a2)^*.
An executable input is an input that performs a specific action on a
SUL itself.A
SUL that executes ExecutableInput symbols.Runs a learning experiment.
ExplicitAAARLearnerDFA<L extends LearningAlgorithm.DFALearner<CI> & SupportsGrowingAlphabet<CI>,AI,CI>
A
DFA-specific refinement of AbstractExplicitAAARLearner.ExplicitAAARLearnerMealy<L extends LearningAlgorithm.MealyLearner<CI,O> & SupportsGrowingAlphabet<CI>,AI,CI,O>
A
MealyMachine-specific refinement of AbstractExplicitAAARLearner.ExplicitAAARLearnerMoore<L extends LearningAlgorithm.MooreLearner<CI,O> & SupportsGrowingAlphabet<CI>,AI,CI,O>
A
LearningAlgorithm.MooreLearner-specific refinement of AbstractExplicitAAARLearner.This interface denotes an
Abstraction that additionally provides an initial classification of abstract input
symbols.An implementation of Angluin's L* algorithm for learning DFAs, as described in the paper "Learning Regular Sets from
Queries and Counterexamples".
A builder for constructing
ExtensibleLStarDFA instances.A
MealyMachine-based specialization of the extensible L* learner.A builder for constructing
ExtensibleLStarMealy instances.An L*-based leaner for inferring
MMLTs.A builder for constructing
ExtensibleLStarMMLT instances.A
MooreMachine-based specialization of the extensible L* learner.A builder for constructing
ExtensibleLStarMoore instances.A class that describes the possible result an
ADTExtender can return.The specified symbol is considered to be falsely ignored by the symbol filter.
Describes the possible responses of a
SymbolFilter.GenericAAARLearnerDFA<L extends LearningAlgorithm.DFALearner<CI> & SupportsGrowingAlphabet<CI>,AI,CI>
A
DFA-specific refinement of AbstractGenericAAARLearner.GenericAAARLearnerMealy<L extends LearningAlgorithm.MealyLearner<CI,O> & SupportsGrowingAlphabet<CI>,AI,CI,O>
A
MealyMachine-specific refinement of AbstractGenericAAARLearner.GenericAAARLearnerMoore<L extends LearningAlgorithm.MooreLearner<CI,O> & SupportsGrowingAlphabet<CI>,AI,CI,O>
A
MooreMachine-specific refinement of AbstractGenericAAARLearner.Observation table class.
Interface for a global suffix finder.
A collection of suffix-based global counterexample analyzers.
Common interface for learning algorithms that use a global suffix set.
Internal transition.
Hypothesis location.
Exception to indicate structural changes of the hypothesis during counterexample analysis, thus possibly invalidating
the counterexample.
Return transition.
A pass-through filter that ignores all inputs.
Decides whether the language of a given hypothesis is included in some other language (e.g., from a
SUL).An (RFSA) inconsistency in an
ObservationTable.A description of an inconsistency in an
GenericObservationTable.IncrementalWMethodEQOracle<A extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>,I,D>
A type-specific refinement of
InterningMembershipOracle.A
MembershipOracle that interns query outputs.A type-specific refinement of
InterningMembershipOracle.A list that stores elements which directly expose information about their predecessor and successor elements.
A
LinkedListEntry refinement specialized for the use in IntrusiveLists.The Kearns/Vazirani algorithm for learning DFA, as described in the book "An Introduction to Computational Learning
Theory" by Michael Kearns and Umesh Vazirani.
A builder for constructing
KearnsVaziraniDFA instances.Class that contains all data that represent the internal state of the
KearnsVaziraniDFA learner.An adaption of the Kearns/Vazirani algorithm for Mealy machines.
A builder for constructing
KearnsVaziraniMealy instances.Class that contains all data that represent the internal state of the
KearnsVaziraniMealy learner.An
EquivalenceOracle based on the concepts of mutation testing as described in the paper Learning from Faults: Mutation Testing in Active Automata
Learning by Bernhard K.KWayStateCoverEQOracleBuilder<A extends DeterministicAutomaton.RegularAutomaton<?,I,?> & Output<I,D>,I,D>
A builder for constructing
KWayStateCoverEQOracle instances.KWayTransitionCoverEQOracle<A extends DeterministicAutomaton.RegularAutomaton<?,I,?> & Output<I,D>,I,D>
An
EquivalenceOracle based on the concepts of mutation testing as described in the paper Learning from Faults: Mutation Testing in Active Automata
Learning by Bernhard K.KWayTransitionCoverEQOracleBuilder<A extends DeterministicAutomaton.RegularAutomaton<?,I,?> & Output<I,D>,I,D>
A builder for constructing
KWayTransitionCoverEQOracle instances.An emptiness oracle for lassos.
An automaton oracle for lassos.
DAO for aggregating information about the least common ancestor of two subtrees in a discrimination tree.
Interface for configuration objects that specify how to split the ADT leaf of a hypothesis state that needs
refinement.
A collection of default
LeafSplitter configurations.A simplified view on the constructor of a learning algorithm that only requires an
Alphabet definition and a
MembershipOracle.Utility class for integration tests for a learning algorithm (or "learner").
A utility interface for managing the learner state as required by the
LearningAlgorithm contract.A write-only list to store multiple variants of a learning algorithm.
Basic interface for a model inference algorithm.
Interface for a cache used in automata learning.
Specialization of the
LearningCache interface for DFA learning.Specialization of the
LearningCache interface for Mealy machine learning.Specialization of the
LearningCache interface for MMLT learning.Specialization of the
LearningCache interface for Moore machine learning.A
learning cache that also serves as a membership oracle.Specialization of the
LearningCacheOracle interface for DFA learning.Specialization of the
LearningCacheOracle interface for Mealy machine learning.Specialization of the
LearningCacheOracle interface for MMLT learning.Specialization of the
LearningCacheOracle interface for Moore machine learning.A
LearningExample refinement for StateLocalInputMealyMachine.An enum of all the system properties currently used by LearnLib.
Suffix-based local counterexample analyzer.
A collection of suffix-based local counterexample analyzers.
Stores information about local timers of a location.
A lockable oracle is a
MembershipOracle whose actions can be blocked by setting its lock.A PropertyOracle that performs logging.
Implementation of the L# algorithm for
MealyMachines.A builder for constructing
LSharpMealy instances.A
DFA-based specialization of the L* learner which uses the counterexample analysis strategy proposed by
Maler & Pnueli.A builder for constructing
MalerPnueliDFA instances.A
MealyMachine-based specialization of the L* learner which uses the counterexample analysis strategy
proposed by Maler & Pnueli.A builder for constructing
MalerPnueliMealy instances.A
MooreMachine-based specialization of the L* learner which uses the counterexample analysis strategy
proposed by Maler & Pnueli.A builder for constructing
MalerPnueliMoore instances.A mapped exception allows one to gracefully handle exceptions thrown, e.g., during a
SUL's step method by providing information about the output symbol that should be emitted
instead and subsequent outputs.A utility class that allows to lift a membership oracle of concrete input/output symbols to a membership oracle of
abstract input/output symbols, given a corresponding mapper.
A mapper that lifts a
SUL or MembershipOracle from an "abstract" to a "concrete" level.A mapper refinement to establish the contract of an asynchronous, query-wise translation of input words.
A mapper refinement to establish the contract of a synchronized, symbol-wise translation of input words for
reactive systems.
Utility methods for manipulating mappers.
A
StatisticsService that stores all statistics in a Map.A type-specific refinement of
AbstractBFEmptinessOracle.A type-specific refinement of
AbstractBFInclusionOracle.An
EquivalenceOracle that tests a hypothesis for consistency with the contents of a MealyCacheOracle.Mealy cache.
A factory for creating caches for mealy-based
MembershipOracles.A type-specific refinement of
CExFirstOracle.A type-specific refinement of
CompleteExplorationEQOracle.A type-specific refinement of
CounterOracle.The DHC learner.
A builder for constructing
MealyDHC instances.Class that contains all data that represent the internal state of the
MealyDHC learner.A type-specific refinement of
DisproveFirstOracle.A type-specific refinement of
EQOracleChain.A type-specific refinement of
Experiment.A type-specific refinement of
BasePropertyOracle.A type-specific refinement of
IncrementalWMethodEQOracle.A type-specific refinement of
LassoEmptinessOracleImpl.A type-specific refinement of
BasePropertyOracle.A type-specific refinement of
LockableOracle.A type-specific refinement of
LoggingPropertyOracle.A type-specific refinement of
PropertyOracleChain.A type-specific refinement of
RandomWMethodEQOracle.A type-specific refinement of
RandomWordsEQOracle.A type-specific refinement of
RandomWpMethodEQOracle.A type-specific refinement of
RefinementCounterLearner.A type-specific refinement of
SimulatorEQOracle.A type-specific refinement of
SimulatorOracle.A
SUL that implements steps by stepping through a MealyMachine.Utility class helping to unify various approaches to actively learning Mealy machines.
A type-specific refinement of
WMethodEQOracle.A type-specific refinement of
WpMethodEQOracle.Membership oracle interface.
A specialization of the
MembershipOracle that binds the output domain to Booleans.A specialization of the
MembershipOracle that binds the output domain to Words of the specified
output type.A specialization of the
MembershipOracle that binds the output domain to Words of the specified
output type.An input symbol that represents a call to a method with a specific set of parameters.
Abstract output of a method.
The target at the identified transition is incorrect due to a missing discriminator.
The provided timer should become one-shot.
There should be a local reset at the specified transition.
Searches for counterexamples by comparing the behavior of the hypothesis and the query cache.
Processes a truncated counterexample for a hypothesis
MMLT by searching for an extended decomposition,
post-processing it, and inferring an inaccuracy from it.A type-specific refinement of
EQOracleChain.A collection of
MMLT-based learning examples.The hypothesis model is a regular
MMLT that includes an additional prefix mapping.An abstract counterexample used by the
ExtensibleLStarMMLT learner.A type-specific refinement of
LockableOracle.Model-specific parameters for MMLT-based learners.
Represents an output inconsistency used by the
ExtensibleLStarMMLT learner.A symbol filter for
MMLTs that correctly accepts and ignores all transitions that silently self-loop.A symbol filter that falsely answers a query with a specified probability.
Simulates the semantics of an
MMLT.A symbol filter that logs statistics about false accepts and false ignores.
An
EquivalenceOracle that tests a hypothesis for consistency with the contents of a
MooreCacheOracle.Moore cache.
A factory for creating caches for Moore-based
MembershipOracles.A type-specific refinement of
CompleteExplorationEQOracle.A type-specific refinement of
CounterOracle.A type-specific refinement of
EQOracleChain.A type-specific refinement of
Experiment.A type-specific refinement of
IncrementalWMethodEQOracle.A type-specific refinement of
LockableOracle.A type-specific refinement of
RandomWMethodEQOracle.A type-specific refinement of
RandomWordsEQOracle.A type-specific refinement of
RandomWpMethodEQOracle.A type-specific refinement of
RefinementCounterLearner.A type-specific refinement of
SimulatorEQOracle.A type-specific refinement of
SimulatorOracle.Utility class helping to unify various approaches to actively learning Moore machines.
A type-specific refinement of
WMethodEQOracle.A type-specific refinement of
WpMethodEQOracle.Utility class that wraps a given
MembershipOracle into an AdaptiveMembershipOracle by translating
each step of an AdaptiveQuery into a separate DefaultQuery.Generic n-ary discrimination tree node specialization.
Generic n-ary discrimination tree specialization.
A type-specific refinement of
SimulatorOracle.The NL* learner.
A builder for constructing
NLStarLearner instances.A System Under Learning (SUL) where at any point in time the internal state can be observed.
The observation table implementation for the
NL* algorithm.An observation table is a common method for learning algorithms to store organize their observations.
Writes an observation table as an HTML table.
Reads an
ObservationTable from a string source.A class, that stores observations of the system under learning in a tree-like structure.
Answers
OmegaQuerys, similar to a MembershipOracle.A query that represents information about infinite words in an ultimately periodic pattern.
Answers
OmegaQuerys.Hypothesis model.
A
DFA-based specialization of the AbstractOPLearner.A builder for constructing
OPLearnerDFA instances.Basic hypothesis data structure for Discrimination Tree learning algorithms.
A
MealyMachine-based specialization of the AbstractOPLearner.A builder for constructing
OPLearnerMealy instances.A
MooreMachine-based specialization of the AbstractOPLearner.A builder for constructing
OPLearnerMoore instances.Class that contains all data that represent the internal state of the
OPLearnerState learner and its DFA and
Mealy implementations.A
SEVPA-based adoption of the "observation pack" algorithm.A builder for constructing
OPLearnerVPA instances.An optimizing
ATManager that continuously scans positive counterexamples and procedural models in order to
find shorter access sequences and terminating sequences.An optimizing
ATManager that continuously scans positive counterexamples and procedural models in order to
find shorter access sequences and terminating sequences.An optimizing
ATRManager that continuously scans positive counterexamples and procedural models in order to
find shorter access sequences, terminating sequences, and return sequences.The OSTIA learning algorithm.
An abstract counterexample for output inconsistencies, based on prefix transformations.
Class for representing output inconsistencies within the TTT algorithm.
ParallelOracle equivalent for AdaptiveMembershipOracles.ParallelOracle equivalent for OmegaMembershipOracles.Basic interface for
MembershipOracles that can process queries in parallel.Builders for (static and dynamic) parallel oracles.
ParallelOracle equivalent for TimedQueryOracles.During the refinement process of the hypothesis, ADS/Ts may be computed on partially defined automata.
A helper exception to interrupt computations on an invalid hypothesis.
Default test case for a passive learning integration test.
Basic interface for passive learning algorithms that infer
DFAs.Basic interface for passive learning algorithms that infer
Mealy machines.Basic interface for passive learning algorithms that infer
Moore machines.Wraps a given (non-empty)
Query as an AdaptiveQuery so that it can be answered by an
AdaptiveMembershipOracle.Interface for entities that specify the order in which blue states are processed (i.e., considered for merges).
A
PropertyOracle can disprove a property, and used to find a counter example to a hypothesis.A chain of property oracles.
A query is the basic form of interaction between a
learner and a
(membership) oracle, or teacher.A simple interface for answering
Word-based queries.Performs a random walk over the hypothesis.
An equivalence oracle based on the generation of random (well-matched) words.
RandomWMethodEQOracle<A extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>,I,D>
Implements an equivalence test based on a randomized version of the W-method as described in Complementing Model Learning with Mutation-Based Fuzzing by Rick
Smetsers, Joshua Moerman, Mark Janssen, Sicco Verwer.
Implements the partial W-method for
MMLT learning.RandomWpMethodEQOracle<A extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>,I,D>
Implements an equivalence test based on a randomized version of the W(p)-method as described in Complementing Model Learning with Mutation-Based Fuzzing by Rick
Smetsers, Joshua Moerman, Mark Janssen, Sicco Verwer.
Counts the number of hypothesis refinements.
An extension of a
SymbolFilter that allows one to override the query behavior.A class that describes the possible result a
SubtreeReplacer can return.Searches for counterexamples that reveal local resets.
Data structures that implement this interface can be "suspended" by means of exposing a state object that contains
all data that is necessary to resume from this state at a later point in time.
Utility functions for
Resumable features.A (non-empty) output of a method call.
Required interface for the
ReuseOracle.This exception will be thrown whenever some nondeterministic behavior in the reuse tree is detected when inserting
new queries.
The reuse oracle is a
MembershipOracle.MealyMembershipOracle that is able to Cache queries: Each processed query will
not be delegated again (instead the answer will be retrieved from the ReuseTree) Pump queries: If
the ReuseTree is configured to know which symbols are model invariant input symbols via ReuseOracleBuilder.withInvariantInputs(Set) (like a read from a database which does not change the SUL) or
configured for failure output symbols via ReuseOracleBuilder.withFailureOutputs(Set) (e.g. a roll back
mechanism exists for the invoked symbol) the oracle could ''pump'' those symbols inside a query once seen.
Reuse system states: There are a lot of situations where a prefix of a query is already known and a system state
is available.A builder for constructing
ReuseOracle instances.The
ReuseTree is a tree like structure consisting of nodes (see ReuseNode) and edges (see ReuseEdge) that is used by the ReuseOracle: Nodes may contain a system state (see ReuseNode.fetchSystemState(boolean)) that could be used for executing suffixes of membership queries.A builder for constructing
ReuseTree instances.A
DFA-based specialization of the L* learner which uses the counterexample analysis strategy proposed by
Rivest & Schapire.A builder for constructing
RivestSchapireDFA instances.A
MealyMachine-based specialization of the L* learner which uses the counterexample analysis strategy
proposed by Rivest & Schapire.A builder for constructing
RivestSchapireMealy instances.A
MooreMachine-based specialization of the L* learner which uses the counterexample analysis strategy
proposed by Rivest & Schapire.A builder for constructing
RivestSchapireMoore instances.A single row in the
ObservationTable for NL*.A row in an observation table.
An equivalence oracle that tests a hypothesis against a fixed set of sample queries.
SBALearner<I,L extends LearningAlgorithm.DFALearner<SymbolWrapper<I>> & SupportsGrowingAlphabet<SymbolWrapper<I>> & AccessSequenceTransformer<SymbolWrapper<I>>>
A learning algorithm for
SBAs.A type-specific refinement of
LockableOracle.A
PropertyOracle for verifying properties on SBAs.A type-specific refinement of
SimulatorOracle.A type-specific refinement of
LockableOracle.A type-specific refinement of
SimulatorOracle.This class represents the data structure of an
ObservationTable without providing any meaningful
functionality.A mapper that wraps any kind of
RuntimeException that occurs during
steps of the SimplePOJOTestDriver into a
MappedException whose output is an Error object, followed by repeated Unobserved outputs.A test driver for plain old java objects.
A simulator oracle for
MMLTs.SimulatorEQOracle<A extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>,I,D>
An equivalence oracle based on the computation of a separating word for a given hypothesis and a previously known
target system.
Answers
OmegaQuerys by simulating an automaton.A membership oracle backed by an automaton.
An
AdaptiveMembershipOracle that answers single queries.An
OmegaMembershipOracle that answers single queries.Base interface for oracles whose semantic is defined in terms of directly answering single queries (like a
QueryAnswerer), and that cannot profit from batch processing of queries.SPALearner<I,L extends LearningAlgorithm.DFALearner<I> & SupportsGrowingAlphabet<I> & AccessSequenceTransformer<I>>
A learning algorithm for
SPAs.A type-specific refinement of
LockableOracle.Optimized implementation of the Ls learning algorithm, as described in the paper
Learning Mealy Machines with Sparse Observation Tables
by Wolffhardt Schwabe, Paul Kogel, and Sabine Glesner.
A type-specific refinement of
SimulatorOracle.Data associated with a discrimination tree node while an enclosing subtree is being split.
Data structure for representing a splitter.
SPMMLearner<I,O,L extends LearningAlgorithm.MealyLearner<SymbolWrapper<I>,O> & SupportsGrowingAlphabet<SymbolWrapper<I>> & AccessSequenceTransformer<SymbolWrapper<I>>>
A learning algorithm for
SPMMs.A type-specific refinement of
LockableOracle.A type-specific refinement of
SimulatorOracle.The information associated with a state: it's access sequence (or access string), and the list of incoming
transitions.
A System Under Learning (SUL) which can additionally report the inputs that the SUL can process in its current state,
i.e. inputs that will not trigger a
SULException when used in the next invocation of the SUL.step(Object) method return an otherwise "undefined" behavior.A
AdaptiveMembershipOracle wrapper for StateLocalInputSULs.A wrapper around a system under learning (SUL) with state local inputs.
A specialized
AbstractStaticBatchProcessor for AdaptiveMembershipOracles that implements
ParallelAdaptiveOracle.A specialized
AbstractStaticBatchProcessorBuilder for AdaptiveMembershipOracles.A specialized
AbstractStaticBatchProcessor for OmegaMembershipOracles that implements ParallelOmegaOracle.A specialized
AbstractStaticBatchProcessorBuilder for OmegaMembershipOracles.A specialized
AbstractStaticBatchProcessorBuilder for MembershipOracles.A specialized
AbstractStaticBatchProcessor for TimedQueryOracles that implements
ParallelTimedQueryOracle.A specialized
AbstractStaticBatchProcessorBuilder for TimedQueryOracles.Factory for obtaining
StatisticsServices.A key to be used when interacting with
StatisticsServices.A statistics provider is a means to register different implementations of
StatisticsServices via
service loading.A service that allows for collecting various statistics of different types.
An oracle that delegates its queries to an external program via the command-line interface.
An oracle that delegates its queries to an external program via the command-line interface.
An oracle that delegates its queries to an external program via the command-line interface.
Transformer for converting the
String-based output of a CLI application to a custom-typed output.Interface for configuration objects that specify how nodes of the current ADT should be replaced.
A collection of default
SubtreeReplacer configurations.A de.learnlib.datastructures.writer which stores the suffixes of an
ObservationTable in plaintext.Interface for a system under learning (SUL) that can make single steps.
A wrapper that allows to use a
SUL where a AdaptiveMembershipOracle is expected.A cache to be used with a
SUL.A factory for creating caches for
SULs.Unchecked exception class that can be used by implementors of a
SUL to wrap any exceptions that occur during
the SUL.step(Object) methods.Utility methods for manipulating mappers.
A wrapper around a system under learning (SUL).
A symbol filter allows one to incorporate additional external knowledge by predicting whether a given transition
(identified by an input symbol) is ignorable in a given state (identified by an access sequence).
A utility class to annotate an input symbol with a (boolean) continuable flag.
An implementation of this interface that is set to the
ReuseTree (see
ReuseOracleBuilder.withSystemStateHandler(SystemStateHandler)) will be informed about all removed system
states whenever ReuseTree.disposeSystemStates() gets called.A markup interface for generators of testing sequences (such as
EquivalenceOracle implementations).A markup interface for a component that manages a pool of threads that may want to be shut down after usage.
The policy for dealing with thread pools.
A thread-safe variant of
DFACacheOracle.A factory for creating thread-safe caches for
DFA-based MembershipOracles.A thread-safe variant of
EquivalenceOracle.MealyEquivalenceOracle.A thread-safe variant of
MealyCacheOracle.A factory for creating thread-safe caches for
MealyMachine-based MembershipOracles.A thread-safe variant of
EquivalenceOracle.MooreEquivalenceOracle.A thread-safe variant of
MealyCacheOracle.A factory for creating thread-safe caches for
MooreMachine-based MembershipOracles.A thread-safe variant of
StateLocalInputSULCache.A thread-safe variant of
SULCache.A factory for creating thread-safe
SUL caches.An oracle for querying
timed inputs and timers by observing timeouts.Response for a timer query.
Implements a
TimedQueryOracle given a TimedSUL.Caches queries sent to a
TimedSUL.Avoids redundant queries for timeouts.
TranslatingLearnerWrapper<L extends LearningAlgorithm<CM,CI,D> & SupportsGrowingAlphabet<CI>,CM,CI,D>
Wraps an
AbstractAAARLearner in a learner that returns
AbstractAAARLearner.getTranslatingHypothesisModel() for TranslatingLearnerWrapper.getHypothesisModel() so that it can be
embedded into learning processes that directly operate on concrete counterexamples.A list of transitions.
Binary discrimination tree node specialization.
Generic n-ary discrimination tree node specialization.
A
MooreMachine-based specialization of the DT node.A
MooreMachine-based specialization of the TTT hypothesis.A
DFA-based specialization of AbstractTTTLearner.A builder for constructing
TTTLearnerDFA instances.A
MealyMachine-based specialization of AbstractTTTLearner.A builder for constructing
TTTLearnerMealy instances.A
MooreMachine-based specialization of AbstractTTTLearner.A builder for constructing
TTTLearnerMoore instances.Class that contains all data that represent the internal state of the
AbstractTTTLearner learner and its DFA
and Mealy implementations.A
SEVPA-based adoption of the "TTT" algorithm.A builder for constructing
TTTLearnerVPA instances.A state in a
AbstractTTTHypothesis.A
MooreMachine-specific state of the TTTHypothesisMoore class.A transition in a
AbstractTTTHypothesis.UniversalDeterministicLearnerITCase<I,D,M extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>>
An artificial output symbol for a (non-executed) input after an exception has occurred.
Utility class for running a simple learning setup (cf.
The (empty) output of a void method call.
An
SBA version of WMethodEQOracle which generates test sequences based
on the W-method for each procedure.An
SPA version of WMethodEQOracle which generates test sequences based
on the W-method for each procedure.Implements an equivalence test by applying the W-method test on the procedures of the given hypothesis
SBA,
as described in "Testing software design modeled by finite state machines" by T.S.WMethodEQOracle<A extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>,I,D>
Implements an equivalence test by applying the W-method test on the given hypothesis automaton, as described in
Testing Software Design Modeled by Finite-State Machines by
T. S. Chow.
Wraps a given (non-empty)
Word as an AdaptiveQuery so that it can be answered by an
AdaptiveMembershipOracle.An
SPA version of WpMethodEQOracle which generates test sequences
based on the partial W-method for each procedure.WpMethodEQOracle<A extends UniversalDeterministicAutomaton.RegularAutomaton<?,I,?,?,?> & Output<I,D>,I,D>
Implements an equivalence test by applying the Wp-method test on the given hypothesis automaton, as described in Test selection based on finite state models by S. Fujiwara et al.