java.lang.Object
de.learnlib.testsupport.it.AbstractDFALearnerIT
Abstract integration test for DFA learning algorithms.
If run, this integration test tests the functionality of all
variants of a DFA learning
algorithm against all the examples contained in LearningExamples.createDFAExamples().
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract <I> voidaddLearnerVariants(Alphabet<I> alphabet, int targetSize, MembershipOracle.DFAMembershipOracle<I> mqOracle, LearnerVariantList.DFALearnerVariantList<I> variants) Adds, for a given setup, all the variants of the DFA learner to be tested to the specifiedvariant list.Object[]protected booleanReturns whether the hypotheses require access to the membership oracle during traversal.
-
Constructor Details
-
AbstractDFALearnerIT
public AbstractDFALearnerIT()
-
-
Method Details
-
createExampleITCases
-
requiresQueriesDuringHypothesisTraversal
protected boolean requiresQueriesDuringHypothesisTraversal()Returns whether the hypotheses require access to the membership oracle during traversal. This typically should not be the case as it disables the check for stable hypothesis constructions but certain approaches (e.g., automated alphabet abstraction refinement) require this by design.- Returns:
trueif the hypotheses require access to the membership oracle during traversal,falseotherwise
-
addLearnerVariants
protected abstract <I> void addLearnerVariants(Alphabet<I> alphabet, int targetSize, MembershipOracle.DFAMembershipOracle<I> mqOracle, LearnerVariantList.DFALearnerVariantList<I> variants) Adds, for a given setup, all the variants of the DFA learner to be tested to the specifiedvariant list.- Type Parameters:
I- input symbol type- Parameters:
alphabet- the input alphabettargetSize- the size of the target automatonmqOracle- the membership oraclevariants- list to add the learner variants to
-