Discrete Structures Proofwriting Checklist

Similar documents
Guide to Proofs on Discrete Structures

Guide to Proofs on Sets

The Inductive Proof Template

Lecture 4: Constructing the Integers, Rationals and Reals

Algebra Exam. Solutions and Grading Guide

1 / 9. Due Friday, May 11 th at 2:30PM. There is no checkpoint problem. CS103 Handout 30 Spring 2018 May 4, 2018 Problem Set 5

Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics Lecture notes in progress (27 March 2010)

How to write maths (well)

CHAPTER 0: BACKGROUND (SPRING 2009 DRAFT)

Isomorphisms and Well-definedness

CS103 Handout 12 Winter February 4, 2013 Practice Midterm Exam

Introducing Proof 1. hsn.uk.net. Contents

Chapter 3. Cartesian Products and Relations. 3.1 Cartesian Products

4.1 Real-valued functions of a real variable

Math 300 Introduction to Mathematical Reasoning Autumn 2017 Inverse Functions

HOW TO CREATE A PROOF. Writing proofs is typically not a straightforward, algorithmic process such as calculating

Reading 11 : Relations and Functions

Math 38: Graph Theory Spring 2004 Dartmouth College. On Writing Proofs. 1 Introduction. 2 Finding A Solution

Hypothesis testing I. - In particular, we are talking about statistical hypotheses. [get everyone s finger length!] n =

Proof Techniques (Review of Math 271)

Math 300: Foundations of Higher Mathematics Northwestern University, Lecture Notes

Final Review Sheet. B = (1, 1 + 3x, 1 + x 2 ) then 2 + 3x + 6x 2

Uncertainty. Michael Peters December 27, 2013

8. TRANSFORMING TOOL #1 (the Addition Property of Equality)

Practice Second Midterm Exam I

CS 124 Math Review Section January 29, 2018

UMASS AMHERST MATH 300 SP 05, F. HAJIR HOMEWORK 8: (EQUIVALENCE) RELATIONS AND PARTITIONS

CS103 Handout 21 Winter 2016 February 3, 2016 Practice Midterm Exam

What is proof? Lesson 1

Math 111, Introduction to the Calculus, Fall 2011 Midterm I Practice Exam 1 Solutions

Binary Relations Part II

Theorem. For every positive integer n, the sum of the positive integers from 1 to n is n(n+1)

CS103 Handout 08 Spring 2012 April 20, 2012 Problem Set 3

Foundations of algebra

30. TRANSFORMING TOOL #1 (the Addition Property of Equality)

Basics of Proofs. 1 The Basics. 2 Proof Strategies. 2.1 Understand What s Going On

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models

irst we need to know that there are many ways to indicate multiplication; for example the product of 5 and 7 can be written in a variety of ways:

6.042/18.062J Mathematics for Computer Science. Induction I

On the scope of diagonal argument and on contradictory equivalence.

Chapter VI. Relations. Assumptions are the termites of relationships. Henry Winkler

A BRIEF INTRODUCTION TO ZFC. Contents. 1. Motivation and Russel s Paradox

Finite Automata Part One

Intermediate Logic. Natural Deduction for TFL

Solution to Proof Questions from September 1st

Tutorial on Mathematical Induction

Modern Algebra Prof. Manindra Agrawal Department of Computer Science and Engineering Indian Institute of Technology, Kanpur

Proving languages to be nonregular

Slope Fields: Graphing Solutions Without the Solutions

Discrete Mathematics and Probability Theory Fall 2010 Tse/Wagner MT 2 Soln

Predicates, Quantifiers and Nested Quantifiers

6 Cosets & Factor Groups

Connectedness. Proposition 2.2. The following are equivalent for a topological space (X, T ).

Handout 2 (Correction of Handout 1 plus continued discussion/hw) Comments and Homework in Chapter 1

Discrete Mathematics and Probability Theory Fall 2016 Seshia and Walrand Note 2

Countability. 1 Motivation. 2 Counting

Preparing for the CS 173 (A) Fall 2018 Midterm 1

Writing proofs. Tim Hsu, San José State University. May 31, Definitions and theorems 3. 2 What is a proof? 3. 3 A word about definitions 4

Introduction to Algebra: The First Week

CS1800: Strong Induction. Professor Kevin Gold

Finite Automata Part One

Definitions: A binary relation R on a set X is (a) reflexive if x X : xrx; (f) asymmetric if x, x X : [x Rx xr c x ]

Alex s Guide to Word Problems and Linear Equations Following Glencoe Algebra 1

