elk-reasoner/src/main/java/org/semanticweb/elk/reasoner/consistency/ConsistencyCheckingState.java
public Proof<? extends EntailmentInference> getEvidence(
			final boolean atMostOne) {

		return new Proof<EntailmentInference>() {

			@SuppressWarnings("unchecked")
			@Override
			public Collection<OntologyInconsistencyEntailmentInference> getInferences(
					final Object conclusion) {

				if (!OntologyInconsistencyImpl.INSTANCE.equals(conclusion)) {
					return Collections.emptyList();
				}
				// else

				final Collection<? extends IndexedIndividual> inconsistentIndividuals = getInconsistentIndividuals();
				Iterable<OntologyInconsistencyEntailmentInference> result = Operations
						.map(inconsistentIndividuals,
								INDIVIDUAL_TO_ENTAILMENT_INFERENCE);
				int size = inconsistentIndividuals.size();

				if (isTopObjectPropertyInBottom_) {
					result = Operations.concat(Operations
							.<OntologyInconsistencyEntailmentInference> singleton(
									new TopObjectPropertyInBottomEntailsOntologyInconsistencyImpl(
											conclusionFactory_
													.getSubPropertyChain(
															topProperty_,
															bottomProperty_))),
							result);
					size++;
				}

				if (isOwlThingInconsistent_) {
					result = Operations.concat(Operations
							.<OntologyInconsistencyEntailmentInference> singleton(
									new OwlThingInconsistencyEntailsOntologyInconsistencyImpl(
											conclusionFactory_.getContradiction(
													owlThing_))),
							result);
					size++;
				}

				if (atMostOne) {
					final Iterator<OntologyInconsistencyEntailmentInference> iter = result
							.iterator();
					if (!iter.hasNext()) {
						return Collections.emptyList();
					}
					// else
					return Collections.singleton(iter.next());
				}
				// else

				return Operations.getCollection(result, size);
			}

		};

	}
public Proof<? extends EntailmentInference> getEvidence(
			final boolean atMostOne) {

		return new Proof<EntailmentInference>() {

			@SuppressWarnings("unchecked")
			@Override
			public Collection<OntologyInconsistencyEntailmentInference> getInferences(
					final Object conclusion) {

				if (!OntologyInconsistencyImpl.INSTANCE.equals(conclusion)) {
					return Collections.emptyList();
				}
				// else

				final Collection<? extends IndexedIndividual> inconsistentIndividuals = getInconsistentIndividuals();
				Iterable<OntologyInconsistencyEntailmentInference> result = Operations
						.map(inconsistentIndividuals,
								INDIVIDUAL_TO_ENTAILMENT_INFERENCE);
				int size = inconsistentIndividuals.size();

				if (isTopObjectPropertyInBottom_) {
					result = Operations.concat(Operations
							.<OntologyInconsistencyEntailmentInference> singleton(
									new TopObjectPropertyInBottomEntailsOntologyInconsistencyImpl(
											conclusionFactory_
													.getSubPropertyChain(
															topProperty_,
															bottomProperty_))),
							result);
					size++;
				}

				if (isOwlThingInconsistent_) {
					result = Operations.concat(Operations
							.<OntologyInconsistencyEntailmentInference> singleton(
									new OwlThingInconsistencyEntailsOntologyInconsistencyImpl(
											conclusionFactory_.getContradiction(
													owlThing_))),
							result);
					size++;
				}

				if (atMostOne) {
					final Iterator<OntologyInconsistencyEntailmentInference> iter = result
							.iterator();
					if (!iter.hasNext()) {
						return Collections.emptyList();
					}
					// else
					return Collections.singleton(iter.next());
				}
				// else

				return Operations.getCollection(result, size);
			}

		};

	}
public Proof < ? extends EntailmentInference > getEvidence ( final boolean atMostOne ) { return new Proof < EntailmentInference > ( ) { @ SuppressWarnings ( "unchecked" ) @ Override public Collection < OntologyInconsistencyEntailmentInference > getInferences ( final Object conclusion ) { if ( ! OntologyInconsistencyImpl . INSTANCE . equals ( conclusion ) ) { return Collections . emptyList ( ) ; } // else final Collection < ? extends IndexedIndividual > inconsistentIndividuals = getInconsistentIndividuals ( ) ; Iterable < OntologyInconsistencyEntailmentInference > result = Operations . map ( inconsistentIndividuals , INDIVIDUAL_TO_ENTAILMENT_INFERENCE ) ; int size = inconsistentIndividuals . size ( ) ; if ( isTopObjectPropertyInBottom_ ) { result = Operations . concat ( Operations . < OntologyInconsistencyEntailmentInference > singleton ( new TopObjectPropertyInBottomEntailsOntologyInconsistencyImpl ( conclusionFactory_ . getSubPropertyChain ( topProperty_ , bottomProperty_ ) ) ) , result ) ; size ++ ; } if ( isOwlThingInconsistent_ ) { result = Operations . concat ( Operations . < OntologyInconsistencyEntailmentInference > singleton ( new OwlThingInconsistencyEntailsOntologyInconsistencyImpl ( conclusionFactory_ . getContradiction ( owlThing_ ) ) ) , result ) ; size ++ ; } if ( atMostOne ) { final Iterator < OntologyInconsistencyEntailmentInference > iter = result . iterator ( ) ; if ( ! iter . hasNext ( ) ) { return Collections . emptyList ( ) ; } // else return Collections . singleton ( iter . next ( ) ) ; } // else return Operations . getCollection ( result , size ) ; } } ; }
Explains why an ontology inconsistency is entailed. If it is not
entailed, the returned proof is empty.

@param atMostOne
Whether at most one explanation should be returned.
@return An evidence of entailment of ontology inconsistency.
Explains why an ontology inconsistency is entailed . If it is not entailed the returned proof is empty .