This question derives from p 322, A Concise Introduction to Logic (12 Ed, 2014), by Patrick Hurley, but I do not quote it because its example presumes knowledge of pharmaceuticals and is too esoteric.

Intuitively, how do those two statements differ? I pursue only intuition; please do not answer with formal proofs or Truth Tables.

Though lacking intuition, I can prove their disparity:

  1. (A → B) → C  ≡  (~A ˅ B) → C  ≡  ~(~A ˅ B) ˅ C  ≡  (A ∧ ¬B) ∨ C.

  2. A → (B → C)  ≡  ~A ˅ (B → C)  ≡  ¬A ∨ ¬B ∨ C.

  • To summarize the answers, the latter fails only when C is false and A and B are true. It means that C must succeed whenever A and B succeed. The first expression fails when C is false and A implies B. So, assuming A=B=1 for the second to fail, whereas A -> B for the second to fail, which happens much more often. That is, it will fail when A=B=0 or A=0 and B=1, whereas second won't. That is the difference. What is the question? Apr 9, 2016 at 8:15
  • I often feel that questions like this can't be satisfactorily answered as stated; the difference is plain, what needs to be addressed is why the questioner feels they can't distinguish between them despite that.
    – user6559
    Jun 7, 2016 at 13:48

7 Answers 7


Left-nested conditionals, like your (A → B) → C are actually quite rare and sound strange in natural language. Right-nested conditionals A → (B → C) on the other hand are commonplace and are typically considered equivalent to (A ˄ B) → C by the import-export rule. For example, "if I bet on this horse then if it wins I'll buy you an ice cream" is the same as "if I bet on this horse and it wins I'll buy you an ice cream".

  • I think you see a lot of left-nested conditionals using alternate verbs handling hypotheticals. "If this smell means rain, then it's going to rain." That could easily turn into (Smell -> rain) -> rain"
    – Cort Ammon
    Dec 29, 2015 at 23:42
  • 3
    That conditional is problematic, because understood as material implication, it contraposes to ¬rain -> ¬(smell -> rain) which in turn implies ¬rain -> smell, meaning that if it is not raining I can smell this smell (which is presumably the smell of rain) which would be very strange.
    – Bumble
    Dec 30, 2015 at 0:29
  • 1
    Thanks, but does your answer explain the intuition for '(A → B) → C', even if it is rare and strange?
    – user8572
    Dec 30, 2015 at 1:25
  • Almost every scientific definition includes the form you consider rare and strange. "If when one ball hits another, they retain their shapes, that is an inelastic collision." "When the other dogs will not eat while a given dog is eating, that dog is the alpha." So 'quite rare' seems like a drastic overstatement.
    – user9166
    Jan 1, 2016 at 0:52
  • 1
    I don't agree that almost every scientific definition takes this form. In fact, I doubt that many do. It only seems to hold for dispositional properties. An inelastic collision is defined as one in which kinetic energy is not conserved: there is no need to use a nested conditional to define it. Even when one does express a definition conditionally, one would typically prefer to say: if two balls collide, the collision is said to be inelastic if and only if the total kinetic energy is not conserved. This is a right-nested conditional and sounds less clumsy than the left-nested version.
    – Bumble
    Jan 1, 2016 at 2:22

I would argue that the disparity is strictly formal and resists intuitive understanding. It's hard not to use some formal analysis but I shall try to hide it as best I can.

A little bit of analysis tells us that in order for the two statements to exhibit disparity, we require that A and C are each false while B can be either true or false. (See TL;DR section below for details.) This means that obtaining an intuitive feel for this disparity is, in a very real sense, counterintuitive since it relies on the counterintuitive status of (falsetrue) being a true statement.

In order to detail my reasoning, note (again) that we have argued that A and C must be false while B can be either true or false.

In the case B is false, stringing together three false statements lacks an intuitive feel for the disparity. In addition (false → (falsefalse)) resolves to (falsetrue), which is again counter intuitive. And similarly for statement (2).

In the case B is true, then we have to apply our intuition to the conditional (A → B) as (falsetrue), which is again lacking intuitive feel.

So I would argue that this disparity resists intuitive understanding and that understanding is strictly formal.

TL;DR: Here are the details :

According to your own analysis, the two statements are equivalent to

  1. (A → B) → C  ≡ (A ∧ ¬B) ∨ C
  2. A → (B → C)  ≡ ¬A ∨ ¬B ∨ C

  3. Since C appears as a disjunct in each, if we are to achieve disparity between (1) and (2), then we must have ¬C.

Attempting to make statement (1) true will necessarily make statement (2) true since the conjunction in (1) requires ¬B be true. Therefore, we must make statement (1) false and statement (2) true: But how do we do this?

Since C is false by (3), we require (A ∧ ¬B) be false. If A is true, then we would require that B be true; but this combination would produce a contradiction, because the truth of A would make statement (2) false whereas we want (2) to be true.
Therefore we must have ¬A true. Finally, B can be either true or false in order to achieve disparity.


I'm going to label these expressions P and Q:

  • P = (A → B) → C
  • Q = A → (B → C)

As you probably know, if P were the premise a proof, Q could be proven. However, the converse is not true: Starting from Q, P cannot be proven. That means that there is something about Q that is not quite as specific as P. To be precise, P also implies (A ∨ C), and Q doesn't. That means that if (A ∨ C) is added to Q, it will say the same thing as P. This can be verified by proving Q & (A ∨ C) ⊢ P:

A → (B → C), A ∨ C ⊢ (A → B) → C

To illustrate this point, consider the following example:

  • A = The wind blows.
  • B = The barn collapses
  • C = The carpenter is in big trouble.