Descriptive Statistics (And a little bit on rounding and significant digits)

At the start of the term, we saw the following formula for computing the sum of the first n integers:

Lecture 2: Change of Basis

CS 360, Winter Morphology of Proof: An introduction to rigorous proof techniques

Supplementary Logic Notes CSE 321 Winter 2009

Please bring the task to your first physics lesson and hand it to the teacher.

Computability Crib Sheet

3 The language of proof

Proof: If (a, a, b) is a Pythagorean triple, 2a 2 = b 2 b / a = 2, which is impossible.

Supplementary Material for MTH 299 Online Edition

G12MAN Mathematical Analysis Fully-justified answers to Revision Quiz questions

1.4 Mathematical Equivalence

Math 31 Lesson Plan. Day 5: Intro to Groups. Elizabeth Gillaspy. September 28, 2011

Solving Equations by Adding and Subtracting

P (E) = P (A 1 )P (A 2 )... P (A n ).

Logic and Mathematics:

Must... stay... strong!

CHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC

An analogy from Calculus: limits

Proofs. An (informal) proof is an essay that will persuade a logical reader that a mathematical theorem is true.

Math 300: Final Exam Practice Solutions

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 1

INTRODUCTION TO LOGIC 8 Identity and Definite Descriptions

1.10 Continuity Brian E. Veitch

15 Skepticism of quantum computing

Direct Proof and Counterexample I:Introduction. Copyright Cengage Learning. All rights reserved.

Direct Proof and Counterexample I:Introduction

Line Integrals and Path Independence

Roberto s Notes on Linear Algebra Chapter 11: Vector spaces Section 1. Vector space axioms

Section 20: Arrow Diagrams on the Integers

Linear Algebra, Summer 2011, pt. 2

Mathematics E-15 Seminar on Limits Suggested Lesson Topics

Quadratic Equations Part I

Introduction to Logic and Axiomatic Set Theory

Section 2: Limits and Continuity

Lesson 5: Criterion for Perpendicularity

Direct Proofs. the product of two consecutive integers plus the larger of the two integers

Transcription:

CS103 Winter 2019 Discrete Structures Proofwriting Checklist Cynthia Lee Keith Schwarz Now that we re transitioning to writing proofs about discrete structures like binary relations, functions, and graphs, there are a few specific points we d like to you to check for in your proofs in addition to the general rules set out in the earlier Proofwriting Checklist. As you re working through the problems on Problem Set Three and beyond, take a few minutes per proof to read over what you ve written and check to make sure that your proofs obey the following criteria: Appropriately call back to first-order definitions. Don t use quantifiers or connectives in your proofs. Don t repeat definitions; use them instead. Type-check your proofs. As before, we will be applying this checklist to the proofs that you submit as part of how we grade, so catching these sorts of issues before you submit will help us give you even better targeted feedback on your proofs. The remainder of this handout goes into more detail about what each of these rules mean.

2 / 7 Appropriately Call Back to First-Order Definitions One of the main differences between the proofs that you ll be writing on Problem Set Three and the proofs you did on Problem Set One and Problem Set Two is that we now have symbolic definitions of key terms and definitions expressed in the language of first-order logic. From a proofwriting perspective, this is quite useful it means that you know exactly what it is that you ll need to prove at each point in time. At the same time, this means that you need to be extremely careful when setting up your proofs to make sure that you re making the right assumptions and ultimately trying to prove the right results. For example, let s suppose that you re trying to prove that some binary relation R over a set A is transitive. This means that you need to prove that x A. y A. z A. (xry yrz xrz). Given that this is the statement you want to prove, you should not start your proof off like this: Incorrect! Proof: Consider any x, y A where xry. Since xry, we know that [ ] The issue with this proof is that the structure of what s written above doesn t match the structure of the first-order statement in question. Specifically, since in this proof we ve picked an arbitrary x and y from A and assumed that xry, we re essentially writing a proof that matches the following first-order logic fragment: x A. y A. (xry [ ]) Take a minute to confirm that you see exactly why this is the case. As you re working through problems on discrete structures, we strongly recommend that, before you spend any mental energy trying to actually tackle the problem, you make sure that you have clearly identified what it is that you re assuming and what it is that you need to prove. The Guide to Proofs on Discrete Structures contains a number of example proof templates that you can use for some common cases, but more generally you ll want to get as much practice as possible going back and forth between first-order logic and proof setup. There s another way that we often see proofs fail to engage with first-order definitions, and that s to operate at far too high of a level. As an example, assume the relations i are all equivalence relations: xuy if x i y for each person i. You re asked to prove that U is always an equivalence relation. Here s a purported proof of this: Incorrect! Proof: The U relation is defined in terms of the i relations. Since the i relations are equivalence relations and U is defined in terms of i, we can see that U itself must be an equivalence relation, as required. This proof doesn t establish that U is reflexive, symmetric, and transitive, and instead relies on a highlevel appeal to intuition that if you start with an equivalence relation and do something with it, you are guaranteed to end up with an equivalence relation. This may or may not be true in this case, but certainly nothing has been proved by this proof. There are two lessons to take away from this example. First, be wary about going off-script in the course of writing a proof. If you re asked to prove that something is an equivalence relation, or a bijection, etc., you have a formal definition you can call back to, and chances are that it s probably best to

