I am studying mathematical logic and programming logic, and would like to know the difference between Logical Implication and Logical Equivalence?
I am studying mathematical logic and programming logic, and would like to know the difference between Logical Implication and Logical Equivalence?
Starting from my answer on your other question . We have that a logical implication is a clause in the following way:
And it means:
If p is true, then q is also true.
But what if p is false? Well, in this case, we can say nothing about q without further information. That is, q may or may not be true.
This contrasts with the following logical equivalence:
What does it mean:
is true if and only if q is also true.In this case, if p is false, then q will also be false, after all q can only be true if p is also.
This is called equivalence because of the following:
If p is true, q is also true. If p is false, q is also false.
Or simplifying:
p = q
It turns out that equality in logic is called equivalence . For equality, we use =
, whereas for equivalence, we use ↔
. This might seem silly in principle, but it is so that logical expressions with mathematical subexpressions like the following can be read accurately without needing many parentheses:
= 0 = 0
Regarding implication we have the following:
a a
Home ∴ a ↔ b
And that's why the ↔
symbol is used, because logical equivalence can also be interpreted as a two-way implication.
And obviously the demonstration can also be done in the opposite direction:
a ↔ b
Home ∴ a a b
Finally, we still have the or-exclusive, which is the exact opposite of equivalence. One way to present it is like this:
Or p is true, or q is true, but not both.
Now, in this case, it is not difficult to conclude that this means that if only one of them can be true, then when one is true, the other will automatically be false and when one is false, the other will automatically be true. And therefore, the or-exclusive means this:
But again, so that we do not need many parentheses in logical expressions
with mathematical subexpressions, some other symbol is used to denote the or-exclusive. The most common ones I see are ⊻
and ⊗
, although there are others.
"Logical Implication" is established between two concepts or propositions, in such a way that the affirmation of the truth of one of them leads to the necessary inference of the truth of the other. It indicates that one condition must necessarily be fulfilled for the other to be true.
Ex: if...else
"Logical Equivalence" is a relation of logical equality or mutual implication between two propositions, so that each is true only if the other is true.
Ex: x===y