コード例 #1
0
        public Bdd execute()
        {
            Bdd b      = body.execute();
            Bdd result = new Bdd(false);

            foreach (Var v in vars)
            {
                //Bdd b2 = v.execute();
                //result = BDD.And(BDD.Restrict(b.Var, b2.Var, true), BDD.Restrict(b.Var, b2.Var, false));
                result = BDD.Or(result, BDD.ForAll(v.execute().Var, b));
            }
            b.Dispose();
            return(result);
        }