prove that the object has the given type by explicitly appealing to each of the parts of this definition. If you decide not to do that and to prove the result through some other mechanism, you should be very suspicious about the line of reasoning you re following. 3 / 7 This brings us to the second lesson here exercise skepticism about broad claims in your proofs. If you re making some claim about how all equivalence relations behave, or what every graph looks like, etc., your immediate response should be to ask whether what you re saying is actually true. If so, why? Go and prove it. If not, why not? Go disprove it. In the course of doing so, you ll either discover a flaw in your original line of reasoning, which is great (it means that you ve spotted an error in your proof and can go and try to address it), or you ll end up with a more robust proof because you ll have justified a critical and non-obvious claim you ve made.

4 / 7 Don t Use Quantifiers or Connectives in Your Proofs The title of this section says it all the convention in proofwriting is to not use quantifiers ( or ) or connectives (,,, etc.) in the course of writing up a mathematical proof. There s no fundamental reason why proofs couldn t be written using these symbols. It s just the way that the mathematical community decided to do things. Since part of the goal of this class is to get you to write proofs in way that matches established guidelines, we ll be enforcing this rule pretty strictly. The good news is that many violations of this rule are quite easy to fix. For example, suppose that we re trying to prove that some function f : A B is surjective. Here s one possible not-so-great way to start off a proof to that effect: Incorrect! Proof: We will prove that the function f is surjective. To do so, we need to prove that b B. a A. f(a) = b. So consider an arbitrary b B. We will prove that there is some a A where f(a) = b. [ ] Here, the first-order logic notation that s present in the proof is just a restatement of the formal definition of surjectivity, and from context it looks like the author of the proof may have included it to make clear that they know what the definition of surjectivity is and to remind the author of that definition. As you saw in the original Proofwriting Checklist, it s almost never a good idea to restate definitions in the abstract ( Don t restate definitions; use them instead ). You can assume that whoever is reading your proof knows what a surjective function is, so restating the definition of a surjective function doesn t actually accomplish anything here. We can safely delete that entire sentence from the proof, leaving us with this much simpler proof setup: Proof: We will prove that the function f is surjective. To do so, consider an arbitrary b B. We will prove that there is some a A where f(a) = b. [ ] This proof contains all of the important details of the original proof, but without any quantifiers or connectives. Another common case where we see people using first-order logic in proofs is in the context of working with discrete structures (often, binary relations) that are themselves defined in first-order logic. Stealing an example from the Guide to Proofs on Discrete Structures, let s suppose that you have the following binary relation R defined over the set Z: xry if k N. ( k 0 x + k = y). Imagine that you want to prove that R is transitive. Here s a not-so-great way to do this: Incorrect! Proof: Consider any x, y, z Z where xry and yrz. We need to prove that xrz. Since xry, we know that k N. ( k 0 x + k = y). Similarly, since yrz, we know that r N. ( r 0 y + r = z). Since x + k = y and y + r = z, we see that x + k + r = y + r = z. (1) Additionally, since k and r are natural numbers where k 0 and r 0, we know that k > 0 and that r > 0, and so k + r > 0. Therefore, k + r 0. Consequently, we see that s N. ( s 0 x + s = z), since we can pick s = k + r. Therefore, xrz, as required.

5 / 7 The logic of the above proof is entirely correct, and so conceptually there s nothing wrong with the proof. The issue here is that this just isn t the way that you re supposed to write proofs about definitions given in first-order logic. Instead of using the formal first-order logic notation, the convention is to render the equivalents of these statements in plain English. Here s a better way to write up the above proof: Proof: Consider any x, y, z Z where xry and yrz. We need to prove that xrz. Since xry, we know that there is a nonzero natural number k where x + y = k. Similarly, since yrz, we know that there is a nonzero natural number r where y + r = z. Since x + k = y and y + r = z, we see that x + k + r = y + r = z. (1) Additionally, since k and r are natural numbers where k 0 and r 0, we know that k > 0 and that r > 0, and so k + r > 0. Therefore, k + r 0. Consequently, we see that there is a natural number s (namely, k+r) such that s 0 and x + s = z. Therefore, xrz, as required. All we ve done here is replace denser first-order logic notation with plain English. The reasoning here is completely the same.

