de.learnlib.algorithm.dhc.mealy.MealyDHCBuilder Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of learnlib-dhc Show documentation
Show all versions of learnlib-dhc Show documentation
This artifact provides the implementation of the DHC learning algorithm as described in the paper "Automata
Learning with on-the-Fly Direct Hypothesis Construction" (https://doi.org/10.1007/978-3-642-34781-8_19) by Maik
Merten, Falk Howar, Bernhard Steffen, and Tiziana Margaria.
The newest version!
/*
* Automatically generated by BuilderGen, https://github.com/misberner/buildergen.
* DO NOT EDIT THIS FILE! Your changes will be overwritten.
* Edit the @GenerateBuilder specification of class
* de.learnlib.algorithm.dhc.mealy.MealyDHC
*/
package de.learnlib.algorithm.dhc.mealy;
public class MealyDHCBuilder<
I extends java.lang.Object,
O extends java.lang.Object> {
private static<
I extends java.lang.Object,
O extends java.lang.Object> de.learnlib.algorithm.dhc.mealy.MealyDHC $createDispatch(
net.automatalib.alphabet.Alphabet alphabet,
de.learnlib.oracle.MembershipOracle> oracle,
de.learnlib.counterexample.GlobalSuffixFinder super I,? super net.automatalib.word.Word> suffixFinder,
java.util.Collection extends net.automatalib.word.Word> initialSplitters
) {
return new de.learnlib.algorithm.dhc.mealy.MealyDHC(
alphabet,
oracle,
suffixFinder,
initialSplitters
);
}
private net.automatalib.alphabet.Alphabet alphabet;
private de.learnlib.oracle.MembershipOracle> oracle;
private de.learnlib.counterexample.GlobalSuffixFinder super I,? super net.automatalib.word.Word> suffixFinder;
private java.util.Collection extends net.automatalib.word.Word> initialSplitters;
public MealyDHCBuilder() {
this.suffixFinder = de.learnlib.algorithm.dhc.mealy.MealyDHC.BuilderDefaults.suffixFinder();
this.initialSplitters = de.learnlib.algorithm.dhc.mealy.MealyDHC.BuilderDefaults.initialSplitters();
}
public de.learnlib.algorithm.dhc.mealy.MealyDHC create() {
return $createDispatch(
this.alphabet,
this.oracle,
this.suffixFinder,
this.initialSplitters
);
}
public net.automatalib.alphabet.Alphabet getAlphabet() {
return this.alphabet;
}
public void setAlphabet(net.automatalib.alphabet.Alphabet alphabet) {
this.alphabet = alphabet;
}
public MealyDHCBuilder withAlphabet(net.automatalib.alphabet.Alphabet alphabet) {
this.alphabet = alphabet;
return this;
}
public de.learnlib.oracle.MembershipOracle> getOracle() {
return this.oracle;
}
public void setOracle(de.learnlib.oracle.MembershipOracle> oracle) {
this.oracle = oracle;
}
public MealyDHCBuilder withOracle(de.learnlib.oracle.MembershipOracle> oracle) {
this.oracle = oracle;
return this;
}
public de.learnlib.counterexample.GlobalSuffixFinder super I,? super net.automatalib.word.Word> getSuffixFinder() {
return this.suffixFinder;
}
public void setSuffixFinder(de.learnlib.counterexample.GlobalSuffixFinder super I,? super net.automatalib.word.Word> suffixFinder) {
this.suffixFinder = suffixFinder;
}
public MealyDHCBuilder withSuffixFinder(de.learnlib.counterexample.GlobalSuffixFinder super I,? super net.automatalib.word.Word> suffixFinder) {
this.suffixFinder = suffixFinder;
return this;
}
public java.util.Collection extends net.automatalib.word.Word> getInitialSplitters() {
return this.initialSplitters;
}
public void setInitialSplitters(java.util.Collection extends net.automatalib.word.Word> initialSplitters) {
this.initialSplitters = initialSplitters;
}
public MealyDHCBuilder withInitialSplitters(java.util.Collection extends net.automatalib.word.Word> initialSplitters) {
this.initialSplitters = initialSplitters;
return this;
}
}