15. A non-transitory computer-readable medium storing computer executable instructions that when executed by a computer cause the computer to perform a method, the method comprising: accessing one or more inference rules that are associated with a semantic model, the rules including a first predicate joined with a second predicate; inputting a set of old triples that include asserted and inferred triples in a semantic model and a set of new triples; for a round comprising the firing of each of the one or more inference rules, generating newly inferred triples based on the new triples by: executing the first predicate on a union of the sets of old and new triples to produce a first result; executing the second predicate on the set of new triples to produce a second result; joining the first result and the second result to produce newly inferred triples; executing the first predicate on the set of new triples to produce a third result; executing the second predicate on a union of the sets of old and new triples to produce a fourth result: and joining the third result and the fourth result to produce newly inferred triples; removing newly inferred triples that duplicate old triples after the round of firing of the one or more inference rules; and joining newly inferred transitive triples with one or more transitive tables associated with the old triples after the round of firing of the one or more inference rules; and updating the semantic model with the newly inferred triples.
16. The computer-readable medium of claim 15 where the removing of newly inferred triples that duplicate old triples comprises performing a hash anti-join between the newly inferred triples and the old triples.