Go backward to 2.2.5 Implications Go up to 2.2 Propositional Logic Go forward to 2.2.7 Summary |
(A <=> B)is a formula.
Alternative Forms An equivalence A <=> B is often also expressed as
equiv(A, B)
.
The last line denotes the input syntax of the Logic Evaluator.
In other words, A <=> B is true if and only if A and B have the same truth value.
A B A <=> B false false true false true false true false false true true true
Operational Interpretation In the Logic Evaluator, an implication is represented by an object of the Java type
The Java expressionpublic final class Equiv implements Formula { private Formula formula0; private Formula formula1; public Equiv(Formula _formula0, Formula _formula1) { formula0 = _formula0; formula1 = _formula1; } public boolean eval() throws EvalException { return (formula0.eval() == formula1.eval()); } }
(new Equiv(A, B)).eval()
computes
the truth value of A <=> B. As one can see, the result is
true only if A and B have the same truth value.
A <=> B iff B <=> A A <=> B iff (A /\ B) \/ (~A /\ ~B) A <=> B iff (A => B) /\ (B => A)
Because of the last relationship, the equivalence A <=> B is frequently defined just as a syntactic abbreviation for (A => B) /\ (B => A).
A iff Bholds.
This law introduces a relationship between ` => ' and the notion of equivalence that justifies to call this operator by the same name.