org.dllearner.utilities.owl
Class ConceptTransformation

java.lang.Object
  extended by org.dllearner.utilities.owl.ConceptTransformation

public class ConceptTransformation
extends Object

Concept transformation and concept checking methods.

Author:
Jens Lehmann

Field Summary
static long cleaningTimeNs
           
static long onnfTimeNs
           
static long shorteningTimeNs
           
 
Constructor Summary
ConceptTransformation()
           
 
Method Summary
static Description applyEquivalenceRules(Description concept)
           
static void cleanConcept(Description concept)
           
static void cleanConceptNonRecursive(Description concept)
           
static SortedSet<PropertyContext> getForallContexts(Description description)
          Gets the "contexts" of all \forall occurrences in a description.
static int getForallOccurences(Description description)
          Counts occurrences of \forall in description.
static Description getShortConcept(Description concept, ConceptComparator conceptComparator)
          Tries to shorten a concept, e.g. male AND male is shortened to male.
static Description getShortConceptNonRecursive(Description concept, ConceptComparator conceptComparator)
           
static boolean isDescriptionMinimal(Description description)
          Method to determine, whether a class description is minimal, e.g.
static boolean isSubdescription(Description description, Description subDescription)
          Tests whether a description is a subdescription in the sense that when parts of description can be removed to yield subdescription.
static void replaceRange(Description description, AbstractReasonerComponent rs)
           
static Description transformToNegationNormalForm(Description concept)
           
static void transformToOrderedForm(Description concept, Comparator<Description> conceptComparator)
           
static void transformToOrderedNegationNormalFormNonRecursive(Description concept, Comparator<Description> conceptComparator)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cleaningTimeNs

public static long cleaningTimeNs

onnfTimeNs

public static long onnfTimeNs

shorteningTimeNs

public static long shorteningTimeNs
Constructor Detail

ConceptTransformation

public ConceptTransformation()
Method Detail

cleanConceptNonRecursive

public static void cleanConceptNonRecursive(Description concept)

cleanConcept

public static void cleanConcept(Description concept)

transformToNegationNormalForm

public static Description transformToNegationNormalForm(Description concept)

applyEquivalenceRules

public static Description applyEquivalenceRules(Description concept)

transformToOrderedNegationNormalFormNonRecursive

public static void transformToOrderedNegationNormalFormNonRecursive(Description concept,
                                                                    Comparator<Description> conceptComparator)

transformToOrderedForm

public static void transformToOrderedForm(Description concept,
                                          Comparator<Description> conceptComparator)

getShortConceptNonRecursive

public static Description getShortConceptNonRecursive(Description concept,
                                                      ConceptComparator conceptComparator)

getShortConcept

public static Description getShortConcept(Description concept,
                                          ConceptComparator conceptComparator)
Tries to shorten a concept, e.g. male AND male is shortened to male.

Parameters:
concept - The input concepts.
conceptComparator - A comparator for concepts.
Returns:
A shortened version of the concept (equal to the input concept if it cannot be shortened).

isDescriptionMinimal

public static boolean isDescriptionMinimal(Description description)
Method to determine, whether a class description is minimal, e.g. \forall r.\top (\equiv \top) or male \sqcup male are not minimal. This method performs heuristic sanity checks (it will not try to find semantically equivalent shorter descriptions).

Parameters:
description - Input description.
Returns:
True if a superfluous construct has been found.

replaceRange

public static void replaceRange(Description description,
                                AbstractReasonerComponent rs)

isSubdescription

public static boolean isSubdescription(Description description,
                                       Description subDescription)
Tests whether a description is a subdescription in the sense that when parts of description can be removed to yield subdescription.

Parameters:
description - A description.
subDescription - A potential subdescription.
Returns:
True if subdescription is indeed a sub description and false otherwise.

getForallOccurences

public static int getForallOccurences(Description description)
Counts occurrences of \forall in description.

Parameters:
description - A description.
Returns:
Number of \forall occurrences.

getForallContexts

public static SortedSet<PropertyContext> getForallContexts(Description description)
Gets the "contexts" of all \forall occurrences in a description. A context is a set of properties, i.e. in \exists hasChild.\exists hasBrother.\forall hasChild.male, the context of the only \forall occurrence is [hasChild, hasBrother, hasChild].

Parameters:
description - A description.
Returns:
Set of property contexts.


SourceForge.net Logo DL-Learner is licenced under the terms of the GNU General Public License.
Copyright © 2007-2011 Jens Lehmann