Multi-Place Predicates and Multiple Quantifiers
|
|
- Jade Lindsay Warner
- 5 years ago
- Views:
Transcription
1 Multi-Place Predicates and Multiple Quantifiers So far we have looked only at monadic predicates. That is, predicates that apply to only one thing. For instance, Fa might mean Alice is friendly. But, what about predicates that involve TWO individuals otherwise known as relations for instance, Alice loves Burt? We will now introduce a way to symbolize relations: Sentence Symbolization Alice loves Burt. Lab Burt loves Alice. Lba Alice does not love Burt. Lab If Alice loves Burt, then Burt loves Alice. Lab Lba Burt loves himself. Lbb Alice loves something. (ꓱx)Lax Something loves Alice. (ꓱx)Lxa Alice loves everything. (ꓯx)Lax Alice loves someone. (ꓱx)Lax * Everyone loves Alice. (ꓯx)Lxa ** If anyone loves Alice, then Burt loves Alice. (ꓱx)Lxa Lba *** * Technically, this says Alice loves something. When we say Alice loves someone we do not mean just any old thing, but some PERSON. Hence, we really ought to interpret the symbolizations of the starred statements as follows: * (ꓱx)(Px Lax) There exists an x such that x is a person and Alice loves x. ** (ꓯx)(Px Lxa) For all x, if x is a person, then x loves Alice. *** (ꓱx)(Px Lxa) Lba If there exists an x such that x is a person and x loves Alice, then Burt loves Alice. But, for simplicity, for propositions like this, we will assume that, e.g., (ꓯx) refers to a restricted domain, and means something like for all PEOPLE rather than for all THINGS. We can also express 3-place relations (and 4-place, 5-place, and so on). Alice passed the salt from Burt to Casey. Burt stood between Alice and Casey. Alice believes that Burt drove Casey to Daphne s place. Pabc Sbac Babcd 1
2 Here s a tricky one, because it involves two quantifiers (and two variables): (1) Someone loves everyone. (ꓱx)(ꓯy)Lxy We need two DIFFERENT variables here. What the symbolization literally says is: (1) There exists an x such that, for all y, x loves y. Note: The statement (ꓱx)(ꓯx)Lxx is not a wff. Note that, according the criteria for binding, the existential quantifier doesn t bind anything! Here are a few more: (2) Someone is loved by everyone. (ꓱx)(ꓯy)Lyx There exists an x such that, for all y, y loves x. (3) Everyone loves someone. (ꓯx)(ꓱy)Lxy For all x, there exists a y such that x loves y. (4) Everyone is loved by someone. (ꓯx)(ꓱy)Lyx For all x, there exists a y such that y loves x. Here are two complicated sentences involving THREE quantifiers: (5) Everyone loves at least one person (ꓯx)(ꓱy)[Lxy (ꓯz)Lyz] who loves everyone. Translation: For all x, there exists some y such that x loves y, and, for all z, y loves z. (6) No one loves anyone who loves no one. (ꓱx)(ꓱy)[Lxy (ꓯz) Lyz] Translation: It is not the case that there exists an x and there exists a y such that x loves y, and, for all z, y does not love z. (7) Every unicorn is friends with a dragon. (ꓯx)[Ux (ꓱy)(Dy Fxy)] Translation: For all x, if x is a unicorn, then there exists a y such that y is a dragon and x is friends with y. 2
3 The Finite Universe (Counterexample) Method for Multiples Previously, we learned the finite-universe method of demonstrating invalidity for singlepredicate wff s. We can easily extend that method to wff s with multi-place predicates and multiple quantifiers. Consider, for instance: (ꓯx)(ꓱy)Lxy. The main operator here is the universal quantifier, ꓯ. Remember that ꓯ s are disguised conjunctions, so the main operator of our translation will be. But, we also learned that ꓱ s are just disguised disjunctions, so our translation will be a conjunction of disjunctions: (ꓯx)(ꓱy)Lxy for a domain with ONE object {a} in it: Laa (for one-object domains, just replace all variables with that object s letter; Δxy Δaa) (ꓯx)(ꓱy)Lxy for a domain with TWO objects {a, b} in it: (Laa Lab) (Lba Lbb) Say that (ꓯx)(ꓱy)Lxy means Everything loves something. In a two-object universe there is only a and b (say, Anne and Brett). Everything loves something means that Anne loves something AND Brett loves something. In a two-object universe, the something that they love must either be his/herself or the other person. That means Anne either loves herself or Brett; and Brett either loves Anne or himself. Thus, the interpretation above, which is a conjunction of disjunctions: (Anne either loves herself, or she loves Brett) AND (Brett either loves Anne, or himself) (ꓯx)(ꓱy)Lxy for a domain with THREE objects {a, b, c} in it: (Laa Lab Lac) (Lba Lbb Lbc) (Lca Lcb Lcc) * * technically, there should be lots of brackets here Imagine a universe with only three objects in it: Anne, Brett, and a cookie. If Everything loves something is true, then: (Anne loves either herself, Brett, or the cookie) AND (Brett loves either Anne, himself, or the cookie) AND (the cookie loves either Anne or Brett or itself) Sure, it would have to be a sentient cookie for the third conjunct to come out true, but you get the point. 3
4 Example: Let s do an example. Use the finite-universe method to demonstrate that the following inference is invalid: (1) Everyone loves someone. (2) Therefore, someone loves everyone. First, let s translate these into symbolic form. (Note: For simplicity, we will ignore the fact that it says everyone instead of everything ; let us stipulate that the context of this inference is one where the domain under consideration includes only people in it.) (1) (ꓯx)(ꓱy)Lxy (2) (ꓱx)(ꓯy)Lxy In a two-object universe {a, b}, we would translate these as: (1) (Laa Lab) (Lba Lbb) (2) (Laa Lab) (Lba Lbb) Let s try the following interpretation: Domain: {Anne, Brett} Lxy = x loves y a = Anne b = Brett True statements: Lab ; Laa ; Lba ; Lbb [Basically, this is a universe where Anne and Brett love each other, but not themselves.] Does the premise come out true while the conclusion comes out false? Yes! (Laa Lab) (Lba Lbb) F T T T T F F (Laa Lab) (Lba Lbb) F F T F T F F In this universe, consisting of only two people, everyone is loved by someone (namely, Anne is loved by Brett and Brett is loved by Anne), but no one loves everyone (since neither Anne nor Brett love themselves). And, if the inference above is invalid in ONE conceivable universe, then it is invalid in ALL possible universes (including this one). So, the inference is invalid. Hooray! You ve learned how to use to finite-universe method to demonstrate invalidity for multi-place predicates and multiple quantifiers. 4
5 Derivation Rules for Multiples Note the following additions to the derivation rules: 1. ꓱI for Multi-Place Predicates: Here are some new ways to use ꓱI: 1 (1) Laa A 1 (2) (ꓱx)Lxa 1, ꓱI 1 (3) (ꓱx)Lax 1, ꓱI 1 (4) (ꓱx)Lxx 1, ꓱI Lines (2) (4) are all permissible uses of ꓱI. Line (1) might say Alice loves herself. From this it should be obvious that these statements follow from (1): 1 (1) Laa A Alice loves herself. 1 (2) (ꓱx)Lxa 1, ꓱI Something loves Alice. 1 (3) (ꓱx)Lax 1, ꓱI Alice loves something. 1 (4) (ꓱx)Lxx 1, ꓱI Something loves itself. Note that we might also decide to replace each a one at a time. So, the following inference to line (3) is also permissible: 1 (1) Laa A Alice loves herself. 1 (2) (ꓱy)Lay 1, ꓱI Alice loves something. 1 (3) (ꓱx)(ꓱy)Lxy 2, ꓱI Something loves something. But, sometimes, you ll be introducing an existential quantifier to a wff with free variables in it. In such instances, if Δ contains TWO or more DIFFERENT variables, then you CANNOT replace a variable with one that Δ already contains. For instance, consider: 1 (1) Lxy A 1 (2) (ꓱy)Lyy 1, ꓱI This is NOT permissible because here, you are replacing the x in the original statement with a y, even though the original statement already contained an unbound y. However, the following moves ARE permissible, because we are replacing x with either itself or some variable that the original statement does not already contain: 1 (1) Lxy A 1 (2) (ꓱx)Lxy 1, ꓱI * 1 (3) (ꓱz)Lzy 1, ꓱI * * Restriction: If the formula being bound to ꓱ contains multiple free variables, the variable chosen to be bound to ꓱ cannot be the same as any of the other remaining free variables. 5
6 2. ꓯE for Multiple Operators: When there are multiple operators, you may only eliminate an operator if it is the MAIN (i.e., leftmost) operator. So, for instance, the following move is NOT permissible: 1 (1) (ꓯx)(ꓯy)Lxy A 1 (2) (ꓯx)Lxy 1, ꓯE 3. ꓱE When There Are Multiple Quantified Assumptions: Keep in mind that the following restriction still holds: Last week, we said that when using ꓱE [replacing (ꓱx)Δx with Δx for the purposes of our assumption to be used for ꓱE], we could replace x with any variable we wanted, so long as x did not occur freely in any prior assumption. So, the following is NOT permissible: 1 (1) (ꓱx)Sx A 2 (2) (ꓱx)Cx A 3 (3) Sx Ass. (ꓱE) 4 (4) Cx Ass. (ꓱE) XXX Here, TWO different assumptions are being made for the purposes of ꓱE one in line (3) to eliminate the ꓱ from line (1), and another in line (4) to eliminate the ꓱ in line (2). But, assumptions (3) and (4) should NOT make use of the same variable. Why not? After all, the bound variable in line (1) is an x AND the bound variable in line (2) is ALSO an x. Well, to illustrate why line (4) should have used a different variable, consider what would be derivable if we continue the mistaken proof above: 1 (1) (ꓱx)Sx A 2 (2) (ꓱx)Cx A 3 (3) Sx Ass. (ꓱE) 4 (4) Cx Ass. (ꓱE) XXX 3, 4 (5) Sx Cx 3, 4, I 3, 4 (6) (ꓱx)(Sx Cx) 5, ꓱI 3 (7) Cx (ꓱx)(Sx Cx) 4, 6, I 2, 3 (8) (ꓱx)(Sx Cx) 2, 7, ꓱE 2 (9) Sx (ꓱx)(Sx Cx) 3, 8, I 1, 2 (10) (ꓱx)(Sx Cx) 1, 9, ꓱE Imagine that line (1) says that Something is a snake and that line (2) says that Something is a cat. If the derivation above were permissible, we d have just demonstrated that we can derive Something is both a snake and a cat from these two premises clearly this does not follow. 6
7 Why did this mistake happen? Well, line (1) says that SOMETHING is a snake. Meanwhile, line (2) says that SOMETHING is a cat just because both premises make use of x as their variables, this does NOT mean that lines (1) and (2) are referring to ONE AND THE SAME SOMETHING. Imagine that I told you that Something is a snake and Something is cat. It would be absurd for you to conclude that, Because you used exactly the same word in each claim namely something I can conclude that you were referring to one and the same thing each time. Similarly, just because both premises make use of an x, this does not indicate that the x refers to one and the same thing in each premise. In short, the rule here is that, when choosing a variable to use in our assumption for the purpose of ꓱE, that variable cannot occur freely in ANY other prior assumption. So, because x occurs freely in the assumption on line (3), it is not permissible to make use of x in our assumption for ꓱE on line (4). Note #1: Note that this only applies to the variable that is bound to the ꓱ. So, the following move IS permissible: 1 (1) (ꓱx)Lxy A 1 (2) Lxy Ass. (ꓱE) * Notice that (2) DOES contain a free variable that DOES occur freely in some prior assumption; namely, y occurs freely in both (1) and (2). But, the assumption in line (2) is permissible because the restriction only applies to the variable that is bound to the ꓱ that is being eliminated. So, since x is the variable that is bound to the ꓱ in line (1), it is x that cannot occur freely in any prior assumption when we assume Lxy on line (2). Note #2: Note that a similar thing can be said of both ꓯE and ꓯI. The following uses of ꓯE and ꓯI are permissible: 1 (1) (ꓯx)Lxy A 1 (2) Lxy 1, ꓯE 1 (3) (ꓯx)Lxy 2, ꓯI Our universal elimination on line (2) DOES contain a variable that occurs freely in the assumption that it rests on (namely, y ). Similarly, so does our universal introduction on line (3). However, both are permissible because the restriction on ꓯE only applies to the variable that is being UNBOUND FROM the ꓯ, and the restriction on ꓯI E only applies to the variable that is being BOUND TO the ꓯ. E.g., since we are universalizing x in line (3) that is, we are binding only the x to the universal quantifier it is only the x that cannot occur freely in the assumption that it rests on i.e., line (1). 7 * In short, the restriction only applies to the variable that BECOMES free in the ꓱE assumption.
8 4. ꓯE for Multi-Place Predicates: Formerly, we said that when using ꓯE [e.g., replacing (ꓯx)Δx with Δx], we could replace x with any variable unless that variable occurred freely in the assumption that (ꓯx)Δx rests on. Now we will add another restriction: IF the Δ being stripped of its ꓯ falls under the scope of MORE THAN ONE operator, you may NOT pick a variable that is bound by one of those other operators (but this applies only if your chosen variable would become bound by one of those other quantifiers). Confused? Let s look at an example. The following move is NOT permissible: 1 (1) (ꓯx)(ꓱy)Lxy A 1 (2) (ꓱy)Lyy 1, ꓯE You cannot replace x with y here because y is already in use i.e., it is bound by ꓱ in the original statement that we are eliminating the ꓯ from. When using ꓯE, the variable that was bound to ꓯ should become a free variable. However, in line (2) above, the variable that was bound to ꓯ does NOT become free. Rather, it gets bound to the ꓱ. This is illegal. The idea behind this should be intuitive. For instance, it does not follow from (1), Everything loves something that (2) Something loves itself. Note, however, that it IS permissible to choose a variable that is already bound (or in use ) by another quantifier so long as the variable being replaced does not become bound to some other quantifier. For instance, the following is permissible: 1 (1) (ꓯx)[Sxx (ꓱx)Lxx] A 1 (2) Sxx (ꓱx)Lxx 1, ꓯE This IS permissible since the x s in Lxx are bound by ꓱ, not ꓯ. For, ꓱ is the operator that occurs IMMEDIATELY to the left of Lxx. Here, the variables that were bound to the ꓯ (namely, the two x s in Sxx ) DO become free. In fact, the following are ALL permissible: 1 (1) (ꓯx)[Sxx (ꓱx)Lxx] A 1 (2) Sxx (ꓱx)Lxx 1, ꓯE 1 (3) Syy (ꓱx)Lxx 1, ꓯE 1 (4) Szz (ꓱx)Lxx 1, ꓯE When performing universal-elimination (ꓯE), you may ONLY make changes to the variables that were bound by the ꓯ being eliminated (i.e., we may only change the x s that occur in Sxx here). But, no matter what variable we pick when performing ꓯE here, the x s in (ꓱx)Lxx will ALWAYS remain unchanged, because those x s are bound by the ꓱ rather than the ꓯ. Lines (2) (4) are ALL permissible uses of ꓯE since, on these lines we did NOT alter the variables that were bound by the existential quantifier i.e., (ꓱx)Lxx 8
9 and furthermore, the variables that were bound to ꓯ on line (1) DID become free on lines (2) (4). Long story short, ꓯE now has the following restrictions: (1) You may ONLY choose/alter the variable that was bound to the ꓯ being eliminated. You may NOT alter any of the variables that are bound to any of the other quantifiers. (2) Whatever variable you choose, it must NOT appear freely in the assumption(s) that it rests on. (3) Whatever variable you choose, it MUST become free when performing ꓯE; that is, it must NOT become bound to some other quantifier. 5. ꓱE for Multi-Place Predicates: We will now add one final restriction to ꓱE: IF the Δ being stripped of its ꓱ falls within the scope of MORE THAN ONE operator, you may NOT pick a variable that is bound by one of those other operators unless it is the same variable that is bound by the ꓱ that is being eliminated. Confused? The example below will make things clearer. The following move is NOT permissible: 1 (1) (ꓱx)(ꓯy)Lxy A 1 (2) (ꓯy)Lyy Ass. (ꓱE) Clarification: It IS permissible, strictly speaking (you can assume whatever you want at any time), but this assumption cannot be used for the purposes of ꓱE. You cannot replace x with y here because y is already in use i.e., it is bound by ꓯ in the original statement that we are eliminating the ꓱ from. The idea behind this should be intuitive. For instance, it does not follow from (1), Something loves everything that (2) Everything loves itself. Note, however, that it IS permissible to choose a variable that is already bound by some other quantifier so long as the variable being replaced becomes free; i.e., does NOT become bound by another quantifier. For instance, the following move is permissible: 1 (1) (ꓱx)[Sxx (ꓯx)Lxx] A 1 (2) Sxx (ꓯx)Lxx Ass. (ꓱE) This is permissible because the x s in Lxx are bound by ꓯ, not ꓱ. What is important is that the x s in Sxx DO become free and DO NOT become bound by the ꓯ. So, the following moves are all permissible: 1 (1) (ꓱx)[Sxx (ꓯx)Lxx] A 1 (2) Sxx (ꓯx)Lxx Ass. (ꓱE) 1 (3) Syy (ꓯx)Lxx Ass. (ꓱE) 1 (4) Szz (ꓯx)Lxx Ass. (ꓱE) 9
10 When performing existential-elimination (ꓱE), your assumption for the purpose of ꓱE may ONLY make changes to the variables bound by the ꓱ being eliminated (i.e., we may only change the x s that occur in Sxx here). But, no matter what variable we pick when performing ꓱE here, the x s in (ꓯx)Lxx will ALWAYS remain unchanged. Lines (2) (4) are ALL suitable assumptions that we could make for the purpose of ꓱE. Note that on these lines we did NOT alter the variables that were bound by the universal quantifier i.e., (ꓯx)Lxx. Furthermore, the variables that were bound to the ꓱ DID become free in our ꓱE assumption; i.e., they did NOT become bound by the ꓯ. Long story short, ꓱE now has the following restrictions: (1) When making your ꓱE assumption, you may ONLY choose/alter the variable that was bound to the ꓱ that is removed. You may NOT alter any of the variables that are bound to any of the other quantifiers. (2) Whatever variable you choose, it must NOT appear freely in ANY prior assumption. (3) Whatever variable you choose, it MUST become free when making your assumption for the purposes of ꓱE; that is, it must NOT become bound to some other quantifier. (4) Also, the target of your ꓱE (i.e., the line where you finally perform ꓱE) must not contain any unbound instances of the variable that you chose to BECOME free in your ꓱE assumption. 10
, ->, and <-> just as atomic sentence letter (which we can still
Chapter 1. INTRODUCTION TO PREDICATE LOGIC NOTES In predicate logic we study the logical form INSIDE atomic (shortest) sentences. To say: ''Adam is blond." is to attribute the property of being blond to
Propositional Logic. Part I
Part I Propositional Logic 1 Classical Logic and the Material Conditional 1.1 Introduction 1.1.1 The first purpose of this chapter is to review classical propositional logic, including semantic tableaux.
CMPSCI 250: Introduction to Computation. Lecture #7: Quantifiers and Languages 6 February 2012
CMPSCI 250: Introduction to Computation Lecture #7: Quantifiers and Languages 6 February 2012 Quantifiers and Languages Quantifier Definitions Translating Quantifiers Types and the Universe of Discourse
Chapter 1.3 Quantifiers, Predicates, and Validity. Reading: 1.3 Next Class: 1.4. Motivation
Chapter 1.3 Quantifiers, Predicates, and Validity Reading: 1.3 Next Class: 1.4 1 Motivation Propositional logic allows to translate and prove certain arguments from natural language If John s wallet was
Logical Connectives. All kittens are cute. ; I like pizza. ; The sky is blue. ; Triangles have three sides.
Logical Connectives We have learned what a statement is. Recall that a statement is just a proposition that asserts something that is either true or false. For instance, these are propositions: All kittens
PHIL 240, Introduction to Logic, Sections Fall 2011 FINAL EXAM 14 December Name (5 points): Section (5 points):
Section I True / False questions (2 points each) 1. TRUE Any argument that is sound is also valid. 2. FALSE_ If the premises of an argument are all true, then that argument is sound. 3. TRUE Every universal
7. Relational Calculus (Part I) 7.1 Introduction
7. Relational Calculus (Part I) 7.1 Introduction We established earlier the fundamental role of relational algebra and calculus in relational databases (see 5.1). More specifically, relational calculus
CS 161 Computer Security
Wagner Spring 2014 CS 161 Computer Security 1/27 Reasoning About Code Often functions make certain assumptions about their arguments, and it is the caller s responsibility to make sure those assumptions
Mathematical Logic Prof. Arindama Singh Department of Mathematics Indian Institute of Technology, Madras. Lecture - 37 Resolution Rules
Mathematical Logic Prof. Arindama Singh Department of Mathematics Indian Institute of Technology, Madras Lecture - 37 Resolution Rules If some literals can be unified, the same algorithm should be able
Example of a Demonstration that a Problem is NP-Complete by reduction from CNF-SAT
20170926 CNF-SAT: CNF-SAT is a problem in NP, defined as follows: Let E be a Boolean expression with m clauses and n literals (literals = variables, possibly negated), in which - each clause contains only
Quantification. Using the suggested notation, symbolize the statements expressed by the following sentences.
Quantification In this and subsequent chapters, we will develop a more formal system of dealing with categorical statements, one that will be much more flexible than traditional logic, allow a deeper analysis
Today s Lecture 4/13/ WFFs/ Free and Bound Variables 9.3 Proofs for Pred. Logic (4 new implicational rules)!
Today s Lecture 4/13/10 9.1 WFFs/ Free and Bound Variables 9.3 Proofs for Pred. Logic (4 new implicational rules)! Announcements Welcome Back! Answers to latest symbolizations HW are posted on-line Homework:
Mathematical Logic Prof. Arindama Singh Department of Mathematics Indian Institute of Technology, Madras. Lecture - 9 Normal Forms
Mathematical Logic Prof. Arindama Singh Department of Mathematics Indian Institute of Technology, Madras Lecture - 9 Normal Forms In the last class we have seen some consequences and some equivalences,
CS112 Friday, September 12, 2008
CS112 Friday, September 12, 2008 Agenda Natural Deduction Questions FOL Translations FOL Interpretations Natural Deduction Questions? First Order Logic Translations Symbolization Key Universe of Discourse
Intermediate Logic. Interpretations
Intermediate Logic Lecture Five Interpretations Rob Trueman rob.trueman@york.ac.uk University of York Interpretations: The Indirect Method Interpretations Interpretations: The Indirect Method Interpretations:
CSL105: Discrete Mathematical Structures. Ragesh Jaiswal, CSE, IIT Delhi
is another way of showing that an argument is correct. Definitions: Literal: A variable or a negation of a variable is called a literal. Sum and Product: A disjunction of literals is called a sum and a
Intro. Scheme Basics. scm> 5 5. scm>
Intro Let s take some time to talk about LISP. It stands for LISt Processing a way of coding using only lists! It sounds pretty radical, and it is. There are lots of cool things to know about LISP; if
Answer Key #1 Phil 414 JL Shaheen Fall 2010
Answer Key #1 Phil 414 JL Shaheen Fall 2010 1. 1.42(a) B is equivalent to B, and so also to C, where C is a DNF formula equivalent to B. (By Prop 1.5, there is such a C.) Negated DNF meets de Morgan s
6.034 Notes: Section 10.1
6.034 Notes: Section 10.1 Slide 10.1.1 A sentence written in conjunctive normal form looks like ((A or B or not C) and (B or D) and (not A) and (B or C)). Slide 10.1.2 Its outermost structure is a conjunction.
CS Bootcamp Boolean Logic Autumn 2015 A B A B T T T T F F F T F F F F T T T T F T F T T F F F
1 Logical Operations 1.1 And The and operator is a binary operator, denoted as, &,, or sometimes by just concatenating symbols, is true only if both parameters are true. A B A B F T F F F F The expression
CPSC 121: Models of Computation. Module 5: Predicate Logic
CPSC 121: Models of Computation Module 5: Predicate Logic Module 5: Predicate Logic Midterm 1: Friday February 9 th, 17:00 to 18:15 A to C (by last name): room DMP 310 D to K: room MATH 100 L to P: room
Practice Problems: All Computer Science majors are people. Some computer science majors are logical thinkers. Some people are logical thinkers.
CSE 240, Fall, 2013 Homework 2 Due, Tuesday September 17. Can turn in class, at the beginning of class, or earlier in the mailbox labelled Pless in Bryan Hall, room 509c. Practice Problems: 1. Consider
First Order Predicate Logic CIS 32
First Order Predicate Logic CIS 32 Functionalia Demos? HW 3 is out on the web-page. Today: Predicate Logic Constructing the Logical Agent Predicate Logic First-order predicate logic More expressive than
CS61A Notes Week 6: Scheme1, Data Directed Programming You Are Scheme and don t let anyone tell you otherwise
CS61A Notes Week 6: Scheme1, Data Directed Programming You Are Scheme and don t let anyone tell you otherwise If you re not already crazy about Scheme (and I m sure you are), then here s something to get
A Brief Guide to MacLogic
A Brief Guide to MacLogic Graeme Forbes MacLogic is a program for the Apple Macintosh computer which implements Gentzen s system of natural deduction NK as well as other logical systems. It functions in
for all x, the assertion P(x) is false. there exists x, for which the assertion P(x) is true.
You can t prove a predicate is true because a predicate is not an assertion, you can t prove it is valid as it is not a deduction! If someone asks you to prove P(x), it is not totally clear what they mean.
Notes on Predicate Calculus
Notes on Predicate Calculus by Charles Lin c Charles Lin 2000 All rights reserved 1 Propositional Calculus Enough Propositional calculus is good enough to describe certain kinds of reasoning, but it is
14.1 Encoding for different models of computation
Lecture 14 Decidable languages In the previous lecture we discussed some examples of encoding schemes, through which various objects can be represented by strings over a given alphabet. We will begin this
CS103 Spring 2018 Mathematical Vocabulary
CS103 Spring 2018 Mathematical Vocabulary You keep using that word. I do not think it means what you think it means. - Inigo Montoya, from The Princess Bride Consider the humble while loop in most programming
CMSC 201 Fall 2016 Lab 09 Advanced Debugging
CMSC 201 Fall 2016 Lab 09 Advanced Debugging Assignment: Lab 09 Advanced Debugging Due Date: During discussion Value: 10 points Part 1: Introduction to Errors Throughout this semester, we have been working
1 GSW Bridging and Switching
1 Sandwiched between the physical and media access layers of local area networking (such as Ethernet) and the routeing of the Internet layer of the IP protocol, lies the thorny subject of bridges. Bridges
A lot of people make repeated mistakes of not calling their functions and getting errors. Make sure you're calling your functions.
Handout 2 Functions, Lists, For Loops and Tuples [ ] Functions -- parameters/arguments, "calling" functions, return values, etc. Please make sure you understand this example: def square(x): return x *
Programming Languages Third Edition
Programming Languages Third Edition Chapter 12 Formal Semantics Objectives Become familiar with a sample small language for the purpose of semantic specification Understand operational semantics Understand
Proofwriting Checklist
CS103 Winter 2019 Proofwriting Checklist Cynthia Lee Keith Schwarz Over the years, we ve found many common proofwriting errors that can easily be spotted once you know how to look for them. In this handout,
First-Order Translation Checklist
CS103 Winter 2019 First-Order Translation Checklist Cynthia Lee Keith Schwarz In this handout, we ve distilled five specific points that you should check in your first-order logic statements before submitting
logic with quantifiers (informally)
EDAA40 Discrete Structures in Computer Science 8: Quantificational logic Jörn W. Janneck, Dept. of Computer Science, Lund University logic with quantifiers (informally) Given a logical formula that depends
Intermediate Logic. Natural Deduction for FOL
Intermediate Logic Lecture Seven Natural Deduction for FOL Rob Trueman rob.trueman@york.ac.uk University of York Introducing Natural Deduction for FOL Natural Deduction for FOL Introducing Natural Deduction
Chapter 3. Set Theory. 3.1 What is a Set?
Chapter 3 Set Theory 3.1 What is a Set? A set is a well-defined collection of objects called elements or members of the set. Here, well-defined means accurately and unambiguously stated or described. Any
CITS2211 Discrete Structures Logic
CITS2211 Discrete Structures Logic Unit coordinator: Rachel Cardell-Oliver August 6, 2017 Highlights All men are mortal, Socrates is a man, therefore Socrates is mortal. Reading Chapter 3: Logical Formulas
Induction and Semantics in Dafny
15-414 Lecture 11 1 Instructor: Matt Fredrikson Induction and Semantics in Dafny TA: Ryan Wagner Encoding the syntax of Imp Recall the abstract syntax of Imp: a AExp ::= n Z x Var a 1 + a 2 b BExp ::=
Typing Control. Chapter Conditionals
Chapter 26 Typing Control 26.1 Conditionals Let s expand our language with a conditional construct. We can use if0 like before, but for generality it s going to be more convenient to have a proper conditional
(Provisional) Lecture 08: List recursion and recursive diagrams 10:00 AM, Sep 22, 2017
Integrated Introduction to Computer Science Hughes (Provisional) Lecture 08: List recursion and recursive diagrams 10:00 AM, Sep 22, 2017 Contents 1 Announcements 1 2 Evaluation Correction 1 3 Lists 2
EC121 Mathematical Techniques A Revision Notes
EC Mathematical Techniques A Revision Notes EC Mathematical Techniques A Revision Notes Mathematical Techniques A begins with two weeks of intensive revision of basic arithmetic and algebra, to the level
Solutions to Selected Exercises
Chapter 1 Solutions to Selected Exercises Section 1.1 2. {2, 4} 3. {7, 10} 5. {2, 3, 5, 6, 8, 9} 6. {1, 3, 5, 7, 9, 10} 8. A 9. 11. B 12. {1, 4} 14. {1} 15. {2, 3, 4, 5, 6, 7, 8, 9, 10} 18. 1 19. 3 22.
Notes on Turing s Theorem and Computability
Notes on Turing s Theorem and Computability Walter Neumann About 60 years ago there was a revolution in mathematics and philosophy. First Gödel and then Turing showed that there are impossible problems
Recursively Enumerable Languages, Turing Machines, and Decidability
Recursively Enumerable Languages, Turing Machines, and Decidability 1 Problem Reduction: Basic Concepts and Analogies The concept of problem reduction is simple at a high level. You simply take an algorithm
Turing Machine Languages
Turing Machine Languages Based on Chapters 23-24-25 of (Cohen 1997) Introduction A language L over alphabet is called recursively enumerable (r.e.) if there is a Turing Machine T that accepts every word
SOFTWARE ENGINEERING DESIGN I
2 SOFTWARE ENGINEERING DESIGN I 3. Schemas and Theories The aim of this course is to learn how to write formal specifications of computer systems, using classical logic. The key descriptional technique
Software Paradigms (Lesson 6) Logic Programming
Software Paradigms (Lesson 6) Logic Programming Table of Contents 1 Introduction... 2 2 Facts... 3 3 Predicates (Structured Terms)... 4 3.1 General Structures... 4 3.2 Predicates (Syntax)... 4 3.3 Simple
FIGURING OUT WHAT MATTERS, WHAT DOESN T, AND WHY YOU SHOULD CARE
FIGURING OUT WHAT MATTERS, WHAT DOESN T, AND WHY YOU SHOULD CARE CONTENTFAC.COM As an FYI, this document is designed to go along with our video by the same name. If you haven t checked that out yet, you
Mathematical Logic Part Two
Mathematical Logic Part Two Recap from Last Time Recap So Far A propositional variable a variable that either true or false. The propositional connectives are as follows: Negation: p Conjunction: p q Djunction:
CS 3512, Spring Instructor: Doug Dunham. Textbook: James L. Hein, Discrete Structures, Logic, and Computability, 3rd Ed. Jones and Barlett, 2010
CS 3512, Spring 2011 Instructor: Doug Dunham Textbook: James L. Hein, Discrete Structures, Logic, and Computability, 3rd Ed. Jones and Barlett, 2010 Prerequisites: Calc I, CS2511 Rough course outline:
CDs & DVDs: Different Types of Disk Explained
CDs & DVDs: Different Types of Disk Explained C 200 / 1 Don t Waste Money Buying the Wrong Type Find Out Which Disks Your PC Can Use! Your PC almost certainly has at least one CD/DVD drive. In its most
6.001 Notes: Section 1.1
6.001 Notes: Section 1.1 Slide 1.1.1 This first thing we need to do is discuss the focus of 6.001. What is this course all about? This seems quite obvious -- this is a course about computer science. But
Evaluation of Predicate Calculus By Arve Meisingset, retired research scientist from Telenor Research Oslo Norway
Evaluation of Predicate Calculus By Arve Meisingset, retired research scientist from Telenor Research 31.05.2017 Oslo Norway Predicate Calculus is a calculus on the truth-values of predicates. This usage
CS125 : Introduction to Computer Science. Lecture Notes #11 Procedural Composition and Abstraction. c 2005, 2004 Jason Zych
CS125 : Introduction to Computer Science Lecture Notes #11 Procedural Composition and Abstraction c 2005, 2004 Jason Zych 1 Lecture 11 : Procedural Composition and Abstraction Solving a problem...with
Week - 04 Lecture - 01 Merge Sort. (Refer Slide Time: 00:02)
Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 04 Lecture - 01 Merge Sort (Refer
First-Order Logic PREDICATE LOGIC. Syntax. Terms
First-Order Logic PREDICATE LOGIC Aim of this lecture: to introduce first-order predicate logic. More expressive than propositional logic. Consider the following argument: all monitors are ready; X12 is
ITCS 6150 Intelligent Systems. Lecture 13 First-Order Logic Chapter 8
ITCS 6150 Intelligent Systems Lecture 13 First-Order Logic Chapter 8 First-order logic We saw how propositional logic can create intelligent behavior But propositional logic is a poor representation for
Foundations of AI. 9. Predicate Logic. Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution
Foundations of AI 9. Predicate Logic Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution Wolfram Burgard, Andreas Karwath, Bernhard Nebel, and Martin Riedmiller 09/1 Contents Motivation
The name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet.
Mr G s Java Jive #2: Yo! Our First Program With this handout you ll write your first program, which we ll call Yo. Programs, Classes, and Objects, Oh My! People regularly refer to Java as a language that
Getting started with simulating data in R: some helpful functions and how to use them Ariel Muldoon August 28, 2018
Getting started with simulating data in R: some helpful functions and how to use them Ariel Muldoon August 28, 2018 Contents Overview 2 Generating random numbers 2 rnorm() to generate random numbers from
Sets. Margaret M. Fleck. 15 September 2010
Sets Margaret M. Fleck 15 September 2010 These notes cover set notation, operations on sets, and how to prove claims involving sets (Rosen sections 2.1 and 2.2). They also cover some logic subtleties that
Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/18/14
600.363 Introduction to Algorithms / 600.463 Algorithms I Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/18/14 23.1 Introduction We spent last week proving that for certain problems,
MATH 22 MORE ABOUT FUNCTIONS. Lecture M: 10/14/2003. Form follows function. Louis Henri Sullivan
MATH 22 Lecture M: 10/14/2003 MORE ABOUT FUNCTIONS Form follows function. Louis Henri Sullivan This frightful word, function, was born under other skies than those I have loved. Le Corbusier D ora innanzi
PYTHON YEAR 10 RESOURCE. Practical 01: Printing to the Shell KS3. Integrated Development Environment
Practical 01: Printing to the Shell To program in Python you need the latest version of Python, which is freely available at www.python.org. Your school will have this installed on the computers for you,
Resolution (14A) Young W. Lim 6/14/14
Copyright (c) 2013-2014. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free
8 Matroid Intersection
8 Matroid Intersection 8.1 Definition and examples 8.2 Matroid Intersection Algorithm 8.1 Definitions Given two matroids M 1 = (X, I 1 ) and M 2 = (X, I 2 ) on the same set X, their intersection is M 1
Going beyond propositional logic
Going beyond propositional logic Consider the following statements: p: Ling took CS245 q: Ling passed CS245 r: Ling failed CS245 Taken literally, these are all atomic statements, and formally they have
Lecture 2: NP-Completeness
NP and Latin Squares Instructor: Padraic Bartlett Lecture 2: NP-Completeness Week 4 Mathcamp 2014 In our last class, we introduced the complexity classes P and NP. To motivate why we grouped all of NP
Grade 6 Math Circles November 6 & Relations, Functions, and Morphisms
Faculty of Mathematics Waterloo, Ontario N2L 3G1 Centre for Education in Mathematics and Computing Relations Let s talk about relations! Grade 6 Math Circles November 6 & 7 2018 Relations, Functions, and
Mathematical Logic Part Two
Mathematical Logic Part Two Recap from Last Time Recap So Far A propositional variable is a variable that is either true or false. The propositional connectives are as follows: Negation: p Conjunction:
Predicate Logic CHAPTER What This Chapter Is About
CHAPTER 14 Predicate Logic We now turn our attention to a generalization of propositional logic, called predicate, or first-order, logic. Predicates are functions of zero or more variables that return
Cryptography and Network Security. Prof. D. Mukhopadhyay. Department of Computer Science and Engineering. Indian Institute of Technology, Kharagpur
Cryptography and Network Security Prof. D. Mukhopadhyay Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Module No. # 01 Lecture No. # 38 A Tutorial on Network Protocols
Automated Reasoning PROLOG and Automated Reasoning 13.4 Further Issues in Automated Reasoning 13.5 Epilogue and References 13.
13 Automated Reasoning 13.0 Introduction to Weak Methods in Theorem Proving 13.1 The General Problem Solver and Difference Tables 13.2 Resolution Theorem Proving 13.3 PROLOG and Automated Reasoning 13.4
CS40-S13: Functional Completeness
CS40-S13: Functional Completeness Victor Amelkin victor@cs.ucsb.edu April 12, 2013 In class, we have briefly discussed what functional completeness means and how to prove that a certain system (a set)
Lecture 3: Constructing the Natural Numbers
Math/CS 120: Intro. to Math Professor: Padraic Bartlett Lecture 3: Constructing the Natural Numbers Weeks 3-4 UCSB 2014 When we defined what a proof was in our first set of lectures, we mentioned that
Lecture 7: Primitive Recursion is Turing Computable. Michael Beeson
Lecture 7: Primitive Recursion is Turing Computable Michael Beeson Closure under composition Let f and g be Turing computable. Let h(x) = f(g(x)). Then h is Turing computable. Similarly if h(x) = f(g 1
MA 1128: Lecture 02 1/22/2018
MA 1128: Lecture 02 1/22/2018 Exponents Scientific Notation 1 Exponents Exponents are used to indicate how many copies of a number are to be multiplied together. For example, I like to deal with the signs
XP: Backup Your Important Files for Safety
XP: Backup Your Important Files for Safety X 380 / 1 Protect Your Personal Files Against Accidental Loss with XP s Backup Wizard Your computer contains a great many important files, but when it comes to
2SKILL. Variables Lesson 6. Remembering numbers (and other stuff)...
Remembering numbers (and other stuff)... Let s talk about one of the most important things in any programming language. It s called a variable. Don t let the name scare you. What it does is really simple.
Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller
Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller Table of Contents Introduction!... 1 Part 1: Entering Data!... 2 1.a: Typing!... 2 1.b: Editing
Divisibility Rules and Their Explanations
Divisibility Rules and Their Explanations Increase Your Number Sense These divisibility rules apply to determining the divisibility of a positive integer (1, 2, 3, ) by another positive integer or 0 (although
P Is Not Equal to NP. ScholarlyCommons. University of Pennsylvania. Jon Freeman University of Pennsylvania. October 1989
University of Pennsylvania ScholarlyCommons Technical Reports (CIS) Department of Computer & Information Science October 1989 P Is Not Equal to NP Jon Freeman University of Pennsylvania Follow this and
Racket Style Guide Fall 2017
CS17 Integrated Introduction to Computer Science Hughes Racket Style Guide Fall 2017 Contents 1 Introduction 1 2 Naming 1 3 Formatting 1 4 Equality 3 5 Conditionals 4 5.1 Prefer Cond to If......................................
Utility Maximization
Utility Maximization Mark Dean Lecture Notes for Spring 2015 Behavioral Economics - Brown University 1 Lecture 1 1.1 Introduction The first topic we are going to cover in the course isn t going to seem
Chapter 12. Computability Mechanizing Reasoning
Chapter 12 Computability Gödel s paper has reached me at last. I am very suspicious of it now but will have to swot up the Zermelo-van Neumann system a bit before I can put objections down in black & white.
PdOd Kev Events I Re-world war I1 rwa
I PdOd Kev Events I Re-world war I rwa LECTURE: Knowledge Representation Overview 0 'Qpes of knowledge: objects, events, meta-knowledge, etc. 0 Characteristics of representation: expressive adequacy vs.
First Order Logic Part 1
First Order Logic Part 1 Yingyu Liang yliang@cs.wisc.edu Computer Sciences Department University of Wisconsin, Madison [Based on slides from Burr Settles and Jerry Zhu] slide 1 Problems with propositional
Lecture 2: SML Basics
15-150 Lecture 2: SML Basics Lecture by Dan Licata January 19, 2012 I d like to start off by talking about someone named Alfred North Whitehead. With someone named Bertrand Russell, Whitehead wrote Principia
To prove something about all Boolean expressions, we will need the following induction principle: Axiom 7.1 (Induction over Boolean expressions):
CS 70 Discrete Mathematics for CS Fall 2003 Wagner Lecture 7 This lecture returns to the topic of propositional logic. Whereas in Lecture 1 we studied this topic as a way of understanding proper reasoning
Notes. Notes. Introduction. Notes. Propositional Functions. Slides by Christopher M. Bourke Instructor: Berthe Y. Choueiry.
Slides by Christopher M. Bourke Instructor: Berthe Y. Choueiry Spring 2006 1 / 1 Computer Science & Engineering 235 Introduction to Discrete Mathematics Sections 1.3 1.4 of Rosen cse235@cse.unl.edu Introduction
Class 8 - September 13 Indirect Truth Tables for Invalidity and Inconsistency ( 6.5)
Philosophy 240: Symbolic Logic Fall 2010 Mondays, Wednesdays, Fridays: 9am - 9:50am Hamilton College Russell Marcus rmarcus1@hamilton.edu Class 8 - September 13 Indirect Truth Tables for Invalidity and
the Computability Hierarchy
2013 0 the Computability Hierarchy Eric Hehner Department of Computer Science, University of Toronto hehner@cs.utoronto.ca Abstract A computability hierarchy cannot be constructed by halting oracles. Introduction
SCHEME The Scheme Interpreter. 2 Primitives COMPUTER SCIENCE 61A. October 29th, 2012
SCHEME COMPUTER SCIENCE 6A October 29th, 202 In the next part of the course, we will be working with the Scheme programming language. In addition to learning how to write Scheme programs, we will eventually
Animations involving numbers
136 Chapter 8 Animations involving numbers 8.1 Model and view The examples of Chapter 6 all compute the next picture in the animation from the previous picture. This turns out to be a rather restrictive
/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18
601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can
Combinatorics Prof. Dr. L. Sunil Chandran Department of Computer Science and Automation Indian Institute of Science, Bangalore
Combinatorics Prof. Dr. L. Sunil Chandran Department of Computer Science and Automation Indian Institute of Science, Bangalore Lecture - 5 Elementary concepts and basic counting principles So, welcome
Foundations, Reasoning About Algorithms, and Design By Contract CMPSC 122
Foundations, Reasoning About Algorithms, and Design By Contract CMPSC 122 I. Logic 101 In logic, a statement or proposition is a sentence that can either be true or false. A predicate is a sentence in
Automated Reasoning. Natural Deduction in First-Order Logic
Automated Reasoning Natural Deduction in First-Order Logic Jacques Fleuriot Automated Reasoning Lecture 4, page 1 Problem Consider the following problem: Every person has a heart. George Bush is a person.