Beispiel #1
0
        /**
         * Eliminate las bicondicionales de una sentencia.
         *
         * @param sentence
         *            una sentencia de lógica proposicional
         * @return una sentencia equivalente a la de entrada con todas las bicondicionales eliminadas.
         */
        public static Sentence Eliminate(Sentence sentence)
        {
            BiconditionalElimination eliminator = new BiconditionalElimination();

            Sentence result = sentence.Accept(eliminator, null);

            return(result);
        }
Beispiel #2
0
        /**
         * Devuelve la sentencia especificada en su sentencia equivalente en forma normal de negación.
         *
         * @param s
         *            una sentencia de lógica proposicional
         *
         * @return la sentencia de entrada convertida en su equivalente lógica de forma normal de negación.
         */
        public static Sentence Convert(Sentence s)
        {
            Sentence result = null;

            Sentence biconditionalsRemoved = BiconditionalElimination.Eliminate(s);
            Sentence implicationsRemoved   = ImplicationElimination
                                             .Eliminate(biconditionalsRemoved);
            Sentence notsMovedIn = MoveNotInwards
                                   .MoveNotsInward(implicationsRemoved);

            result = notsMovedIn;

            return(result);
        }