org.opencyc.constraintsolver
Class VariableSelectionComparator

java.lang.Object
  |
  +--org.opencyc.constraintsolver.VariableSelectionComparator
All Implemented Interfaces:
java.util.Comparator

public class VariableSelectionComparator
extends java.lang.Object
implements java.util.Comparator

Implements a Comparator to sort variables for the selectVariable method of the ForwardCheckingSearcher class.

Author:
Stephen L. Reed

Copyright 2001 Cycorp, Inc., license is open source GNU LGPL.

the license

www.opencyc.org

OpenCyc at SourceForge

THIS SOFTWARE AND KNOWLEDGE BASE CONTENT ARE PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OPENCYC ORGANIZATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE AND KNOWLEDGE BASE CONTENT, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Constructor Summary
VariableSelectionComparator()
          Constructs a new VariableSelectionComparator object.
 
Method Summary
 int compare(java.lang.Object o1, java.lang.Object o2)
          Compares two annotated variable elements.
 boolean equals(java.lang.Object object)
          Returns true if some other object is equal to this Comparator
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VariableSelectionComparator

public VariableSelectionComparator()
Constructs a new VariableSelectionComparator object.
Method Detail

compare

public int compare(java.lang.Object o1,
                   java.lang.Object o2)
Compares two annotated variable elements. Sort the constrained variables in o1 and o2 by ascending size of their remaining domains, breaking ties according to descending degree.
Specified by:
compare in interface java.util.Comparator
Parameters:
o1 - an annotated variable for comparison
o2 - another annotated variable for comparison.
Returns:
a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
Throws:
ClassCastException - - if the arguments' types prevent them from being compared by this Comparator

equals

public boolean equals(java.lang.Object object)
Returns true if some other object is equal to this Comparator
Specified by:
equals in interface java.util.Comparator
Overrides:
equals in class java.lang.Object
Parameters:
object - the reference object with which to compare.
Returns:
true only if the specified object is also a comparator and it imposes the same ordering as this comparator.