public BinaryTBox() { _unfoldings = CollectionUtils.makeMap(); _conditionalUnfoldings = CollectionUtils.makeIdentityMap(); }
private Set<ATermAppl> createSet() { return _comparator != null ? new TreeSet<>(_comparator) : CollectionUtils.<ATermAppl> makeIdentitySet(); }
private void addUnfolding(final ATermAppl c, final ATermAppl condition, final ATermAppl result, final Set<ATermAppl> explanation) { List<Unfolding> list = _conditionalUnfoldings.get(c); if (list == null) { list = CollectionUtils.makeList(); _conditionalUnfoldings.put(c, list); } list.add(Unfolding.create(result, condition, explanation)); }
@Override protected void initialize() { _equivalents = CollectionUtils.makeIdentityMap(); _graph = new DefaultDirectedGraph<>(DefaultEdge.class); _graph.addVertex(TOP); for (final ATermAppl c : _kb.getClasses()) _graph.addVertex(c); }
@Override protected void initialize() { _equivalents = CollectionUtils.makeIdentityMap(); _graph = new DefaultDirectedGraph<>(DefaultEdge.class); _graph.addVertex(TOP); for (final ATermAppl c : _kb.getClasses()) _graph.addVertex(c); }
private Set<ATermAppl> createSet() { return _comparator != null ? new TreeSet<>(_comparator) : CollectionUtils.<ATermAppl> makeIdentitySet(); }
private void addUnfolding(final ATermAppl c, final ATermAppl condition, final ATermAppl result, final Set<ATermAppl> explanation) { List<Unfolding> list = _conditionalUnfoldings.get(c); if (list == null) { list = CollectionUtils.makeList(); _conditionalUnfoldings.put(c, list); } list.add(Unfolding.create(result, condition, explanation)); }
public BinaryTBox() { _unfoldings = CollectionUtils.makeMap(); _conditionalUnfoldings = CollectionUtils.makeIdentityMap(); }
_unfoldingMap = CollectionUtils.makeIdentityMap();
@Override protected Set<ATermAppl> computeCycles() { final Set<ATermAppl> cyclicConcepts = CollectionUtils.makeIdentitySet(); for (final TaxonomyNode<ATermAppl> node : _definitionOrderTaxonomy.getNodes().values()) { final Set<ATermAppl> names = node.getEquivalents(); if (names.size() > 1) cyclicConcepts.addAll(names); } return cyclicConcepts; }
@Override protected List<ATermAppl> computeDefinitionOrder() { final List<ATermAppl> definitionOrder = CollectionUtils.makeList(); definitionOrder.add(TOP); definitionOrder.addAll(getEquivalents(TOP)); _graph.removeVertex(TOP); destructiveTopologocialSort(definitionOrder); definitionOrder.add(BOTTOM); return definitionOrder; }
_unfoldingMap = CollectionUtils.makeIdentityMap();
protected Node(final Node node, final ABoxImpl abox) { _name = node.getName(); _abox = abox; _isRoot = node._isRoot; _isConceptRoot = node._isConceptRoot; _mergeDepends = node._mergeDepends; _mergedTo = node._mergedTo; _merged = node._merged; _pruned = node._pruned; // do not copy _differents right now because we need to // update _node references later anyway _differents = node._differents; _depends = CollectionUtils.makeMap(node._depends); _inEdges = node._inEdges; }
@Override protected Set<ATermAppl> computeCycles() { final Set<ATermAppl> cyclicConcepts = CollectionUtils.makeIdentitySet(); for (final TaxonomyNode<ATermAppl> node : _definitionOrderTaxonomy.getNodes().values()) { final Set<ATermAppl> names = node.getEquivalents(); if (names.size() > 1) cyclicConcepts.addAll(names); } return cyclicConcepts; }
@Override protected List<ATermAppl> computeDefinitionOrder() { final List<ATermAppl> definitionOrder = CollectionUtils.makeList(); definitionOrder.add(TOP); definitionOrder.addAll(getEquivalents(TOP)); _graph.removeVertex(TOP); destructiveTopologocialSort(definitionOrder); definitionOrder.add(BOTTOM); return definitionOrder; }
public void absorb() { _subLogger.fine("Absorption started"); _subLogger.fine(() -> "Tg.size was " + _termhash.size() + " _Tu.size was " + _tbox._Tu.size()); final Collection<TermDefinition> terms = _termhash.values(); // _termhash.clear(); FIXME : why is this doesn't work ? // _termhash = new HashMap<>(); _termhash = CollectionUtils.makeIdentityMap(); for (final TermDefinition def : terms) { _kb.getTimers().checkTimer("preprocessing"); for (final ATermAppl subClassAxiom : def.getSubClassAxioms()) { final ATermAppl c1 = (ATermAppl) subClassAxiom.getArgument(0); final ATermAppl c2 = (ATermAppl) subClassAxiom.getArgument(1); absorbSubClass(c1, c2, _tbox.getAxiomExplanation(subClassAxiom)); } for (final ATermAppl eqClassAxiom : def.getEqClassAxioms()) { final ATermAppl c1 = (ATermAppl) eqClassAxiom.getArgument(0); final ATermAppl c2 = (ATermAppl) eqClassAxiom.getArgument(1); absorbSubClass(c1, c2, _tbox.getAxiomExplanation(eqClassAxiom)); absorbSubClass(c2, c1, _tbox.getAxiomExplanation(eqClassAxiom)); } } _subLogger.fine(() -> "Tg.size is " + _termhash.size() + " _Tu.size is " + _tbox._Tu.size()); _subLogger.fine("Absorption finished"); }