P: If it's true that the barn will collapse if the wind blows, the carpenter is in big trouble.

The premise implies either A or C is true: either the wind will blow or the carpenter will be in trouble. The carpenter could be in trouble even if the wind doesn't blow, because his trouble depends on a hypothetical condition which is always considered true unless the wind blows. The only way he can escape trouble is for the wind to blow and the barn to remain standing.

However, the conclusion Q doesn't imply that, because if nothing happens, and the carpenter doesn't get in trouble, the expression is still true. It's easier to modify Q to it's equivalent form (A & B) → C, making it more readable:

Q: If the wind blows and the barn collapses, the carpenter is in big trouble.

The second phrase can be reworded to precisely represent the same truth conditions as the first by tacking on (A ∨ C):

Q & (A ∨ C): If the wind blows and the barn collapses, the carpenter is in big trouble, and it will be one way or the other (or both). He'd better hope for wind or he's in trouble.


I might suggest the easiest examples of nested implicsations are most easily seen in definitions.

If when the king dies, his son will take the throne, then we are in a hereditary monarchy.

is an example of (A -> B) -> C

If event A (the king's death) will lead to event B (the son's crowning) in all circumstances then event C (this being a hereditary monarchy) is true.

Then applying the definition is then exactly C -> (A -> B)

Since we are in a hereditary monarchy, when the king dies, his son will take the throne.

Similar examples often arise about mechanical processes with reliable rules:

If whenever you exceed 90 mph, the car stalls, we are not going to be able to cover the necessary 100 miles within the hour.

is an example of (A -> B) -> C

When the temperature is above 80, if you set the thermostat to 72, the blower should come on.

is an example of A -> (B -> C)

English is replete with constructions expressing implication, so these are often expressed with two different ways of writing '->'. As much as this random variation can be confusing, in this case, it helps. You know you have to implications because two different constructions overlap, and the nesting can be determined by considering what condition is most global.



  • A = "I have wings"
  • B = "I can fly"
  • C = "I can go to the moon"

Then the statement (AB) → C (call it Proposition 1) says that

if having wings enables me to fly, then I can go to the moon

while A → (BC) (Proposition 2) says that

if I have wings, then, provided I can fly, I can go to the moon

This is how you interpret the two propositions “intuitively”. When working with formal logic, however, it is important not to be distracted by intuition. Focus on the relations between statements and their truth values, not the meanings of the statements themselves. The two intuitive interpretations above look simiar and may even seem to be identical, but they are NOT identical. If you analyse them closely, you will find that, given that each of the statements A, B. C is false, Proposition 1 is false while Proposition 2 is true.

Let us see why. The assertion AB is true because A is false: it is an example of a vacuous truth. (Intuitively you might say that “if I have wings then I can fly” is a true assertion – but again I must warn you to leave intuition alone for now. The assertion is true not because I have wings but because I don’t!) Hence Proposition 1 ((AB) → C) is of the form TRUE → FALSE, and such an implication is false.

What about Proposition 2 (A → (BC))? Well, since A is false, the whole of the proposition is true, whatever the rest of it may be (it is another example of a vacuous truth). Since I have no wings, any assertion conditional upon my having wings is automatically true.


The statement A -> X can be expressed in plain English in two ways: "A implies X" or "If A is true then X is true". Now since we are looking at A -> (B -> C) pick for X the statement B -> C:

If A is true then (if B is true then C is true)


If A and B are both true then C is true


(A and B) -> C

So now we are not comparing two rather confusing statements anymore, but we are comparing the clearly different statements

(A -> B) -> C


(A and B) -> C

In practice, (A -> B) -> C and A -> (B -> C) give different results if A and C are both false:

If A is false, then (A -> B) is true - a falsehood implies every statement. But (A -> B) doesn't imply C because (A -> B) is true, but C is false.

On the other hand, since we know that a falsehood implies every statement, A implies (B -> C) if A is false.

Let A = "The sky is green", B = "It's raining", C = "The moon is made of cheese". A -> B ("If the sky is green then it is raining") is true. (A -> B) -> C ("If green sky implies rain, then the moon is made of cheese") is false, since green sky does indeed imply rain, but the moon is not made of cheese. On the other hand, (B -> C) could be true or false; "if it is raining then the moon is made of cheese" is false when it rains, and true when it doesn't rain. But A -> (B -> C) is true: Green sky implies any statement.


Take any conditional at all—it doesn't matter if it is left nested or right nested—and then change the order of the antecedents in the conditional. The truth conditions for the conditional, whatever you feel these might be, will not change. If there is a word then delete it. The truth conditions of the conditional won't change. Put it back in a different position: the truth conditions of the conditional won't change:

  • If its divisible by 3, if it's divisible by 2, then it's divisible by 6.
  • If it's divisible by 2, if it's divisible by 3, then it's divisible by 6.
  • If its divisible by 3, then if it's divisible by 2, it's divisible by 6.
  • If it's divisible by 2, then if it's divisible by 3, it's divisible by 6.

It doesn't matter where your antecedents are or what order they or in or where the then goes, the truth conditions of the sentence will never change. So there is no difference between so-called right nested and left nested conditionals

However, if the → is taken to be a material implication—and not a natural language if—then the story is very different. In the Original Poster's example we have the following statements:

  1. (A → B) → C  

  2. A → (B → C) 

In a case where A, B and C are all false (1) is false and (2) is true.

In statement (1), the antecedent conditional (A → B) is true because A is false. However, C is false. So we have a conditional with a true antecedent and a false consequent, which by definition makes the larger conditional false.

In sentence (2) the antecedent of the larger conditional, A, is false and so, by definition, the whole conditional is true.

You must log in to answer this question.