30
CS322 Week 2 - Friday

CS322

  • Upload
    marin

  • View
    26

  • Download
    1

Embed Size (px)

DESCRIPTION

Week 2 - Friday. CS322. Last time. What did we talk about last time? Predicate logic Negation Multiple quantifiers. Questions?. Logical warmup. There are two lengths of rope Each one takes exactly one hour to burn completely The ropes are not the same lengths as each other - PowerPoint PPT Presentation

Citation preview

Page 1: CS322

CS322Week 2 - Friday

Page 2: CS322

Last time

What did we talk about last time? Predicate logic

Negation Multiple quantifiers

Page 3: CS322

Questions?

Page 4: CS322

Logical warmup There are two lengths of rope Each one takes exactly one hour to burn

completely The ropes are not the same lengths as each

other Neither rope burns at a consistent speed

(10% of a rope could take 90% of the burn time, etc.)

How can you burn the ropes to measure out exactly 45 minutes of time?

Page 5: CS322

Negating quantified statements When doing a negation, negate the

predicate and change the universal quantifier to existential or vice versa

Formally: ~(x, P(x)) x, ~P(x) ~(x, P(x)) x, ~P(x)

Thus, the negation of "Every dragon breathes fire" is "There is one dragon that does not breathe fire"

Page 6: CS322

Conditionals Recall:

Statement: p q Contrapositive:~q ~p Converse:q p Inverse: ~p ~q

These can be extended to universal statements: Statement: x, P(x) Q(x) Contrapositive:x, ~Q(x) ~P(x) Converse:x, Q(x) P(x) Inverse: x, ~P(x) ~Q(x)

Similar properties relating a statement equating a statement to its contrapositive (but not to its converse and inverse) apply

Page 7: CS322

Necessary and sufficient

The ideas of necessary and sufficient are meaningful for universally quantified statements as well:

x, P(x) is a sufficient condition for Q(x) means x, P(x) Q(x)

x, P(x) is a necessary condition for Q(x) means x, Q(x) P(x)

Page 8: CS322

Multiple Quantifiers

Page 9: CS322

Multiple quantifiers

So far, we have not had too much trouble converting informal statements of predicate logic into formal statements and vice versa

Many statements with multiple quantifiers in formal statements can be ambiguous in English

Example: “There is a person supervising every

detail of the production process.”

Page 10: CS322

Example

“There is a person supervising every detail of the production process.”

What are the two ways that this could be written formally? Let D be the set of all details of the production

process Let P be the set of all people Let S(x,y) mean “x supervises y”

y D, x P such that S(x,y)

x P, y D such that S(x,y)

Page 11: CS322

Mechanics Intuitively, we imagine that corresponding

“actions” happen in the same order as the quantifiers

The action for x A is something like, “pick any x from A you want”

Since a “for all” must work on everything, it doesn’t matter which you pick

The action for y B is something like, “find some y from B”

Since a “there exists” only needs one to work, you should try to find the one that matches

Page 12: CS322

Practice

Given the formal statements with multiple quantifiers for each of the following: There is someone for everyone. All roads lead to some city. Someone in this class is smarter than

everyone else. There is no largest prime number.

Page 13: CS322

Negating multiply quantified statements The rules don’t change Simply switch every to and every

to Then negate the predicate Write the following formally:

“Every rose has a thorn” Now, negate the formal version Convert the formal version back to

informal

Page 14: CS322

Changing quantifier order As show before, changing the order of

quantifiers can change the truth of the whole statement

However, it does not necessarily Furthermore, quantifiers of the same type

are commutative: You can reorder a sequence of quantifiers

however you want The same goes for Once they start overlapping, however, you can’t

be sure anymore

Page 15: CS322

Arguments with Quantified Statements

Page 16: CS322

Quantification in arguments Quantification adds new features to an

argument The most fundamental is universal

instantiation If a property is true for everything in a domain

(universal quantifier), it is true for any specific thing in the domain

Example: All the party people in the place to be are throwing

their hands in the air! Julio is a party person in the place to be Julio is throwing his hands in the air

Page 17: CS322

Universal modus ponens

Formally, x, P(x) Q(x) P(a) for some particular a Q(a)

Example: If any person disses Dr. Dre, he or she

disses him or herself Tammy disses Dr. Dre Therefore, Tammy disses herself

Page 18: CS322

Universal modus tollens

Much the same as universal modus ponens

Formally, x, P(x) Q(x) ~Q(a) for some particular a ~P(a)

Example: Every true DJ can skratch Carl Strikwerda can’t skratch Therefore, Carl Strikwerda is not a true DJ

Page 19: CS322

Inverse and converse errors strike again Unsurprisingly, the inverse and the converse of

universal conditional statements do not have the same truth value as the original

Thus, the following are not valid arguments:

If a person is a superhero, he or she can fly. Astronaut John Blaha can fly. Therefore, John Blaha is a superhero. FALLACY

A good man is hard to find. Osama Bin Laden is not a good man. Therefore, Osama Bin Laden is not hard to find. FALLACY

Page 20: CS322

Venn diagrams

We can test arguments using Venn diagrams

To do so, we draw diagrams for each premise and then try to combine the diagrams

Touchable things

This

Page 21: CS322

Diagrams showing validity All integers are rational numbers

is not rational

Therefore, is not an integer

rational numbers

integers

2

rational numbers 2

2

rational numbers

integers

2

Page 22: CS322

Diagrams showing invalidity All tigers are cats

Panthro is a cat

Therefore, Panthro is a tiger

cats

tigers

cats

Panthro

cats

tigers

cats

tigersPanthro

Panthro

Page 23: CS322

Be careful

Diagrams can be useful tools However, they don’t offer the

guarantees that pure logic does Note that the previous slide makes

the converse error unless you are very careful with your diagrams

Page 24: CS322

Two kinds of equal signs

In Java (and many other languages), there are two kinds of equal signs: = (assignment) and == (testing for equality)

Mathematicians have two as well, but they use the same symbol!

One kind of equal sign is a definition The other kind is a theorem

Page 25: CS322

Definition equals The equal sign used for a definition is stating

some fact, often defining what words mean Example:

x2 = x∙x It's not like some argument was needed to show

that x2 means x∙x, it's the definition! Sometimes bidirectional implication is used

in this situation, arguably in a more clear way: x is even x = 2k, for some integer k

Some people will use ≡ or ≝

Page 26: CS322

Theorem equals

The other kind of equals shows a fact that has been derived from other facts We've discovered that it's true!

Example: 3x + 2 = 11 3x = 9 x = 3

Sometimes confusion arises when people mistake one kind of equals for another

Definition

Theorem

Theorem

Page 27: CS322

Quiz

Page 28: CS322

Upcoming

Page 29: CS322

Next time…

Proofs and counterexamples Basic number theory

Page 30: CS322

Reminders Assignment 1 is due tonight at midnight Read Chapter 4 Start on Assignment 2 The company EC Key is sponsoring a contest to

come up with novel uses for their BlueTooth door access technology Interested? Come to the meeting today at 3:30pm in

Hoover 110 Teams will be formed from CS, engineering, and business

students Ask me for more information!

Also, there's a field trip to Cargas Systems in Lancaster next Friday