Exemplo n.º 1
0
        public void SMG_04_05_SimplyifyBool()
        {
            var sm = new StateMachine();
            var btype = sm.GetStateType("boolean");
            var v = sm.AddVariable("v", btype);
            var u = sm.AddVariable("u", btype);
            var w = sm.AddVariable("w", btype);

            var c1 = new BooleanCondition(v);
            var c2 = new BooleanCondition(u);
            var c3 = new BooleanCondition(w);

            IGate g;

            g = Gate.ComposeAND(c1, c2);
            g = Gate.ComposeOR(g, Gate.Invert(c3));

            Trace("{0}", g);

            Assert.AreEqual("vu + !w", g.ToString());
        }