elk-reasoner/src/main/java/org/semanticweb/elk/reasoner/indexing/classes/DifferentialIndex.java
public void commitAddedRules() {
		// commit changes in the context initialization rules
		ChainableContextInitRule nextContextInitRule;
		Chain<ChainableContextInitRule> contextInitRuleChain;

		nextContextInitRule = addedContextInitRules_;
		contextInitRuleChain = getContextInitRuleChain();
		while (nextContextInitRule != null) {
			nextContextInitRule.addTo(contextInitRuleChain);
			nextContextInitRule = nextContextInitRule.next();
		}

		// commit changes in rules for IndexedClassExpression
		ChainableSubsumerRule nextClassExpressionRule;
		Chain<ChainableSubsumerRule> classExpressionRuleChain;
		for (ModifiableIndexedClassExpression target : addedContextRuleHeadByClassExpressions_
				.keySet()) {
			LOGGER_.trace("{}: committing context rule additions", target);

			nextClassExpressionRule = addedContextRuleHeadByClassExpressions_
					.get(target);
			classExpressionRuleChain = target.getCompositionRuleChain();
			while (nextClassExpressionRule != null) {
				nextClassExpressionRule.addTo(classExpressionRuleChain);
				nextClassExpressionRule = nextClassExpressionRule.next();
			}
		}
		for (ModifiableIndexedClass target : addedDefinitions_.keySet()) {
			ModifiableIndexedClassExpression definition = addedDefinitions_
					.get(target);
			ElkAxiom reason = addedDefinitionReasons_.get(target);
			LOGGER_.trace("{}: committing definition addition {}", target,
					definition);
			if (!target.setDefinition(definition, reason))
				throw new ElkUnexpectedIndexingException(target);
		}
		initAdditions();
	}
public void commitAddedRules() {
		// commit changes in the context initialization rules
		ChainableContextInitRule nextContextInitRule;
		Chain<ChainableContextInitRule> contextInitRuleChain;

		nextContextInitRule = addedContextInitRules_;
		contextInitRuleChain = getContextInitRuleChain();
		while (nextContextInitRule != null) {
			nextContextInitRule.addTo(contextInitRuleChain);
			nextContextInitRule = nextContextInitRule.next();
		}

		// commit changes in rules for IndexedClassExpression
		ChainableSubsumerRule nextClassExpressionRule;
		Chain<ChainableSubsumerRule> classExpressionRuleChain;
		for (ModifiableIndexedClassExpression target : addedContextRuleHeadByClassExpressions_
				.keySet()) {
			LOGGER_.trace("{}: committing context rule additions", target);

			nextClassExpressionRule = addedContextRuleHeadByClassExpressions_
					.get(target);
			classExpressionRuleChain = target.getCompositionRuleChain();
			while (nextClassExpressionRule != null) {
				nextClassExpressionRule.addTo(classExpressionRuleChain);
				nextClassExpressionRule = nextClassExpressionRule.next();
			}
		}
		for (ModifiableIndexedClass target : addedDefinitions_.keySet()) {
			ModifiableIndexedClassExpression definition = addedDefinitions_
					.get(target);
			ElkAxiom reason = addedDefinitionReasons_.get(target);
			LOGGER_.trace("{}: committing definition addition {}", target,
					definition);
			if (!target.setDefinition(definition, reason))
				throw new ElkUnexpectedIndexingException(target);
		}
		initAdditions();
	}
Commits the added rules to the main index and removes them from this
{@link DifferentialIndex}.