com.epochx.representation.bool
Class ImpliesFunction

java.lang.Object
  extended by com.epochx.representation.Node<TYPE>
      extended by com.epochx.representation.FunctionNode<java.lang.Boolean>
          extended by com.epochx.representation.bool.ImpliesFunction
All Implemented Interfaces:
java.lang.Cloneable

public class ImpliesFunction
extends FunctionNode<java.lang.Boolean>

A FunctionNode which performs logical implication.


Constructor Summary
ImpliesFunction()
          Construct an ImpliesFunction with no children.
ImpliesFunction(Node<java.lang.Boolean> child1, Node<java.lang.Boolean> child2)
          Construct an ImpliesFunction with two children.
 
Method Summary
 java.lang.Boolean evaluate()
          Evaluating an ImpliesFunction involves combining the evaluation of the children according to the rules of IMPLIES where if the first child evaluates to true and the second child evaluates to false then the result will be false.
 java.lang.String getFunctionName()
          Get the unique name that identifies this function.
 
Methods inherited from class com.epochx.representation.FunctionNode
equals, toString
 
Methods inherited from class com.epochx.representation.Node
clone, getArity, getChild, getChildren, getDepth, getFunctionNodes, getLength, getNodesAtDepth, getNoDistinctFunctions, getNoDistinctTerminals, getNoFunctions, getNoTerminals, getNthNode, getTerminalNodes, hashCode, setChild, setChildren, setNthNode
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ImpliesFunction

public ImpliesFunction()
Construct an ImpliesFunction with no children.


ImpliesFunction

public ImpliesFunction(Node<java.lang.Boolean> child1,
                       Node<java.lang.Boolean> child2)
Construct an ImpliesFunction with two children. When evaluated, if the first child evaluates to true and the second child evaluates to false then the result will be false. All other combinations give a result of true.

Parameters:
child1 - The first child node.
child2 - The second child node.
Method Detail

evaluate

public java.lang.Boolean evaluate()
Evaluating an ImpliesFunction involves combining the evaluation of the children according to the rules of IMPLIES where if the first child evaluates to true and the second child evaluates to false then the result will be false. All other combinations give a result of true.

Specified by:
evaluate in class Node<java.lang.Boolean>
Returns:
The result of evaluating the candidate program.

getFunctionName

public java.lang.String getFunctionName()
Get the unique name that identifies this function.

Specified by:
getFunctionName in class FunctionNode<java.lang.Boolean>
Returns:
the unique name for the ImpliesFunction which is IMPLIES.