Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

A question about implication in logic

  1. Jan 2, 2013 #1
    According to the truth tables in my computer architecture text, [itex] P → Q [/itex] is false if P is true and Q false; and true otherwise.

    I cannot understand why it is "true" otherwise. For example, if P and Q are both true,
    [itex] P → Q [/itex] is also true, but this makes no sense to me. Perhaps Q is true for some other reason, in which case I would think that there is not sufficient information to conclude P → Q

    Any help? Thanks!

  2. jcsd
  3. Jan 2, 2013 #2


    User Avatar
    Gold Member

    for P -> Q to be true when P is true requires that Q be true. It does NOT require that that be the ONLY condition for which Q is true, so you could have Q true for other reasons as well, regardless of P, BUT ... (reread the first sentence and put the emphasis on the "when")
  4. Jan 2, 2013 #3

    I like Serena

    User Avatar
    Homework Helper

    It says:

    if P is true, then Q is also true.
    if P is false, then Q could be either true or false.

    Now we want to say something about the validity of this statement.
    In particular this statement is true if:
    - both P and Q are true
    - P is false and Q is true
    - P is false and Q is false
  5. Jan 2, 2013 #4

  6. Jan 7, 2013 #5
    A neat way to explain it comes from Ray Smullyan, a Ph.D. in logic from Princeton:

    Imagine I take a card from a deck and give you an assertion:
    "If this card is a Queen of Spades, then it must be black"

    Now surely you would agree with me since we've all seen queens of spades (QS from now on) and they are black.
    Now let's say I turn the card and it is the QS and it is black
    Our first case is met:
    True -> True = True

    Now let's say I turn the card and it a 10 of diamond:
    False -> False = True
    Because it can still be true that the queen of spades is black even if my card is a 10 of diamond... no problem so far.

    Now let's say I turn the card and it a 10 of spades:
    False -> True = True
    Even if my card is not a QS but is black, it can still be true that the QS is black!
    So the statement is true...

    Now comes the hard one:
    I turn the card and it is a QS but red instead:
    then my beginning statement that
    "If this card is the QS, then it must be black" is Incorrect!

    True -> False = False !

    **Even if I'm a cheater for using a red QS lol...

    I hope it helps. I was helped tremendously by this guy with his books on logic.

  7. Jan 7, 2013 #6
    The answer is vacuous. P -> Q is *defined* to be that way.

    One way to think of it, though, is to think of what P → Q means under the Curry-Howard Correspondence.

    Under Curry-Howard, you can think of P → Q as "the set of functions from P to Q". Or maybe if you're a computer scientist: "the set of functions that take an object of type P and return and object of type Q". Whether or not the statement P → Q is true depends on whether you can actually write and typecheck such a function.

    Again, though, the definition is somewhat vacuous. We simply construct the "empty" function. The empty function is a function which which takes an object of type P. Because we can't create objects of type P, we can't run the empty function. Because we can't run it, it never returns. And because it never returns, we don't need to write a return statement. And because there are no return statements, we never need to create an object of type Q.
  8. Jan 7, 2013 #7

    Stephen Tashi

    User Avatar
    Science Advisor

    In the standard sort of mathematical logic a statement must have one and only one of the values ("True","False"). (Instead of speaking of "statements", the term "proposition" is often used to emphasize that logic deals with assertions that are unambiguous as far as their truth or falsity.) In standard logic, a statement can't be assigned the value "undecided" or "unproven". If P and Q are statements and we are going to say "If P then Q" is a statement then "If P then Q" must be be "True" or "False"

    What conditions will make "If P then Q" False? It's clear that when P is True and Q is False that "If P then Q" is False, by the interpretation we use in ordinary language.

    Are there other conditions that might make "If P then Q" False? You might consider inventing a kind of logic where the truth or falsity of "If P then Q" cannot be determined from the truth or falsity of P and Q individually. This would reflect how people think before they are indoctrinated into mathematical logic. When they consider the truth or falsity of specific implications like "If a week as 8 days then the last day of the week is Monday" or "If 3 + 3 = 0 then 6 = 6", they would tend to classify these statements as "unclear" or "undecided". However, if you forced them into a True-or-False decision, they might not follow the same pattern consistently. They might say that "if P then Q" is True for some examples when P is False and False for other examples when P is False.

    A logic where the Truth of "If P then Q" must be decided on a case-by-case basis for each different pair of statements (P,Q) wouldn't be useful in mathematics because mathematics deals with generalities.

    Elementary logic deals only with propositions. When you talk about the statement "If P then Q", you aren't supposed to think of P and Q as "variables". They are supposed to be specific statements. To talk about generalities, you must introduce variables and quantifiers into logic. The standard quantifiers are "For each" and "There exists". For example, "For each x, if x is a real number greater than zero then the additive inverse of x is less than zero".

    Technically, the expression "if x > 0 then -x < 0" is not a statement of the form "If P then Q". This is because "x > 0" isn't a specific statement until a specific value of x is given. When we hear the assertion "if x > 0 then -x < 0" in a math course, it's natural to fill-in the missing quantifier and interpret it to mean "For each x, if x > 0 then -x < 0". This implication takes the form "For each x, if p(x) then q(x)" where p(x) and q(x) are statement functions . The function p(x) become a statement only after a specific value is substituted for x.

    In mathematics, we want generalities such as "For each x, if x >0 then -x < 0" to have exactly one of the values "True" or "False". We don't deal with a logic where a generality is "Somewhat True" or "Mostly False" etc.

    If we want a generality like "For each x, if x > 0 then -x < 0" to be True, then it should be True for all specific values of x. We don't get to say that it is "not applicable" to certain values of x. So if the generality is true for all x, then it must true for values like x = -5. For this to work out, the statement "if -5 > 0 then -(-5) < 0" must be counted as True.

    This line of thinking explains the mathematical convenience of having "if P then Q" be True when P is False. It isn't a proof that "If P then Q" must be that way. Instead you should regard the truth table of "If P then Q" used in logic as a definition of what "If P then Q" means in the context of mathematical logic. (As to what "If P then Q" means to the man-in-the-street, it may not have any consistent truth table.)

    In mathematics, saying "For each x, if x > 0 then -x < 0" is equivalent to saying "For each x such that x > 0, -x < 0". To rephrase the viewpoint of Niles3 and Smullyan, a generality like "For each x, if p(x) then q(x)" is regarded as True when the if-part of the statement correctly "filters out" all cases that the man-in-the-street would say are "not applicable".
  9. Jan 7, 2013 #8

    Jano L.

    User Avatar
    Gold Member

    I had similar problems understanding the meaning of mathematical "if P then Q", or "P implies Q". I think the problem is that in mathematical logic, the statement "P => Q" is something different than the "if-then" statements of ordinary language. Consider these propositions:

    P = there exist natural numbers p,q such that ##\frac{p^2}{q^2} = 2##;

    Q = all three heights of any triangle meet at one point of plane.

    Then the proposition

    Z = (P => Q)

    is, according to the truth table for the operation "=>", true. However, imagine we do not know the table, just that the symbol => has something to do with the implication. How should we read this last proposition then? We might try:

    1st way of reading Z:

    P implies Q


    The existence of the natural numbers p,q such that ##\frac{p^2}{q^2} = 2## implies that all three heights of any triangle meet at one point of the plane.

    However, in ordinary language and thinking, which even mathematics often uses, this is hardly a true statement. Perhaps some people would say that the statement is false on account of the remoteness of algebra and geometry; but I cannot think of any good reason to call it true.

    We can conclude that the proposition "P => Q" cannot be correctly read simply as "if P then Q", nor as "P implies Q".

    Let's try another way:

    2nd way of reading Z:

    whenever P is true, Q is also true.


    whenever there exist natural numbers p,q such that ##\frac{p^2}{q^2} = 2##, all three heights of any triangle meet at one point of plane.

    However, I do not think anybody would evaluate this sentence as true as it stands. The problem is that it talks about what would happen in an impossible situation.

    I think common sense would naturally conclude here that the statement Z has no logical value when P is false.

    I wonder about two things:
    - is it possible to construct mathematical logic in such a way that some statements, like Z, are left without arbitrarily ascribed logical value?
    - still, how to read correctly the logical proposition

    P => Q

    with the standard table for "=>" ? I think we should use another word for "=>" than "implication".
  10. Jan 7, 2013 #9
    Jano what you have discussed is precisely what caused my confusion! Thank you!!
    Perhaps an analysis of the statement NOT(P->Q) and its intuitive meaning can help us delineate the truth table for P->Q, since the truth table of P->Q is just the negative for that of NOT(P->Q). What would you say the intuitive meaning of NOT(P->Q) is?

  11. Jan 7, 2013 #10

    Stephen Tashi

    User Avatar
    Science Advisor

    You can conclude that as a personal opinion, but those are standard translations of "P => Q" used in logic courses. Of course, in logic courses, "if P then Q" is interpreted as the logic course dictates, not as the man-in-the-street dictates.

    Your examples show a desire to interpret "P implies Q" as indicating some sort of cause-and-effect relationship. The general notion of causation is a very complicated topic and I don't think there is any widely accepted mathematical definition for it. (It's even a controversial topic in physics.)

    There is a widely accepted notion in Logic for a limited type of cause-and-effect relationship. That notion deals with whether one logical expression "is derrivable" from another logical expression. If you can derrive the expression Q from the expression P by a series of valid manipulations, this is indicated by [itex] P \vdash Q [/itex]. Of course, this is all suppose to take place in the context of a logical system that has very precise rules for manipulating symbols - not in the ordinary way that non-logicians write mathematical proofs.

    The truth or falsity of [itex] P \vdash Q [/itex] can't be decided merely on the basis of the truth or falsity of P and Q. For example, there might be an expression P that is True and an expression Q that is True, but it might not be possible to derrive the expression Q from the expression P using a llimited set of formal rules.
    Last edited: Jan 7, 2013
  12. Jan 8, 2013 #11

    Jano L.

    User Avatar
    Gold Member

    Intuitively, I would read it as " it is not true that P implies Q", but then the truthfulness of the statement cannot be determined from the truth value of P and Q alone. So intuitive evaluation can turn quite different results than the truth table.

    I found a good discussion of this on Wikipedia - it turns out that the intuitive implication is called "logical implication"and the one based on the truth table is called "material implication".


    -mainly the last section.

    Wikipedia also suggests symbol -> for the material implication (truth table) as you have used it, while the symbol => is proposed for the logical (intuitive) implication. I think this can help to make things clear.
  13. Jan 8, 2013 #12

    Jano L.

    User Avatar
    Gold Member

    I agree wholeheartedly, the terms of causality are very confusing and I think even misused (for example, the notorious arguments that the K-K relations or retarded fields follow from "causality" are not very convincing).

    But I think in the above example, the problem is with something different than causality - it is this difference between the language and material implication.

    Otherwise, I agree with your explanations.

    When we prove, say, Pythagorean theorem from Euclid's axioms, in the proof we use some sort of logical implication (in the intuitive sense). Can we then use the ##\vdash## notation for it in this way?:

    (Euclid's axioms are true) ##\vdash## (the Pythagorean formula is true for any right triangle)
  14. Jan 8, 2013 #13

    Stephen Tashi

    User Avatar
    Science Advisor

    The only problem is cultural. People who write mathematical proofs (correctly) make no distinction in their writing between what you call "material implication" and assertions of the form "If...then..." or "...implies..." . When a writer of mathematical proofs is chatting at someone's birthday party he may use "If ...then...." statements with connotation that there is some sort of cause-and-effect or other phenomena involved. This human inconsistency is not an argument that "if...then..." and "...implies..." have a different interpretation in the context of writing mathematics.

    That captures the spirit of the meaning of [itex]P \vdash Q [/itex], but Euclid's formulation of geometry is not rigorous enough to meet the standards of modern mathematics. You can't prove its theorems by applying a precise framework of logical derrivations. It was considered the model for developing mathematics for many centuries, but not in the 20th and 21st. (Some still regarded it as a statisfactory model for teaching secondary school math.) There have been reformulations of geometry and I'd guess that within those reformulations the Pythagorean theorem could be derrived from the basic axioms. However, I've never investigated this matter.
  15. Jan 16, 2013 #14


    User Avatar

    The fact that the same word "implies" is sometimes used for the statement connective often written with an arrow (→) and sometimes used for "logical implication", i.e., the relationship one sentence has to another when it is not possible for the first to be true and the second false adds to the confusion. The statement connective has the truth table that many have alluded to above. But this is not the relation of logical implication. If we're sloppy about use and mention we might write

    2 + 2 = 4 implies 2 + 2 = 4 or the moon is made of green cheese.

    But if we are being careful and precise what we write is

    '2 + 2 = 4' implies '2 + 2 = 4 or the moon is made of green cheese'.

    Notice that what is joined here are not sentences, but really the names of sentences (notice the single quotes). The notion of logical implication is a metalinguistic notion. The statement connective is a part of the object language.

    There is, of course a relationship between the statement connective and logical implication. One sentence logically implies another just in case the result of joining those sentences with the statement connective is logically true.
    Last edited: Jan 16, 2013
  16. Jan 22, 2013 #15


    User Avatar

    P → Q is defined as
    if P → Q is True then ( if P is True then Q is True . ) is true.
    if ( P is True. Q is True. ) then P → Q is True.
    if ( P is False. Q is True. ) then P → Q is True
    if ( P is False. Q is False. ) then P → Q is True
    if ( P is True. Q is False. ) then P → Q is False.

    P → Q is an information and since there is no statement handling this type of statements, what it says/represents, is up to you. its not a result of already defined assumptions.

    proving P → Q True and what P → Q says/implies are two different things. i am assuming you are asking to prove P → Q . then by looking at the definition of P → Q , if you could prove ( P and Q ) or (P' AND Q) or (P' AND Q') then the assumptions would make P → Q True. it does not matter which statement helps to prove Q True .
    for example
    if you could prove (P AND ((A XOR Q) AND A')) then P → Q is True.

    the other doubt you might be having is that, P and Q does not have to be "related". for example
    if you could prove ( (sun rises in the east) and (there are 5 characters in LOGIC) ) then ((sun rises in the east) → (there are 5 characters in LOGIC)) is TRUE

    so ((sun rises in the east) → (there are 5 characters in LOGIC)) is logically perfect and true statement.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook