The derivation of new facts from known facts and inference rule s. This is one of the fundamental operations of artificial intelligence and logic programming languages like Prolog .
Inference is a basic part of human reasoning. For example given that all men are mortal and that Socrates is a man, it is a trivial step to infer that Socrates is mortal. We might express these symbolically:
man(X) => mortal(X). man(socrates).
("if X is a man then X is mortal" and "Socrates is a man"). Here, "man", "mortal" and "socrates" are just arbitrary symbols which the computer manipulates without reference to or knowledge of their external meaning. A forward chaining system (a production system ) could use these to infer the new fact
mortal(socrates).
simply by matching the left-hand-side of the implication against the fact and substituting socrates for the variable X.
(1994-10-28)