com.epochx.representation.dbl
Class SubtractFunction

java.lang.Object
  extended by com.epochx.representation.Node<TYPE>
      extended by com.epochx.representation.FunctionNode<java.lang.Double>
          extended by com.epochx.representation.dbl.SubtractFunction
All Implemented Interfaces:
java.lang.Cloneable

public class SubtractFunction
extends FunctionNode<java.lang.Double>

A FunctionNode which performs the mathematical function of subtraction.


Constructor Summary
SubtractFunction()
          Construct an SubtractFunction with no children.
SubtractFunction(Node<java.lang.Double> child1, Node<java.lang.Double> child2)
          Construct a SubtractFunction with 2 children.
 
Method Summary
 java.lang.Double evaluate()
          Evaluating a SubtractFunction involves subtracting the result of the second child from the first.
 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

SubtractFunction

public SubtractFunction()
Construct an SubtractFunction with no children.


SubtractFunction

public SubtractFunction(Node<java.lang.Double> child1,
                        Node<java.lang.Double> child2)
Construct a SubtractFunction with 2 children. When evaluated, both children will be evaluated, with the second subtracted from the first.

Parameters:
child1 - The first child node.
child2 - The second child node, to be subtracted from the first.
Method Detail

evaluate

public java.lang.Double evaluate()
Evaluating a SubtractFunction involves subtracting the result of the second child from the first.

Specified by:
evaluate in class Node<java.lang.Double>
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.Double>
Returns:
the unique name for the SubtractFunction which is SUB.