A random logic question—why is "if A then B" true whenever A is false?

MaxMath

Junior Member
Joined
Mar 22, 2023
Messages
115
This may be considered as a math question (propositional logic).

We know that the proposition "if A then B" is evaluated to be false only when A is true but B is false; it is true for all other cases, most notably when A is false regardless of whether B is true or false.

Can someone shed some light on the underlined part—is this a 'natural' result (i.e. something that follows logic and the common sense of language, or something like that) or is it just a 'convention', or arrangement (that is, "let's take/define it as this ...")?

Thanks.
 
If I have $10,000,000, then I'll buy you a new car.

This statement is false only if I have $10,000,000 and I don't buy you a new car.
Well, if I don't have $10,000,000 then I didn't say anything that you can prove to be untrue, so it must be true..
 
I didn't say anything that you can prove to be untrue, so it must be true..
Thanks. I hear your point. That is the greatest extent to which I understood my question. But I still find it difficult to put a "=" between "I didn't say anything that you can prove to be untrue" and "it must be true". The former only means there is nothing that is untrue, or false. But in the same way, there is also nothing that is true.

This reminds me of the convenient "? :" form of Boolean expression in C++ (with pseudo-code in "[]" below), such as in—
if (A? B : false) {[do something]}
where "A? B : false" is the shorthand form of (in terms of semantics, though this syntax is not acceptable by a C++ complier)—
if (A) B else false
where false must be explicitly specified. It does not work with(if I remember correctly: I have not been coding with C++ for too long)—
if (if(A) B) {[do something]}
This will give us a syntax error.

(The top line is equivalent to: if(A) { if(B) {[do something]} }. )

To help you better understand my question (or rather my difficulty), I'm only memorising this as a rule but it resists to become my intuition.

I'm happy with an answer like "Indeed, this is only a convention, just to make the rules of propositional logic tidy, complete, and reconcilable". But I would like a positive confirmation from people who are deep in this area.
 
Last edited:
More important is, in the above example of C++ Code (I believe Python has a similar "? :" device),
if (A? B : false) {[do something]}
is semantically different from (suppose that C++ accepts this syntax)
if (if(A) B) {[do something]}

The big difference is that, for the former, when A is false, "something" will not be done; whereas for the latter—following the subject ruleof propositional logic—"something" will be done (because "if(A) B" gives true when A is false)!

Of course, this is not sufficiently a proof that this rule is wrong; it only illustrates its difference from the logic in commonly accepted syntax of programming languages, which are essentially all about logic.
 
We know that the proposition "if A then B" is evaluated to be false only when A is true but B is false; it is true for all other cases, most notably when A is false regardless of whether B is true or false.

Can someone shed some light on the underlined part—is this a 'natural' result (i.e. something that follows logic and the common sense of language, or something like that) or is it just a 'convention', or arrangement (that is, "let's take/define it as this ...")?
This is a common question, to which there are several answers, some in everyday thought and some in terms of formal logic. Ultimately, it is really a matter of definition: We choose to define the conditional statement this way within mathematics, because it makes certain aspects of logic work. And we have to make some definition, unless we want to say that F-->T is just undefined, or some third logic state.
  • Suppose I say, "If I win this game, I'll give you $100", and I lose the game. I give you nothing. Did I lie? Or, I give you $100 anyway. Did I lie now? No, because I made no promise about what I would do if I didn't win.
  • What we are doing there is following the idea of "innocent until proven guilty": a statement can't be called false without evidence. So we call it true in this case, because we need a two-valued logic. That is, we have to call it either true or false, and false doesn't make sense.
  • In particular, one application of conditional statements is in analyzing logical arguments, where we might say, "If [premise 1] and [premise 2], then [conclusion]". We consider the argument valid if the conditional statement is true regardless of the truth values of the premises. But if we called a conditional statement false when the condition is false, then valid arguments would be called invalid. We must define the conditional as we do in order to talk about valid arguments in this way.
