Class Implication

  • All Implemented Interfaces:
    Formula

    public class Implication
    extends java.lang.Object
    implements Formula
    Represents the implication of a formula to an other.
    • Constructor Detail

      • Implication

        public Implication​(Formula leftOperand,
                           Formula rightOperand)
        Constructor.
        Parameters:
        leftOperand - left side operand
        rightOperand - right side operand
    • Method Detail

      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object other)
        Checks if the formulas are the same.
        Specified by:
        equals in interface Formula
        Overrides:
        equals in class java.lang.Object
        Parameters:
        other - other formula to test the equality
        Returns:
        result of the equality test
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • simplify

        public Formula simplify()
        Description copied from interface: Formula
        Simplifies the logic formula.
        Specified by:
        simplify in interface Formula
        Returns:
        simplified formula
      • getNegation

        public Formula getNegation()
        Description copied from interface: Formula
        Returns the negation of the current formula.
        Specified by:
        getNegation in interface Formula
        Returns:
        negation of formula
      • contains

        public boolean contains​(Formula otherFormula)
        Description copied from interface: Formula
        Returns true if this formula contains the specified formula.
        Specified by:
        contains in interface Formula
        Parameters:
        otherFormula - other formula whose presence in this formula is to be tested
        Returns:
        true if this formula contains the specified formula
      • getLeftOperand

        public Formula getLeftOperand()
        Gets the left operand of the formula.
        Returns:
        condition operand
      • getRightOperand

        public Formula getRightOperand()
        Gets the right operand of the formula.
        Returns:
        new operand implied by the left one
      • evaluate

        public boolean evaluate​(LogicAssignment assignment)
                         throws java.lang.Exception
        Description copied from interface: Formula
        Evaluates a state that we passed into arguments.
        Specified by:
        evaluate in interface Formula
        Parameters:
        assignment - state to evaluate
        Returns:
        result of the evaluation
        Throws:
        java.lang.Exception - throws when the formula not supported this operation or expected object not given