Beispiel #1
0
        internal override Automaton <IMonadicPredicate <BDD, T> > GetAutomatonX(SimpleList <Variable> variables, ICartesianAlgebraBDD <T> alg, bool singletonSetSemantics)
        {
            var k = GetVarIndex(var, variables);

            if (singletonSetSemantics)
            {
                return(BasicAutomata.MkEqN1 <T>(k, n, alg));
            }
            else
            {
                return(BasicAutomata.MkEqN2 <T>(k, n, alg));
            }
        }
Beispiel #2
0
        internal override Automaton <BDD> GetAutomatonBDD(SimpleList <Variable> variables, IBDDAlgebra alg, int nrOfLabelBits, bool singletonSetSemantics)
        {
            var k = GetVarIndex(var, variables) + nrOfLabelBits;

            if (singletonSetSemantics)
            {
                return(BasicAutomata.MkEqN1(k, n, alg));
            }
            else
            {
                return(BasicAutomata.MkEqN2(k, n, alg));
            }
        }