Human-Like Logical Reasoning with Machine Discipline, at Machine Speed and Scale.
While the KB contains what Cyc knows, this knowledge will only be useful if Cyc can efficiently reason over that massive store of knowledge. Cyc is unique because it harnesses 1100+ inference engines to logically combine pieces of knowledge from its KB and relevant internal and external data sources. This allows Cyc to quickly produce arguments that are hundreds or even thousands of steps long in real time. Each individual inference engine is suited for a specific task, such as checking for a fact in a database, performing a graph walk on our generalization predicate (
#$genls), or performing transitivity reasoning. For any given task, Cyc is able to use meta-reasoning to determine which inference engine is right for the job.
Cyc reasons using deduction, induction (by using the entire KB as a symbolic learning bias), and abduction (by using the KB to evaluate plausibility). Deductive arguments allow Cyc to prove that a certain thing must be true given a set of assumptions. Inductive arguments allow Cyc to reason about what is likely true given some basis of experience. Abductive arguments allow Cyc to infer what might be the case as the best explanation for a given set of observations; for example, if we observe a car stopped at a green light, we might justifiably infer that the driver is distracted or that the car is suffering from some sort of mechanical failure.