 # Grading Lecture attendance: -1% per 2 unexcused absences

## Presentation on theme: "Grading Lecture attendance: -1% per 2 unexcused absences"— Presentation transcript:

ICS 253: Discrete Structures I Propositional Logic Section 1.1
Spring Semester 2014 (2013-2) Propositional Logic Section 1.1 Dr. Nasir Al-Darwish Computer Science Department King Fahd University of Petroleum and Minerals

Grading Lecture attendance: -1% per 2 unexcused absences
Assignments & Quizzes: 20% Two Major Exams: 25% per exam Final Exam: 30%

Expectations This is really a fun course!
The course covers some of the most useful math you’ll ever learn. It teaches abstraction, describe (or model) a given problem using precise formal notation Hints for success Read the textbook. Lectures really do help! Do the homework.

Propositional Logic Traditionally, logic distinguishes valid and invalid arguments (2-valued logic). A claim is either true or false. There are other types of logic, e.g. fuzzy logic The building blocks of logic are propositions. A proposition (claim) is a declarative statement that is either true or false.

Propositions versus Not Propositions
What’s a proposition? A proposition is a declarative statement that’s either TRUE or FALSE (but not both, not conditional). Propositions Not Propositions 3 + 2 = 32 Bring me coffee! Math is my favorite subject. 3 + 2 Every cow has 4 legs. Do you like Cake? There is other life in the universe. I will go fishing tomorrow. X – 2 = 10 (depends on X)

Atomic versus Compound Propositions
A proposition is either atomic (simple) or compound A compound proposition is formed by combining simple propositions using logical operators (operations) Logical Operation Symbol Negation (NOT) Conjunction (AND) Disjunction (OR) Exclusive OR Implication (imply) Biconditional (2-way imply)

Logical Operations Let p & q be propositions, then the following are compound propositions: Negation: p = not p Conjunction: p  q = p AND q Disjunction: p  q = p OR q Exclusive OR: p  q = p XOR q Implication: p  q = if p then q Biconditional: p  q = p if and only if q

Precedence of Logical Operators
In a parenthesized expression, the inner most parenthesized part is computed first Binary operators with same precedence are applied left-to-right; unary are applied right-to-left The following is the order of operators by precedence  ,  , v ,  ,  This means for example (assuming parenthesis are not present) (((p(q)) v p v q)  q)  ((p(q)) v p)

Truth Tables A truth table shows the truth values of a compound proposition in relation to the truth values of its constituent propositions Normally, the truth table will have as many rows as the different possible truth value of its constituent propositions. For example, a compound proposition involving two simple propositions P, Q will have 4 rows (4 different T/F combinations for P and Q).

Propositional Logic - negation
Suppose p is a proposition. The negation of p is written p and has meaning: “It is not the case that p.” Ex. P = Pizza is my favorite food. P = It is not the case that pizza is my favorite food. More simply, pizza is NOT my favorite food. p p F T Note that p is a proposition! Truth table for negation

Propositional Logic - conjunction
Conjunction corresponds to English “and” p  q is true exactly when p is true and q is true (or both are true). Ex. Amy is curious AND clever. p q p  q F T Truth table for conjunction

Propositional Logic - disjunction
Disjunction corresponds to English “or” p  q is true when p is true or q is true (or both are true). Ex. Michael is brave OR nuts. p q p  q F T Truth table for disjunction

The implication The implication p  q corresponds to English: “if p then q” or “p implies q” P  Q can be considered as a contract that relates a condition P to a conclusion Q P = build me a house, Q = pay you \$1 million If you build me a house then I will pay you \$1 million The contract is violated if the house is built but the payment is not made p  q is false only in the case where p is true and q is false If p then 2+2=4. (This is true. Why?) p q p  q F T Truth table for implication

Propositional Logic - logical equivalence
How many different logical binary operations could we define? 16 How many different logical operations do we need? ?? To answer, we need the notion of “logical equivalence.” p is logically equivalent to q if their truth tables are the same. Logical equivalence is denoted by p  q (or p  q).

