I am studying for an Artificial Inteligence university exam that includes a section dedicated to mathematical logic. I am finding some difficulty in understanding the difference between logical implication and inference rules in logic.

For example I can write

All men are mortal AND Socrates is a manSocrates is mortal

and I think that this is a classic logic implication because I can verify that it is true that All men are mortal and, at the same time, I can verify that is true that Socrates is a man, so then I can say that Socrates is a mortal because if the left side of implication is true then it is so is right side.

And, at this point I have my first doubt related to the fact that, looking at the truth table for logical implication I found that:

$A \to B$ is TRUE if $A$ is TRUE and $B$ is TRUE, but also that
$A \to B$ is TRUE if $A$ is FALSE and $B$ is TRUE and
$A \to B$ is TRUE if $A$ if FALSE and $B$ is FALSE.

Then reading on Wikipedia I find this:

In logic, a rule of inference, inference rule, or transformation rule is the act of drawing a conclusion based on the form of premises interpreted as a function which takes premises.

And moreover (from the Italian version of Wikipedia):

The inference is the process by which a proposition accepted as true, it moves to a second proposition whose truth is derived from the contents of the first.

So I am beginning to think that my original vision of logical implication was not totally correct because when I use the logic implication in this way:

$A \to B$ I have to know the boolean value of $A$ and of $B$ and then I evaluate the logical value of the implication $A \to B$, but this process says nothing about the value of $B$ having a previous knowledge of the value of $A$.

So is it correct say that “affirm something about $B$ using a previous knowledge about $A$,” is an inference rule?

Can you give me some clarification about it and about the previous example regarding: “Socrates is a man, all men are mortal, therefore Socrates is mortal”?


2 Answers 2


The truth-function conditional, also called the material conditional, is a binary boolean truth function whose values are as you described in the truth table; it is true for all inputs except when the antecedent (left hand side) is true and the consequent (right hand side) is false. The conditional is written with a variety of symbols, e.g., $P \to Q$, $P \supset Q$, and $P \Rightarrow Q$.

There is an inference rule called modus ponens which says that from a conditional $P \to Q$ and $P$, infer $Q$. This can be written in a number of ways, e.g.,

  1. $P$
  2. $P \to Q$
  3. $Q$ by modus ponens from 1 and 2.


$$ \begin{array}{c} P \quad P \to Q \\ \hline Q \end{array} $$

Because modus ponens is so important, and because in some axiomatic systems it is the only inference rule, it is sometimes called “the inference rule.” Most of the time, that usage should probably be avoided, because in practice (i.e., outside of those specific axiomatic systems), there are plenty of other inference rules, and modus ponens is just one among many.

Asserting that the conditional $P \to Q$ is true is simply to assert that either:

  • a. $P$ is true and $Q$ is true; or
  • b. $P$ is false and $Q$ is true; or
  • c. $P$ is false and $Q$ is false.

Using the inference rule modus ponens lets us affirm that $Q$ is true, based on the prior assertion that $P \to Q$ is true and that $P$ is true.

Modus ponens is a sound inference rule because whenever all the premises are actually true, then the conclusion is also actually true. To see why this is the case, consider the premises to modus ponens. These are a conditional $P \to Q$ and $P$. If $P \to Q$ is true, then one of the three cases (a, b, c) described above must also be true. $P \to Q$ being true does not, by itself, ensure that $Q$ is true, because there is one case (c) in which $P \to Q$ is true, but $Q$ is false. However, with the additional requirement that $P$ is true, we are restricted to the case (a) in which $Q$ is also true. Thus, if the premises to modus ponens are true, then so is its conclusion.

Now, it's worth considering how this applies to the example that you gave. The example of “all men are mortal, Socrates is man, therefore Socrates is mortal”. It uses first-order reasoning, and is not actually a case of modus ponens, neither premise is a conditional. However, the proof does use _modus ponens_, in that it requires us to make the following inference.

  1. (Premise) If Socrates is a man then Socrates is mortal.
  2. (Premise) Socrates is a man.
  3. (Conclusion) Therefore, Socrates is mortal.

There are two important concepts to consider: soundness and validity. These mean slightly different things for inference rules and for arguments.

An inference rule is sound if whenever its premises are true, then its conclusion is true. As we saw earlier, modus ponens is a sound rule of inference. The term valid is not used concerning inference rules. We do not say that an inference rule is valid or invalid.

An argument is valid if each reasoning step is an application of a sound inference rule. This means that each sentence in the argument must be true if the earlier sentences that it is based on are true. It does not make the claim that those earlier sentence are true, but just that if they are true, then the current sentence is true. An argument is sound if its premises are, in fact, true. If an argument is both sound and valid, then its conclusion must be true.

So, both

  1. (Premise) If Socrates is a man then Socrates is mortal.
  2. (Premise) Socrates is a man.
  3. (Conclusion) Therefore, Socrates is mortal.


  1. (Premise) If Italy is a man then Italy is mortal.
  2. (Premise) Italy is a man.
  3. (Conclusion) Therefore, Italy is mortal.

are valid arguments, because they use only valid inference rules (namely, modus ponens). The first argument is sound because both of its premises are true. The second argument is unsound because one of its premises its second premise, “Italy is man,” is not true.

If the conclusion of an argument is not true, it means that the argument is either invalid or unsound. (Of course, it could also be both.)

  • $\begingroup$ This is so good !!! Tnx $\endgroup$ Commented Jun 8, 2013 at 19:10

I think you confuse syntax with semantics. Modus ponens is syntactical notion whether your analysis of mortal Socrate is semantical.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .