AIMA.Test.Core.Unit.Logic.Propositional.Visitors.SymbolClassifierTest.testAIMA2eExample C# (CSharp) Méthode

testAIMA2eExample() private méthode

private testAIMA2eExample ( ) : void
Résultat void
        public void testAIMA2eExample()
        {
            // 2nd Edition Pg 221
            Sentence sentence = (Sentence)parser
                    .parse("(((A OR (NOT B)) AND ((NOT B) OR (NOT C))) AND (C OR A))");

            List<Symbol> neg = classifier.getNegativeSymbolsIn(sentence);
            List<Symbol> pos = classifier.getPositiveSymbolsIn(sentence);

            List<Symbol> pureNeg = classifier.getPureNegativeSymbolsIn(sentence);
            List<Symbol> purePos = classifier.getPurePositiveSymbolsIn(sentence);

            List<Symbol> pure = classifier.getPureSymbolsIn(sentence);
            List<Symbol> impure = classifier.getImpureSymbolsIn(sentence);

            Sentence a = (Sentence)parser.parse("A");
            Sentence b = (Sentence)parser.parse("B");
            Sentence c = (Sentence)parser.parse("C");

            Assert.AreEqual(2, neg.Count);
            Assert.IsTrue(FindSentence(neg, b));
            Assert.IsTrue(FindSentence(neg, c));

            Assert.AreEqual(2, pos.Count);
            Assert.IsTrue(FindSentence(pos, a));
            Assert.IsTrue(FindSentence(pos, c));

            Assert.AreEqual(1, pureNeg.Count);
            Assert.IsTrue(FindSentence(pureNeg, b));

            Assert.AreEqual(1, purePos.Count);
            Assert.IsTrue(FindSentence(purePos, a));

            Assert.AreEqual(2, pure.Count);
            Assert.IsTrue(FindSentence(pure, a));
            Assert.IsTrue(FindSentence(pure, b));

            Assert.AreEqual(1, impure.Count);
            Assert.IsTrue(FindSentence(impure, c));
        }
    }