This last idea is what I consider to be the strongest reason for the definition.
 
This is a common question, to which there are several answers, some in everyday thought and some in terms of formal logic. Ultimately, it is really a matter of definition: We choose to define the conditional statement this way within mathematics, because it makes certain aspects of logic work. And we have to make some definition, unless we want to say that F-->T is just undefined, or some third logic state.
Thank you. That's the kind of answer I was after.

Suppose I say, "If I win this game, I'll give you $100", and I lose the game. I give you nothing. Did I lie? Or, I give you $100 anyway. Did I lie now? No, because I made no promise about what I would do if I didn't win.
Exactly. Strictly, it's simply undefined without this rule.

What we are doing there is following the idea of "innocent until proven guilty": a statement can't be called false without evidence. So we call it true in this case, because we need a two-valued logic. That is, we have to call it either true or false, and false doesn't make sense.
This is a good rationale for it. And "innocent until proven guilty" is a good analogy!

In particular, one application of conditional statements is in analyzing logical arguments, where we might say, "If [premise 1] and [premise 2], then [conclusion]". We consider the argument valid if the conditional statement is true regardless of the truth values of the premises. But if we called a conditional statement false when the condition is false, then valid arguments would be called invalid. We must define the conditional as we do in order to talk about valid arguments in this way.
You say this is the strongest reason. But I'm probably not getting it. For example, why do you say "We consider the argument valid if the conditional statement is true regardless of the truth values of the premises"? What do you refer to by "statement"? I know you refer to the "if ... then ..." proposition by "argument". I hope I'm not too fussy about terms or semantics here. But since this is very nuanced, I must make sure I understand what you really mean.

Or, if I'm holding the wrong end of the stick, can you please elaborate a little bit on this paragraph?
 
Last edited:
You say this is the strongest reason. But I'm probably not getting it. For example, why do you say "We consider the argument valid if the conditional statement is true regardless of the truth values of the premises"? What do you refer to by "statement"? I know you refer to the "if ... then ..." proposition by "argument". I hope I'm not too fussy about terms or semantics here. But since this is very nuanced, I must make sure I understand what you really mean.
It sounds like you may not know what an argument in this sense is, so this won't be a strong reason (yet?) for you! See here for some sources:





I call this a strong reason, because this is how we use logic: to decide whether our reasoning is valid. Only with the standard definition of the truth value of a conditional statement does this method work. Many people don't consider analogies like "innocent until proven guilty" to be sufficiently mathematical, so they need this sort of explanation.
 
Thanks for the references.

Many people don't consider analogies like "innocent until proven guilty" to be sufficiently mathematical, so they need this sort of explanation.
Surely, I'm one of these people. I don't think this is sufficiently mathematical. Not at all. But this does not means we cannot define truth value as this rule does. This 'principle', in my opinion, only makes this rule look 'compatible', or 'align', with our other existing ones, so the introduction of this rule does not make us feel awkward or make the subject of logic look ugly—beauty is one of the utmost criteria for all disciplines.

I'm reasonably exposed to the subject of logic, so I think I understand the meaning of these terms (coincidentally with a fresh understanding of the difference between "statement" and "proposition" very recently, which I think is relevant here)—though, of course, there will always be nuances that I will become aware but did not know before!

I still struggle to understand "We consider the argument valid if the conditional statement is true regardless of the truth values of the premises".

The meaning of "premises" is clear, they refer to "[premise 1] and [premise 2]" in "If [premise 1] and [premise 2], then [conclusion]". Ok, I think I get "argument" now—roughly, it's the business of asserting something using logic. "Condition statement" should then mean this sentence, as a linguistic device, to express a proposition that is behind the sentence (or statement) "If [premise 1] and [premise 2], then [conclusion]". I also understand the validity (or soundness) of an argument, which means whether the conclusion indeed logically follows from the premises (without concerning the truth value of the premise or the conclusion).