Propositional Logic - logical equivalence
Challenge: Try to find a proposition that is equivalent to p  q, but that uses only the connectives , , and . p q p  q F T p q  p  p  q F T

Propositional Logic – a proof of one famous 
This is a “proof” of “law of distributivity.” Distributivity: p  (q  r)  (p  q)  (p  r) All truth assignments for p, q, and r. p q r q  r p  (q  r) p  q p  r (p  q)  (p  r) F T

Expressing Implications
The implication p  q essentially says that we cannot have p true yet q is false, (p  q). Thus, p  q  (p  q) (1) . (The equivalence can be shown by truth table) Simplifying the RHS (use DeMorgan’s law) , gives p  q  p  q (2) It is important to observe that p  q also means (because we cannot have p and not q): not q  not p It is easy to show that p  q   q   p (3) This last equivalence is known as the ContraPositive (negative of positive) . I liken it to “the cub is half full  the cub is half empty”

Expressing Implications – cont.
Definition: p is sufficient for q if whenever p is true, q is true. Thus, p  q means that p is sufficient for q. Definition: p is necessary for q if whenever p is false, q is false. Thus, p  q means that q is necessary for q. (recall from previous slide that p  q   q   p)

Expressing Implications – cont.
The following are some of the ways of expressing p  q p implies q if p then q if p, q q if p (stating the conclusion first) p only if q* (see next two slides for justification) p is sufficient for q q is necessary for p q whenever (when) p q follows from p q unless ¬p* ** These seem confusing

Expressing Implications – cont.
p  q can be expressed as: p only if q: p cannot be true if q is not true This corresponds to the contrapositive of p  q q unless  p If  p is false, then q must be true Example: If You fail the final exam then you will get F You will get F unless you do not fail the final exam

Propositional Logic - biconditional
The biconditional proposition p ↔ q (read as, p if and only if q) states that p and q are always equal (either they are both true or both false) The biconditional proposition p ↔ q is equivalent to “(p  q) and (q  p)” Because in the expression “p if and only if q” , “p if q” is q  p, it follows that p  q is “p only if q” Question: Is p ↔ q  (p q)  (p  q)? p q p ↔ q F T Truth table for biconditional

Propositional Logic - some definitions
Note: p  q  q  p Contrapositives: p  q and q  p Ex. “If it is noon, then I am hungry.” “If I am not hungry, then it is not noon.” Converses: p  q and q  p “If I am hungry, then it is noon.” Inverses: p  q and p  q “If it is not noon, then I am not hungry.”

Propositional Logic - more definitions…
A tautology is a proposition that’s always TRUE. A contradiction is a proposition that’s always FALSE. p p p  p p  p T F

Translating English Sentences
English (and every other human language) is often ambiguous. Translating sentences into compound propositions removes the ambiguity. Example: How can this English sentence be translated into a logical expression? “You can access the Internet from campus only if you are a computer science major or you are not a freshman.” Solution: Let a, c, and f represent “You can access the Internet from campus”, “You are a computer science major”, and “You are a freshman” The sentence can be translated into: a → (c ν ¬f).

Translating English Sentences
Example: How can this English sentence be translated into a logical expression? “You cannot enter into the pool if you are under 4 feet tall unless you are older than 16 years old.” Solution: Let p, r, and s represent “You can enter into the pool” , “You are under 4 feet tall”, and “You are older than 16 years old” The sentence can be translated into: (r Λ ¬ s) → ¬p.

Propositional Logic – why?…
We’re primarily using propositional logic as a foundation for formal proofs. Later we will study different proof methods and these are needed for developing (or ensuring correctness) of algorithms. Propositional logic is a key to writing correct program code…you can’t do any kind of conditional (if) statement without understanding the condition you’re testing. The logical operations we’ve discussed are also found in hardware and are called “logic gates.”