internal override Automaton <IMonadicPredicate <BDD, T> > GetAutomatonX(SimpleList <Variable> variables, ICartesianAlgebraBDD <T> alg, bool singletonSetSemantics) { var pos1 = GetVarIndex(var1, variables); var pos2 = GetVarIndex(var2, variables); if (singletonSetSemantics) { return(BasicAutomata.MkIn1 <T>(pos1, pos2, alg)); } else { return(BasicAutomata.MkIn2 <T>(pos1, pos2, alg)); } }
internal override Automaton <BDD> GetAutomatonBDD(SimpleList <Variable> variables, IBDDAlgebra alg, int nrOfLabelBits, bool singletonSetSemantics) { var pos1 = GetVarIndex(var1, variables); var pos2 = GetVarIndex(var2, variables); if (singletonSetSemantics) { return(BasicAutomata.MkIn1(pos1 + nrOfLabelBits, pos2 + nrOfLabelBits, alg)); } else { return(BasicAutomata.MkIn2(pos1 + nrOfLabelBits, pos2 + nrOfLabelBits, alg)); } }