I take it as, by "the conditional statement is true", you mean that the proposition expressed by the full statement (or sentence) is true (because only propositions necessarily bear truth). Then why is it a valid argument when this proposition is true regardless of whether the premises are true or not? Do you actually mean "We consider the argument valid if the conditional statement is true when the premises are false, regardless of the truth values of the conclusion"?

I hope my brain is not just stuck in a weird way here.
 
Last edited:
Only to formalise terminology a bit, rather than using my loose and inaccurate renditions, argument (and its validity) means (based on another book I'm now reading—Thinking it through)—

An argument is a sequence of declarative sentences that leads us to a final sentence, which is the conclusion. The other sentences, the premises, are supposed to support the conclusion. An argument is valid when any situation that makes the premises true makes the conclusion true also. If an argument is valid, we say that the conclusion follows from—or is a (deductive) consequence of—the premises.
 
Last edited:
I don't quite follow this, particularly the highlighted line in the attached—why columns for u and t need to be repeated (and in the next table below, t->u and u become premises while t is now conclusion)?
I suggest you back up to the start of the chapter to get the full context. Your question is partly just about their style of making truth tables, and also requires understanding of other basics you may not be familiar with from their perspective.

But the main point is that the argument they are discussing is

1681820746635.png

where the premises are [imath]t\rightarrow u[/imath] and [imath]u[/imath], and the conclusion is [imath]t[/imath]. So they made a truth table for [imath]((t\rightarrow u)\wedge u)\rightarrow t[/imath].
 
I suggest you back up to the start of the chapter to get the full context. Your question is partly just about their style of making truth tables, and also requires understanding of other basics you may not be familiar with from their perspective.

But the main point is that the argument they are discussing is


where the premises are [imath]t\rightarrow u[/imath] and [imath]u[/imath], and the conclusion is [imath]t[/imath]. So they made a truth table for [imath]((t\rightarrow u)\wedge u)\rightarrow t[/imath].

Thanks for your patience in clarifying. Yes, it’s likely I need to read more chapters before and after this one to follow its flow. I I did quickly skim through this one but was left puzzled.

I understand that the argument you are referring to is the purpose of having those duplicated columns. That’s all good. But how can this be a valid argument? It would be valid only if the “if” was substituted by “iff”.

Ok, later in the page it’s said that this is indeed an invalid argument.

Let me read a bit more.
 
Last edited:
I didn't find anything particularly helpful to my question by covering more chapters. The most likely candidate is

2.3: Implications

but it simply says "An implication is the compound statement of the form “if p, then q.” It is denoted p⇒q, which is read as “p implies q.” It is false only when p is true and q is false, and is true in all other situations", which is not helpful.
 

2.6 Arguments and Rules of Inference

math.libretexts.org
math.libretexts.org
Now I realised I misread this terribly, though it's still not very helpful even when now I read it correctly (I think!).

I thought about this question (and related problems) very hard over a couple of days. At one point, when sitting on the floor pondering, I felt my head was literally cracking. On other two occasions in the early morning when I was asleep, or half asleep half awake, and then thoughts came up, I didn't want to lose them—and yet I didn't want to get up too early (that way my day will be miserable)—so had to record them as murmurs (since I was not fully awake) with my phone.

I think I have finally got my head around it. In a nutshell, I now tend to take it as "if A then B" truly has a truth value when A is false, which is true regardless of B. In other words, this is not a convention, an artificial arrangement, or by definition (at least not by 'direct' definition). I also reached an explanation for the apparent 'mismatch' between this understanding and how "if A then B" is used in coding. I will try to pull up a tiny essay with LaTex on my thoughts about this (as an exercise to pick LaTex up a bit more). But I will take my time.

All the answers above to my questions have been very helpful, so thanks. But no one (perhaps including myself) could be really sure exactly how and where (both 'horizontally' and 'vertically') I was stuck.
 
Last edited:
Top