6 / 7 Don t Repeat Definitions; Use Them Instead Hey!, you re probably saying. Isn t this something covered in the original Proofwriting Checklist? Yes. Yes it is. As we transition to proofs on discrete structures, this rule will become even more relevant, and so we thought it was worth revisiting. On Problem Set One and Problem Set Two, we gave you the advice to avoid restating definitions purely in the abstract and to instead use them in a way that demonstrates how that definition is applied. For example, we recommended replacing statements like the ones on the left with one like what s on the right: We know that x A. Since A B, we know that every element of A is an element of B. Thus we see that x B. We know that x A. Since A B, we know that every x A satisfies x B. Therefore, we see that x B. Since x A and A B, we see that x B. We know that x A. Since A B, we know that every z A satisfies z B. Therefore, we see that x B. There are a few reasons why it s wise to avoid repeating definitions in the abstract. First, you can assume that the reader knows all of the relevant terms and definitions that are needed in your proofs. Your job as a proofwriter is not to convince the reader of what the definitions are, but to show how those definitions interact with one another to build into some result. In that sense, repeating a definition in the abstract, like what s done above and to the left, doesn t actually contribute anything to the argument you re laying out. The reader already knows the definition, so that sentence is fully redundant. Second, restating definitions in the abstract risks violating other checklist items. Let s go one at a time through the three options on the left that we advise against. The first one is far too general ( every element of A is an element of B ) and therefore breaks our advice of making specific claims about specific variables. The second one ( every x A satisfies x B ) is a variable scoping error is x the specific value referred to in the first sentence, or is it a placeholder? The third one is making specific claims about the variable z and doesn t have a scoping error, but in that case z is purely a placeholder it doesn t refer to any value. In each of those cases, you can safely delete things. And finally, restating definitions in the abstract just makes things longer. Compare the three options to the left to the one on the right. All three of those proof fragments are significantly longer than the more concise and direct version shown to the right.

7 / 7 Type-Check Your Proofs Type checking has been a recurring theme in this class you ve seen this in the set theory translations from Problem Set One and the first-order logic translations from Problem Set Two and that trend continues forward as you re talking about discrete structures. With the introduction of new terminology from discrete structures, there are more opportunities to make type errors, and so we thought we d quickly survey some of the common mistakes. Let s imagine that R is a binary relation over a set A and that x and y are elements of A. There is a distinction between the binary relation R (which you can think of as a sort of predicate) and the statement xry, which says that x is related to y via the relation R. In other words: R is of type binary relation xry is of type proposition Certain adjectives can only be used to describe binary relations, not propositions. For example, only a binary relation can be reflexive, so it makes sense to say something like R is reflexive or R is not reflexive because R has type binary relation. However, it is not correct to say something like xrx is reflexive or xrx is not reflexive, since xrx has type proposition and propositions cannot be reflexive or irreflexive. Similarly, if x A and R is a binary relation over a set A, it would not be correct to say x is reflexive in place of writing out xrx, since x itself can t be reflexive (unless, of course, A happens to be a set of binary relations, and R is a relation on top of other relations!) Similarly, let s imagine that f : A B is a function and that x is an element of A. There s similarly a difference between the function f (a general transformation that can be applied to elements of A) and the object f(x), which is a specific object contained in the set B. In other words: f is of type function f(x) is of type element of B This means, for example, that you could say something like f is injective or f is a bijection, but you probably shouldn t write something like f(x) is injective or f(x) is a bijection, since f(x) refers specifically to what you get when you plug x into f. As a note, in practice, mathematicians tend to sometimes be a lot looser with the distinction between f and f(x) and often use one in place of the other, though for the purposes of CS103 we ll expect you to keep the notation distinct to convince us that you understand why they don t represent the same thing. Both binary relations and functions operate on elements that are drawn from some particular set (the underlying set for a binary relation; the domain for a function). If R is a binary relation over a set A, then you should be careful not to write something like xry unless you re sure that x and y are elements of the set A. After all, the whole point of having binary relations operate on a specific set is so that we don t have to worry about cases like or <, and the reason we define domains for our functions is so that we don t end up evaluating expressions like n 3 4n 2 on inputs like.