Logical Form and Logical Equivalence Lecture 1 Section 1.1 Wed, Jan 12, 2005
Statements A statement is a sentence that is either true or false, but not both. Statements: It is raining. I am carrying an umbrella. Not statements Hello. Are you there? Go away!
Logical Operators Binary operators Conjunction – “and”. Disjunction – “or”. Unary operator Negation – “not”. Other operators XOR – “exclusive or” NAND – “not both” NOR – “neither”
Logical Symbols Statements are represented by letters: p, q, r, etc. means “and”. means “or”. means “not”.
Examples Basic statements p = “It is raining.” q = “I am carrying an umbrella.” Compound statements p q = “It is raining and I am carrying an umbrella.” p q = “ It is raining or I am carrying an umbrella.” p = “It is not raining.”
False Negations Statement Everyone likes me. False negation Everyone does not like me. True negation Someone does not like me.
False Negations Statement Someone likes me. False negation Someone does not like me. True negation No one likes me.
Truth Table of an Expression Make a column for every variable. List every possible combination of truth values of the variables. Make one more column for the expression. Write the truth value of the expression for each combination of truth values of the variables.
Truth Table for “and” pq p q TTT TFF FTF FFF p q is true if p is true and q is true. p q is false if p is false or q is false.
Truth Table for “or” p q is true if p is true or q is true. p q is false if p is false and q is false. pq p q TTT TFT FTT FFF
Truth Table for “not” p is true if p is false. p is false if p is true. p pp TF FT
Example: Truth Table Truth table for the statement ( p) (q r). pqr ( p) (q r ) TTTT TTFF TFTF TFFF FTTT FTFT FFTT FFFT
Logical Equivalence Two statements are logically equivalent if they have the same truth values for all combinations of truth values of their variables.
Example: Logical Equivalence (p q) ( p q) (p q) ( p q) pq (p q) ( p q)(p q) ( p q) TTTT TFFF FTFF FFTT
DeMorgan’s Laws (p q) ( p) ( q) (p q) ( p) ( q) (C++) If it is not true that i < size && value != array[i] then it is true that i >= size || value == array[i] If it is not true that x 5 or x 10, then it is true that x > 5 and x < 10.
Tautologies and Contradictions A tautology is a statement that is logically equivalent to T. A contradiction is a statement that is logically equivalent to F. Some tautologies: p p p q ( p q) Some contradictions: p p p q ( p q)