Skip to content

Commit 313d533

Browse files
committed
experiment: only require collection of inputs
1 parent 5784df9 commit 313d533

1 file changed

Lines changed: 8 additions & 7 deletions

File tree

commons/util/src/main/java/de/learnlib/util/Experiment.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,15 @@
1515
*/
1616
package de.learnlib.util;
1717

18+
import java.util.Collection;
19+
1820
import de.learnlib.algorithm.LearningAlgorithm;
1921
import de.learnlib.logging.Category;
2022
import de.learnlib.oracle.EquivalenceOracle;
2123
import de.learnlib.query.DefaultQuery;
2224
import de.learnlib.statistic.Statistics;
2325
import de.learnlib.statistic.StatisticsKey;
2426
import de.learnlib.statistic.StatisticsService;
25-
import net.automatalib.alphabet.Alphabet;
2627
import net.automatalib.automaton.concept.FiniteRepresentation;
2728
import net.automatalib.automaton.fsa.DFA;
2829
import net.automatalib.automaton.transducer.MealyMachine;
@@ -69,7 +70,7 @@ public class Experiment<A extends FiniteRepresentation> {
6970

7071
public <I, D> Experiment(LearningAlgorithm<? extends A, I, D> learningAlgorithm,
7172
EquivalenceOracle<? super A, I, D> equivalenceAlgorithm,
72-
Alphabet<I> inputs) {
73+
Collection<? extends I> inputs) {
7374
this.impl = new ExperimentImpl<>(learningAlgorithm, equivalenceAlgorithm, inputs);
7475
}
7576

@@ -110,13 +111,13 @@ private final class ExperimentImpl<I, D> {
110111

111112
private final LearningAlgorithm<? extends A, I, D> learningAlgorithm;
112113
private final EquivalenceOracle<? super A, I, D> equivalenceAlgorithm;
113-
private final Alphabet<I> inputs;
114+
private final Collection<? extends I> inputs;
114115
private final StatisticsService statistics;
115116
private int rounds;
116117

117118
ExperimentImpl(LearningAlgorithm<? extends A, I, D> learningAlgorithm,
118119
EquivalenceOracle<? super A, I, D> equivalenceAlgorithm,
119-
Alphabet<I> inputs) {
120+
Collection<? extends I> inputs) {
120121
this.learningAlgorithm = learningAlgorithm;
121122
this.equivalenceAlgorithm = equivalenceAlgorithm;
122123
this.inputs = inputs;
@@ -168,7 +169,7 @@ public static class DFAExperiment<I> extends Experiment<DFA<?, I>> {
168169

169170
public DFAExperiment(LearningAlgorithm<? extends DFA<?, I>, I, Boolean> learningAlgorithm,
170171
EquivalenceOracle<? super DFA<?, I>, I, Boolean> equivalenceAlgorithm,
171-
Alphabet<I> inputs) {
172+
Collection<? extends I> inputs) {
172173
super(learningAlgorithm, equivalenceAlgorithm, inputs);
173174
}
174175

@@ -178,7 +179,7 @@ public static class MealyExperiment<I, O> extends Experiment<MealyMachine<?, I,
178179

179180
public MealyExperiment(LearningAlgorithm<? extends MealyMachine<?, I, ?, O>, I, Word<O>> learningAlgorithm,
180181
EquivalenceOracle<? super MealyMachine<?, I, ?, O>, I, Word<O>> equivalenceAlgorithm,
181-
Alphabet<I> inputs) {
182+
Collection<? extends I> inputs) {
182183
super(learningAlgorithm, equivalenceAlgorithm, inputs);
183184
}
184185

@@ -188,7 +189,7 @@ public static class MooreExperiment<I, O> extends Experiment<MooreMachine<?, I,
188189

189190
public MooreExperiment(LearningAlgorithm<? extends MooreMachine<?, I, ?, O>, I, Word<O>> learningAlgorithm,
190191
EquivalenceOracle<? super MooreMachine<?, I, ?, O>, I, Word<O>> equivalenceAlgorithm,
191-
Alphabet<I> inputs) {
192+
Collection<? extends I> inputs) {
192193
super(learningAlgorithm, equivalenceAlgorithm, inputs);
193194
}
194195

0 commit comments

Comments
 (0)