public final class MealyMachines extends Object
Modifier and Type | Method and Description |
---|---|
static <I,O1,O2> CompactMealy<I,Pair<O1,O2>> |
combine(MealyMachine<?,I,?,O1> mealy1,
MealyMachine<?,I,?,O2> mealy2,
Alphabet<I> inputAlphabet)
Constructs the product automaton for two Mealy Machines.
|
static <I,O1,O2,A extends MutableMealyMachine<?,I,?,Pair<O1,O2>>> |
combine(MealyMachine<?,I,?,O1> mealy1,
MealyMachine<?,I,?,O2> mealy2,
Collection<? extends I> inputs,
A out)
Constructs the product automaton for two Mealy Machines.
|
static <I,O> CompactMealy<I,O> |
complete(MealyMachine<?,I,?,O> mealy,
Alphabet<I> inputs,
O undefinedOutput)
Constructs a copy of the given Mealy machine in which every transition (with regards to the specified alphabet)
is guaranteed to be defined.
|
static <S,I,T,O,A extends MutableMealyMachine<S,I,T,O>> |
complete(MealyMachine<?,I,?,O> mealy,
Collection<? extends I> inputs,
O undefinedOutput,
A out)
Constructs a copy of the given Mealy machine in which every transition (with regards to the specified alphabet)
is guaranteed to be defined.
|
public static <I,O1,O2> CompactMealy<I,Pair<O1,O2>> combine(MealyMachine<?,I,?,O1> mealy1, MealyMachine<?,I,?,O2> mealy2, Alphabet<I> inputAlphabet)
I
- input symbol typeO1
- output symbol type of the first Mealy MachineO2
- output symbol type of the second Mealy Machinemealy1
- the first Mealy Machinemealy2
- the second Mealy MachineinputAlphabet
- the input alphabet of the returned automatonpublic static <I,O1,O2,A extends MutableMealyMachine<?,I,?,Pair<O1,O2>>> A combine(MealyMachine<?,I,?,O1> mealy1, MealyMachine<?,I,?,O2> mealy2, Collection<? extends I> inputs, A out)
I
- input symbol typeO1
- output symbol type of the first Mealy MachineO2
- output symbol type of the second Mealy Machinemealy1
- the first Mealy Machinemealy2
- the second Mealy Machineinputs
- the input symbols to considerout
- the instance to which the combined automaton should be writtenout
, for conveniencepublic static <I,O> CompactMealy<I,O> complete(MealyMachine<?,I,?,O> mealy, Alphabet<I> inputs, O undefinedOutput)
I
- input symbol typeO
- output symbol typemealy
- the original Mealy machineinputs
- the inputs to consider for completing the automatonundefinedOutput
- the output symbol that should be used for new transitionspublic static <S,I,T,O,A extends MutableMealyMachine<S,I,T,O>> A complete(MealyMachine<?,I,?,O> mealy, Collection<? extends I> inputs, O undefinedOutput, A out)
S
- automaton state typeI
- input symbol typeT
- automaton transition typeO
- output symbol typeA
- output automaton typemealy
- the original Mealy machineinputs
- the inputs to consider for completing the automatonundefinedOutput
- the output symbol that should be used for new transitionsout
- the instance to which the copy should be writtenout
, for convenience.Copyright © 2020. All rights reserved.