Proof assistants as a tool for thought

Size: px
Start display at page:

Download "Proof assistants as a tool for thought"

Transcription

1 Proof assistants as a tool for thought Katherine Tools for thought workshop, March 16

2 circa 1700

3 Disputants unable to agree would not waste much time in futile argument... Leibniz (Harrison)

4 Calculemus!

5 1. universal language 2. calculus for reasoning

6 Proof assistant: Coq

7 1. universal language 2. calculus for reasoning

8 1. universal language 2. calculus for reasoning 3. rich environment

9 High-assurance cryptography New foundations for math Program synthesis Verifying hardware Proofs as stories Formally verifying that God exists...

10

11 Example 1: math, induction Credit to Software Foundations, Pierce et al.

12 Say we want to prove something about adding natural numbers.

13 Inductive nat : Set := O : nat S : nat - > nat. Natural number = either 0 or 1 + a nat Fixpoint plus (x y : nat) := match x with O => y S x' => S (plus x' y) end.

14 Inductive nat : Set := O : nat S : nat - > nat. Fixpoint plus (x y : nat) := match x with O => y S x' => S (plus x' y) end. 0 + y = y (1 + x ) + y = 1 + (x + y)

15 Inductive nat : Set := O : nat S : nat - > nat. Fixpoint plus (x y : nat) := match x with O => y S x' => S (plus x' y) end. Unit tests (* O = 0, S O = 1, S (S O) = 2 *) Eval compute in (plus O O). (* = 0 *)

16 Inductive nat : Set := O : nat S : nat - > nat. Fixpoint plus (x y : nat) := match x with O => y S x' => S (plus x' y) end.

17 Unit tests aren't enough. Now we want prove that our computational `plus` satisfies the properties of the mathematical +.

18 0 is a left identity Theorem add0_left_id : forall (n : nat), plus O n = n. Proof. intros n. simpl. reflexivity. Qed.

19 By definition Theorem add0_left_id : forall (n : nat), plus O n = n. Proof. intros n. simpl. reflexivity. Qed. Fixpoint plus (x y : nat) := match x with O => y S x' => S (plus x' y) end.

20 Theorem add0_left_id : forall (n : nat), plus O n = n. Proof. intros n. simpl. reflexivity. Qed. Fixpoint plus (x y : nat) := match x with O => y S x' => S (plus x' y) end.

21 0 is a right identity Fixpoint plus (x y : nat) := match x with O => y S x' => S (plus x' y) end.

22

23

24

25

26

27

28

29

30

31 Exercise for the reader: Theorem plus_commutativity : forall (n m : nat), plus n m = plus m n.

32 Example 2: large real-world verification

33

34 1. Functional correctness (logic, program analysis) 2. Security (math, probability, program analysis)

35

36 5+ months of work by 4 authors ~15,000 lines of Coq code, most of which will not be read by other people

37 Time for cognitive dissonance!

38 The house believes that Coq is an incredible tool for thought.

39 The house believes that Coq is a terrible tool for thought.

40 The house believes that Coq is an incredible tool for thought.

41 Built on top of: written notation

42 Built on top of: written notation text editors

43 Built on top of: written notation text editors Gallina

44 Built on top of: written notation text editors Gallina Ltac

45 Built on top of: written notation text editors Gallina Ltac checker

46 Built on top of: written notation text editors Gallina Ltac checker REPL/IDE

47 Started from the bottom, now we here

48 Proof entrepreneur: fail fast, minimum viable proof...

49 Proof state bookkeeping: assumptions, definitions, goals

50 Computation, evaluation, automation

51 Maybe right? Try Fail Fix Brain says: this isn t right... I think Maybe right?

52 Try Fail Fix Coq says: This is locally wrong! Wrong type / Can t prove it / Can t use tactic / Strange computation

53 Sketching with lemmas

54 Goal admitted Coq: OK! Coq: OK! Coq: OK! Lemma 1 Lemma 2 Lemma 3 admitted admitted admitted Coq: OK! Coq: OK! Lemma 4 Lemma 5 admitted admitted

55 Goal QED Coq: OK! Coq: OK! Coq: OK! Lemma 1 Lemma 2 QED QED Lemma 3 QED Coq: OK! Coq: OK! Lemma 4 Lemma 5 QED QED

56 Math as a game

57 You don t have to remember all the rules yourself.

58 x + 20 = y x = y - 20

59 x + 20 = y x = y - 20 x = y - 20

60 Civilization advances by extending the number of important operations which can be performed without thinking about them. Whitehead

61 Goal: beat the level. Proof state: inventory. Tactics: moves. Checker: walls.

62

63 We need Coq in order to keep doing math.

64 A technical argument by a trusted author... is hardly ever checked in detail. Voevodsky Fields medalist

65 The only real long-term solution to the problem is to start using computers in the verification of mathematical reasoning. Voevodsky Fields medalist

66 We need proofs that are less error-prone and more... mechanically verifiable. Bellare cryptographer

67 Many proofs in cryptography have become essentially unverifiable. Our field may be approaching a crisis of rigor. Bellare cryptographer (100+ citations!)

68 Pro-Coq: 1. Programmer affordances 2. Math as a game 3. Crisis of rigor

69 The house believes that Coq is a terrible tool for thought.

70 Calculemus?

71 Games are designed for humans to solve. Math isn t!

72 What could go wrong?

73 Your theorem is: too specific, so you need to generalize straight-up wrong, so you need a counterexample true, but you need to be creative true, but you discarded the One Ring

74 Your theorem is: too specific, so you need to generalize straight-up wrong, so you need a counterexample true, but you need to be creative true, but you discarded the One Ring

75 Your theorem is: too specific, so you need to generalize straight-up wrong, so you need a counterexample true, but you need to be creative true, but you discarded the One Ring

76 Your theorem is: too specific, so you need to generalize straight-up wrong, so you need a counterexample true, but you need to be creative true, but you discarded the One Ring

77

78 Work on paper first, then in computer :(

79 Coq blindfolds the intuition. We re not Coq natives!

80 Built on top of: written notation text editors Gallina Ltac checker IDE

81 Started from the bottom... now we re back.

82 Try Fix Coq says: This is locally wrong! Wrong type / Can t prove it / Can t use tactic / Fix Coq says: This is locally wrong! Coq says: Wrong This type is / locally wrong! Can t prove Wrong it / type / Can t use tactic Can t / prove it / Strange computation Can t use tactic / Strange computation Fail Try Coq says: This is locally wrong! Wrong type / Can t prove it / Can t use tactic / Strange computation Coq says: This is locally wrong! Wrong type / Can t prove it / Can t use tactic Coq says: / Strange This computation is locally wrong! Wrong type / Can t prove it / Can t use tactic / Coq says: This is locally wrong! Wrong type / Can t prove it / Can t use tactic / Strange computation Fix???? Fail Fail Try Try This i W Ca Can Strang

83 REPLs are alive and make us reactive

84 Try Fail Fix Brain says: this isn t right... I think.

85 Paper is calm and makes us active

86 Paper forces us to figure out what s going on, formulate a hypothesis

87 So, Coq makes proofs harder to write.

88 ...and harder to read!

89 write-only

90

91 what are we trying to prove??

92 Check fcf_oracle_eq_until_bad. Locate fcf_oracle_eq_until_bad.

93 Why applied with these arguments?

94 What are all of these subgoals?

95 What hypothesis did I use?

96 Wait, that proved the theorem???!!

97 No sense of hierarchy, importance, narrative. Where s the intuition?

98 Written by computers, for computers

99 Proof Intuition Intuition

100 Proof Ok Intuition Ok Intuition???

101 The role of the human is not to understand, but to trust.

102 Text is a double-edged sword.

103 Powerful ways to manipulate and search text...

104 ...but not pictures.

105 Machine Checkable Pictorial Mathematics Proof by ASCII art

106 The house believes that Coq is an incredible tool for thought.

107 Programmers affordances: precise language, instant feedback (correctness checking, REPL)

108 You don t have to know all the rules.

109 Our only hope.

110 The house believes that Coq is a terrible tool for thought.

111 By computers, for computers.

112 Destroys intuition.

113 Built on top of: written notation text editors Gallina Ltac checker IDE

114 How can we make proof assistants intuition assistants?

115 Incremental improvements

116 Visualize theorem dependency tree

117

118 Explanatory, human-readable proofs: diff proof states

119 Translate proofs into English or a better tactic language

120 A Declarative Language For The Coq Proof Assistant, Corbineau

121 Different interfaces for different areas of math

122 One visual interface: Ancient Greek Geometry

123 Calculemus is necessary but not sufficient!

124 Thanks! Katherine

125 Appendix

126 Example 3: program equivalence

127

128

129

130

131

132

133

134

135

136

137

138

Recursion and Intro to Coq

Recursion and Intro to Coq L02-1 Recursion and Intro to Coq Armando Solar Lezama Computer Science and Artificial Intelligence Laboratory M.I.T. With content from Arvind and Adam Chlipala. Used with permission. September 21, 2015

More information

Automating Interactive Theorem Proving with Coq and Ltac. by Oron Propp and Alex Sekula Mentored by Drew Haven PRIMES

Automating Interactive Theorem Proving with Coq and Ltac. by Oron Propp and Alex Sekula Mentored by Drew Haven PRIMES Automating Interactive Theorem Proving with Coq and Ltac by Oron Propp and Alex Sekula Mentored by Drew Haven PRIMES Motivation Math is usually written by hand, checked by other mathematicians Verifying

More information

Syllogistic Logic and its Extensions

Syllogistic Logic and its Extensions 1/31 Syllogistic Logic and its Extensions Larry Moss, Indiana University NASSLLI 2014 2/31 Logic and Language: Traditional Syllogisms All men are mortal. Socrates is a man. Socrates is mortal. Some men

More information

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications. Gerwin Klein Formal Methods

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications. Gerwin Klein Formal Methods NICTA Advanced Course Theorem Proving Principles, Techniques, Applications Gerwin Klein Formal Methods 1 ORGANISATORIALS When Mon 14:00 15:30 Wed 10:30 12:00 7 weeks ends Mon, 20.9.2004 Exceptions Mon

More information

Lecture Notes on Certifying Theorem Provers

Lecture Notes on Certifying Theorem Provers Lecture Notes on Certifying Theorem Provers 15-317: Constructive Logic Frank Pfenning Lecture 13 October 17, 2017 1 Introduction How do we trust a theorem prover or decision procedure for a logic? Ideally,

More information

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 1

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 1 CS 70 Discrete Mathematics and Probability Theory Fall 013 Vazirani Note 1 Induction Induction is a basic, powerful and widely used proof technique. It is one of the most common techniques for analyzing

More information

Math Circles Intro to Complex Numbers Solutions Wednesday, March 21, Rich Dlin. Rich Dlin Math Circles / 27

Math Circles Intro to Complex Numbers Solutions Wednesday, March 21, Rich Dlin. Rich Dlin Math Circles / 27 Math Circles 2018 Intro to Complex Numbers Solutions Wednesday, March 21, 2018 Rich Dlin Rich Dlin Math Circles 2018 1 / 27 Today Today s Adventure Who is Rich Dlin? What do I need to know before we start?

More information

CS 124 Math Review Section January 29, 2018

CS 124 Math Review Section January 29, 2018 CS 124 Math Review Section CS 124 is more math intensive than most of the introductory courses in the department. You re going to need to be able to do two things: 1. Perform some clever calculations to

More information

The Formal Proof Susan Gillmor and Samantha Rabinowicz Project for MA341: Appreciation of Number Theory Boston University Summer Term

The Formal Proof Susan Gillmor and Samantha Rabinowicz Project for MA341: Appreciation of Number Theory Boston University Summer Term The Formal Proof Susan Gillmor and Samantha Rabinowicz Project for MA341: Appreciation of Number Theory Boston University Summer Term 1 2009 Instructor: Kalin Kostadinov The Formal Proof 2 A proof verifies

More information

HOW TO WRITE PROOFS. Dr. Min Ru, University of Houston

HOW TO WRITE PROOFS. Dr. Min Ru, University of Houston HOW TO WRITE PROOFS Dr. Min Ru, University of Houston One of the most difficult things you will attempt in this course is to write proofs. A proof is to give a legal (logical) argument or justification

More information

CIS 500: Software Foundations

CIS 500: Software Foundations CIS 500: Software Foundations Midterm I October 3, 2017 Directions: This exam booklet contains both the standard and advanced track questions. Questions with no annotation are for both tracks. Other questions

More information

Modeling Ontological Structures with Type Classes in Coq

Modeling Ontological Structures with Type Classes in Coq Modeling Ontological Structures with Type Classes in Coq Richard Dapoigny 1 Patrick Barlatier 1 1 LISTIC/Polytech Savoie University of Savoie, Annecy, (FRANCE) Cite as: Dapoigny, R., Barlatier, P. Modeling

More information

Linguistics and logic of common mathematical language I. Peter Koepke and Merlin Carl, Mathematical Institute Universität Bonn

Linguistics and logic of common mathematical language I. Peter Koepke and Merlin Carl, Mathematical Institute Universität Bonn The NAPROCHE Project Linguistics and logic of common mathematical language I Peter Koepke and Merlin Carl, Mathematical Institute Universität Bonn Mathematical texts are formulated in a semi-formal language,

More information

1 Trees. Listing 1: Node with two child reference. public class ptwochildnode { protected Object data ; protected ptwochildnode l e f t, r i g h t ;

1 Trees. Listing 1: Node with two child reference. public class ptwochildnode { protected Object data ; protected ptwochildnode l e f t, r i g h t ; 1 Trees The next major set of data structures belongs to what s called Trees. They are called that, because if you try to visualize the structure, it kind of looks like a tree (root, branches, and leafs).

More information

Beyond First-Order Logic

Beyond First-Order Logic Beyond First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) Beyond First-Order Logic MFES 2008/09 1 / 37 FOL

More information

INTRODUCTION TO LOGIC

INTRODUCTION TO LOGIC INTRODUCTION TO LOGIC L. MARIZZA A. BAILEY 1. The beginning of Modern Mathematics Before Euclid, there were many mathematicians that made great progress in the knowledge of numbers, algebra and geometry.

More information

CS173 Strong Induction and Functions. Tandy Warnow

CS173 Strong Induction and Functions. Tandy Warnow CS173 Strong Induction and Functions Tandy Warnow CS 173 Introduction to Strong Induction (also Functions) Tandy Warnow Preview of the class today What are functions? Weak induction Strong induction A

More information

Chapter 0. Introduction. An Overview of the Course

Chapter 0. Introduction. An Overview of the Course Chapter 0 Introduction An Overview of the Course In the first part of these notes we consider the problem of calculating the areas of various plane figures. The technique we use for finding the area of

More information

CHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC

CHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC 1 CHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC Here, you ll learn: what it means for a logic system to be finished some strategies for constructing proofs Congratulations! Our system of

More information

Logik für Informatiker Formal proofs for propositional logic

Logik für Informatiker Formal proofs for propositional logic Logik für Informatiker Formal proofs for propositional logic WiSe 2009/10 Strategies and tactics in Fitch 1 Understand what the sentences are saying. 2 Decide whether you think the conclusion follows from

More information

Gerwin Klein, June Andronick, Ramana Kumar S2/2016

Gerwin Klein, June Andronick, Ramana Kumar S2/2016 COMP4161: Advanced Topics in Software Verification {} Gerwin Klein, June Andronick, Ramana Kumar S2/2016 data61.csiro.au Content Intro & motivation, getting started [1] Foundations & Principles Lambda

More information

Direct Proof MAT231. Fall Transition to Higher Mathematics. MAT231 (Transition to Higher Math) Direct Proof Fall / 24

Direct Proof MAT231. Fall Transition to Higher Mathematics. MAT231 (Transition to Higher Math) Direct Proof Fall / 24 Direct Proof MAT231 Transition to Higher Mathematics Fall 2014 MAT231 (Transition to Higher Math) Direct Proof Fall 2014 1 / 24 Outline 1 Overview of Proof 2 Theorems 3 Definitions 4 Direct Proof 5 Using

More information

The Cycloid. and the Kinematic Circumference. by Miles Mathis

The Cycloid. and the Kinematic Circumference. by Miles Mathis return to updates The Cycloid and the Kinematic Circumference First published August 31, 2016 by Miles Mathis Those of you who have read my papers on π=4 will know I have explained that problem using many

More information

Proving languages to be nonregular

Proving languages to be nonregular Proving languages to be nonregular We already know that there exist languages A Σ that are nonregular, for any choice of an alphabet Σ. This is because there are uncountably many languages in total and

More information

Lecture 4: Constructing the Integers, Rationals and Reals

Lecture 4: Constructing the Integers, Rationals and Reals Math/CS 20: Intro. to Math Professor: Padraic Bartlett Lecture 4: Constructing the Integers, Rationals and Reals Week 5 UCSB 204 The Integers Normally, using the natural numbers, you can easily define

More information

Gödel s Incompleteness Theorem. Overview. Computability and Logic

Gödel s Incompleteness Theorem. Overview. Computability and Logic Gödel s Incompleteness Theorem Overview Computability and Logic Recap Remember what we set out to do in this course: Trying to find a systematic method (algorithm, procedure) which we can use to decide,

More information

Math 144 Summer 2012 (UCR) Pro-Notes June 24, / 15

Math 144 Summer 2012 (UCR) Pro-Notes June 24, / 15 Before we start, I want to point out that these notes are not checked for typos. There are prbally many typeos in them and if you find any, please let me know as it s extremely difficult to find them all

More information

Supplementary Logic Notes CSE 321 Winter 2009

Supplementary Logic Notes CSE 321 Winter 2009 1 Propositional Logic Supplementary Logic Notes CSE 321 Winter 2009 1.1 More efficient truth table methods The method of using truth tables to prove facts about propositional formulas can be a very tedious

More information

Notes from Yesterday s Discussion. Big Picture. CIS 500 Software Foundations Fall November 1. Some lessons.

Notes from Yesterday s  Discussion. Big Picture. CIS 500 Software Foundations Fall November 1. Some lessons. CIS 500 Software Foundations Fall 2006 Notes from Yesterday s Email Discussion November 1 Some lessons This is generally a crunch-time in the semester Slow down a little and give people a chance to catch

More information

P1-763.PDF Why Proofs?

P1-763.PDF Why Proofs? P1-763.PDF Why Proofs? During the Iron Age men finally started questioning mathematics which eventually lead to the creating of proofs. People wanted to know how and why is math true, rather than just

More information

Chapter 4 Picture proofs

Chapter 4 Picture proofs 82 82 Chapter 4 Picture proofs 4. Adding odd numbers 82 4.2 Geometric sums 84 4.3 Arithmetic mean geometric mean inequality 84 4.4 Logarithms 88 4.5 Geometry 90 4.6 Summing series 92 Do you ever walk through

More information

PHIL 422 Advanced Logic Inductive Proof

PHIL 422 Advanced Logic Inductive Proof PHIL 422 Advanced Logic Inductive Proof 1. Preamble: One of the most powerful tools in your meta-logical toolkit will be proof by induction. Just about every significant meta-logical result relies upon

More information

Lecture 8: A Crash Course in Linear Algebra

Lecture 8: A Crash Course in Linear Algebra Math/CS 120: Intro. to Math Professor: Padraic Bartlett Lecture 8: A Crash Course in Linear Algebra Week 9 UCSB 2014 Qué sed de saber cuánto! Pablo Neruda, Oda a los Números 1 Linear Algebra In the past

More information

Introduction to Algebra: The First Week

Introduction to Algebra: The First Week Introduction to Algebra: The First Week Background: According to the thermostat on the wall, the temperature in the classroom right now is 72 degrees Fahrenheit. I want to write to my friend in Europe,

More information

Proof Techniques (Review of Math 271)

Proof Techniques (Review of Math 271) Chapter 2 Proof Techniques (Review of Math 271) 2.1 Overview This chapter reviews proof techniques that were probably introduced in Math 271 and that may also have been used in a different way in Phil

More information

Chapter 2. Reductions and NP. 2.1 Reductions Continued The Satisfiability Problem (SAT) SAT 3SAT. CS 573: Algorithms, Fall 2013 August 29, 2013

Chapter 2. Reductions and NP. 2.1 Reductions Continued The Satisfiability Problem (SAT) SAT 3SAT. CS 573: Algorithms, Fall 2013 August 29, 2013 Chapter 2 Reductions and NP CS 573: Algorithms, Fall 2013 August 29, 2013 2.1 Reductions Continued 2.1.1 The Satisfiability Problem SAT 2.1.1.1 Propositional Formulas Definition 2.1.1. Consider a set of

More information

Obsevations, Truth and Logic

Obsevations, Truth and Logic Obsevations, Truth and Logic Jaap van Oosten Department of Mathematics Utrecht University Axioma, Groningen May 9, 2018 Art and Science have the same basic subject matter: Observations. Art (visual art):

More information

MITOCW MITRES18_005S10_DerivOfSinXCosX_300k_512kb-mp4

MITOCW MITRES18_005S10_DerivOfSinXCosX_300k_512kb-mp4 MITOCW MITRES18_005S10_DerivOfSinXCosX_300k_512kb-mp4 PROFESSOR: OK, this lecture is about the slopes, the derivatives, of two of the great functions of mathematics: sine x and cosine x. Why do I say great

More information

Understanding Decimal Addition

Understanding Decimal Addition 2 Understanding Decimal Addition 2.1 Experience Versus Understanding This book is about understanding system architecture in a quick and clean way: no black art, nothing you can only get a feeling for

More information

Verifiable Security of Boneh-Franklin Identity-Based Encryption. Federico Olmedo Gilles Barthe Santiago Zanella Béguelin

Verifiable Security of Boneh-Franklin Identity-Based Encryption. Federico Olmedo Gilles Barthe Santiago Zanella Béguelin Verifiable Security of Boneh-Franklin Identity-Based Encryption Federico Olmedo Gilles Barthe Santiago Zanella Béguelin IMDEA Software Institute, Madrid, Spain 5 th International Conference on Provable

More information

COE428 Notes Week 4 (Week of Jan 30, 2017)

COE428 Notes Week 4 (Week of Jan 30, 2017) COE428 Lecture Notes: Week 4 1 of 9 COE428 Notes Week 4 (Week of Jan 30, 2017) Table of Contents Announcements...2 Answers to last week's questions...2 Review...3 Big-O, Big-Omega and Big-Theta analysis

More information

An Introduction to Proof Assistants

An Introduction to Proof Assistants An Introduction to Proof Assistants Patrick Schnider Student Seminar in Combinatorics: Mathematical Software, ETH Zürich 1 Motivation The development of proof assistants was motivated by the use of computers

More information

CIS 500: Software Foundations

CIS 500: Software Foundations CIS 500: Software Foundations Solutions Final Exam December 15, 2017 1. Inductive relations (11 points) Complete the definition at the bottom of the page of an Inductive relation count that relates a list

More information

2. Prime and Maximal Ideals

2. Prime and Maximal Ideals 18 Andreas Gathmann 2. Prime and Maximal Ideals There are two special kinds of ideals that are of particular importance, both algebraically and geometrically: the so-called prime and maximal ideals. Let

More information

Scalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa

Scalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa Scalable and Accurate Verification of Data Flow Systems Cesare Tinelli The University of Iowa Overview AFOSR Supported Research Collaborations NYU (project partner) Chalmers University (research collaborator)

More information

The statement calculus and logic

The statement calculus and logic Chapter 2 Contrariwise, continued Tweedledee, if it was so, it might be; and if it were so, it would be; but as it isn t, it ain t. That s logic. Lewis Carroll You will have encountered several languages

More information

Computational Logic and the Quest for Greater Automation

Computational Logic and the Quest for Greater Automation Computational Logic and the Quest for Greater Automation Lawrence C Paulson, Distinguished Affiliated Professor for Logic in Informatics Technische Universität München (and Computer Laboratory, University

More information

Discrete Mathematics and Probability Theory Spring 2014 Anant Sahai Note 3

Discrete Mathematics and Probability Theory Spring 2014 Anant Sahai Note 3 EECS 70 Discrete Mathematics and Probability Theory Spring 014 Anant Sahai Note 3 Induction Induction is an extremely powerful tool in mathematics. It is a way of proving propositions that hold for all

More information

LCF + Logical Frameworks = Isabelle (25 Years Later)

LCF + Logical Frameworks = Isabelle (25 Years Later) LCF + Logical Frameworks = Isabelle (25 Years Later) Lawrence C. Paulson, Computer Laboratory, University of Cambridge 16 April 2012 Milner Symposium, Edinburgh 1979 Edinburgh LCF: From the Preface the

More information

Chapter 26: Comparing Counts (Chi Square)

Chapter 26: Comparing Counts (Chi Square) Chapter 6: Comparing Counts (Chi Square) We ve seen that you can turn a qualitative variable into a quantitative one (by counting the number of successes and failures), but that s a compromise it forces

More information

Inductive Predicates

Inductive Predicates Inductive Predicates Gert Smolka, Saarland University June 12, 2017 We introduce inductive predicates as they are accommodated in Coq s type theory. Our prime example is the ordering predicate for numbers,

More information

Mathematical Statements

Mathematical Statements Mathematical Statements Joseph R. Mileti January 26, 2015 1 Mathematical Statements and Mathematical Truth Unfortunately, many people view mathematics only as complicated equations and elaborate computational

More information

What is logic, the topic of this course? There are at least two answers to that question.

What is logic, the topic of this course? There are at least two answers to that question. Applied Logic Lecture 1 CS 486 Spring 2005 Tuesday, January 25, 2005 What is Logic? What is logic, the topic of this course? There are at least two answers to that question. General logic: critical examination

More information

Great Ideas in Theoretical Computer Science

Great Ideas in Theoretical Computer Science 15-251 Great Ideas in Theoretical Computer Science Lecture 1: Introduction to the course Instructors Aug 29th, 2017 Teaching Assistants What is computer science? What is theoretical computer science? What

More information

Software Testing Lecture 7 Property Based Testing. Justin Pearson

Software Testing Lecture 7 Property Based Testing. Justin Pearson Software Testing Lecture 7 Property Based Testing Justin Pearson 2017 1 / 13 When are there enough unit tests? Lets look at a really simple example. import u n i t t e s t def add ( x, y ) : return x+y

More information

MITOCW ocw f99-lec01_300k

MITOCW ocw f99-lec01_300k MITOCW ocw-18.06-f99-lec01_300k Hi. This is the first lecture in MIT's course 18.06, linear algebra, and I'm Gilbert Strang. The text for the course is this book, Introduction to Linear Algebra. And the

More information

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

8. TRANSFORMING TOOL #1 (the Addition Property of Equality) 8 TRANSFORMING TOOL #1 (the Addition Property of Equality) sentences that look different, but always have the same truth values What can you DO to a sentence that will make it LOOK different, but not change

More information

Computer Systems on the CERN LHC: How do we measure how well they re doing?

Computer Systems on the CERN LHC: How do we measure how well they re doing? Computer Systems on the CERN LHC: How do we measure how well they re doing? Joshua Dawes PhD Student affiliated with CERN & Manchester My research pages: http://cern.ch/go/ggh8 Purpose of this talk Principally

More information

Propositional Logic. CS 3234: Logic and Formal Systems. Martin Henz and Aquinas Hobor. August 26, Generated on Tuesday 31 August, 2010, 16:54

Propositional Logic. CS 3234: Logic and Formal Systems. Martin Henz and Aquinas Hobor. August 26, Generated on Tuesday 31 August, 2010, 16:54 Propositional Logic CS 3234: Logic and Formal Systems Martin Henz and Aquinas Hobor August 26, 2010 Generated on Tuesday 31 August, 2010, 16:54 1 Motivation In traditional logic, terms represent sets,

More information

Last Time. Inference Rules

Last Time. Inference Rules Last Time When program S executes it switches to a different state We need to express assertions on the states of the program S before and after its execution We can do it using a Hoare triple written

More information

Mathematical Induction

Mathematical Induction Mathematical Induction James K. Peterson Department of Biological Sciences and Department of Mathematical Sciences Clemson University January 12, 2017 Outline Introduction to the Class Mathematical Induction

More information

Mathematical Logic Part One

Mathematical Logic Part One Mathematical Logic Part One Question: How do we formalize the defnitions and reasoning we use in our proofs? Where We're Going Propositional Logic (Today) Basic logical connectives. Truth tables. Logical

More information

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

Alex s Guide to Word Problems and Linear Equations Following Glencoe Algebra 1 Alex s Guide to Word Problems and Linear Equations Following Glencoe Algebra 1 What is a linear equation? It sounds fancy, but linear equation means the same thing as a line. In other words, it s an equation

More information

Complex Numbers For High School Students

Complex Numbers For High School Students Complex Numbers For High School Students For the Love of Mathematics and Computing Saturday, October 14, 2017 Presented by: Rich Dlin Presented by: Rich Dlin Complex Numbers For High School Students 1

More information

The Curry-Howard Isomorphism

The Curry-Howard Isomorphism The Curry-Howard Isomorphism Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) The Curry-Howard Isomorphism MFES 2008/09

More information

Gödel s Second Incompleteness Theorem. incompleteness theorem proceeded by constructing a sentence F such that

Gödel s Second Incompleteness Theorem. incompleteness theorem proceeded by constructing a sentence F such that Gödel s Second Incompleteness Theorem Let ' be a recursively axiomatized theory that includes Q. The proof of Gödel s first incompleteness theorem proceeded by constructing a sentence F such that (1) (F

More information

A New Look at Generalized Rewriting in Type Theory

A New Look at Generalized Rewriting in Type Theory A New Look at Generalized Rewriting in Type Theory Matthieu Sozeau Harvard University 1st Coq Workshop August 21th 2009 Munich, Germany Generalized Rewriting Equational reasoning x = y - x + 1 ==> y +

More information

Gödel s Incompleteness Theorem. Overview. Computability and Logic

Gödel s Incompleteness Theorem. Overview. Computability and Logic Gödel s Incompleteness Theorem Overview Computability and Logic Recap Remember what we set out to do in this course: Trying to find a systematic method (algorithm, procedure) which we can use to decide,

More information

First Things First. Newton s First Law

First Things First. Newton s First Law First Things First Newton s First Law Quick Review In the last unit, we learned how motion can be described With words With graphs With diagrams With numbers and directions Intro In this unit, we ll learn

More information

Math 7 Notes Unit Two: Integers

Math 7 Notes Unit Two: Integers Math 7 Notes Unit Two: Integers Syllabus Objective: 2.1 The student will solve problems using operations on positive and negative numbers, including rationals. Integers the set of whole numbers and their

More information

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

Theorem. For every positive integer n, the sum of the positive integers from 1 to n is n(n+1) Week 1: Logic Lecture 1, 8/1 (Sections 1.1 and 1.3) Examples of theorems and proofs Theorem (Pythagoras). Let ABC be a right triangle, with legs of lengths a and b, and hypotenuse of length c. Then a +

More information

CITS2211 Discrete Structures Proofs

CITS2211 Discrete Structures Proofs CITS2211 Discrete Structures Proofs Unit coordinator: Rachel Cardell-Oliver August 13, 2017 Highlights 1 Arguments vs Proofs. 2 Proof strategies 3 Famous proofs Reading Chapter 1: What is a proof? Mathematics

More information

Solution to Proof Questions from September 1st

Solution to Proof Questions from September 1st Solution to Proof Questions from September 1st Olena Bormashenko September 4, 2011 What is a proof? A proof is an airtight logical argument that proves a certain statement in general. In a sense, it s

More information

CSC236 Week 3. Larry Zhang

CSC236 Week 3. Larry Zhang CSC236 Week 3 Larry Zhang 1 Announcements Problem Set 1 due this Friday Make sure to read Submission Instructions on the course web page. Search for Teammates on Piazza Educational memes: http://www.cs.toronto.edu/~ylzhang/csc236/memes.html

More information

What is proof? Lesson 1

What is proof? Lesson 1 What is proof? Lesson The topic for this Math Explorer Club is mathematical proof. In this post we will go over what was covered in the first session. The word proof is a normal English word that you might

More information

Practice Test III, Math 314, Spring 2016

Practice Test III, Math 314, Spring 2016 Practice Test III, Math 314, Spring 2016 Dr. Holmes April 26, 2016 This is the 2014 test reorganized to be more readable. I like it as a review test. The students who took this test had to do four sections

More information

COMP3702/7702 Artificial Intelligence Week1: Introduction Russell & Norvig ch.1-2.3, Hanna Kurniawati

COMP3702/7702 Artificial Intelligence Week1: Introduction Russell & Norvig ch.1-2.3, Hanna Kurniawati COMP3702/7702 Artificial Intelligence Week1: Introduction Russell & Norvig ch.1-2.3, 3.1-3.3 Hanna Kurniawati Today } What is Artificial Intelligence? } Better know what it is first before committing the

More information

Mini-Course on Limits and Sequences. Peter Kwadwo Asante. B.S., Kwame Nkrumah University of Science and Technology, Ghana, 2014 A REPORT

Mini-Course on Limits and Sequences. Peter Kwadwo Asante. B.S., Kwame Nkrumah University of Science and Technology, Ghana, 2014 A REPORT Mini-Course on Limits and Sequences by Peter Kwadwo Asante B.S., Kwame Nkrumah University of Science and Technology, Ghana, 204 A REPORT submitted in partial fulfillment of the requirements for the degree

More information

THE SIMPLE PROOF OF GOLDBACH'S CONJECTURE. by Miles Mathis

THE SIMPLE PROOF OF GOLDBACH'S CONJECTURE. by Miles Mathis THE SIMPLE PROOF OF GOLDBACH'S CONJECTURE by Miles Mathis miles@mileswmathis.com Abstract Here I solve Goldbach's Conjecture by the simplest method possible. I do this by first calculating probabilites

More information

Discrete Structures Proofwriting Checklist

Discrete Structures Proofwriting Checklist 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,

More information

MAT 417, Fall 2017, CRN: 1766 Real Analysis: A First Course

MAT 417, Fall 2017, CRN: 1766 Real Analysis: A First Course MAT 47, Fall 207, CRN: 766 Real Analysis: A First Course Prerequisites: MAT 263 & MAT 300 Instructor: Daniel Cunningham What is Real Analysis? Real Analysis is the important branch of mathematics that

More information

8. Reductio ad absurdum

8. Reductio ad absurdum 8. Reductio ad absurdum 8.1 A historical example In his book, The Two New Sciences, 10 Galileo Galilea (1564-1642) gives several arguments meant to demonstrate that there can be no such thing as actual

More information

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models Contents Mathematical Reasoning 3.1 Mathematical Models........................... 3. Mathematical Proof............................ 4..1 Structure of Proofs........................ 4.. Direct Method..........................

More information

An Intuitive Introduction to Motivic Homotopy Theory Vladimir Voevodsky

An Intuitive Introduction to Motivic Homotopy Theory Vladimir Voevodsky What follows is Vladimir Voevodsky s snapshot of his Fields Medal work on motivic homotopy, plus a little philosophy and from my point of view the main fun of doing mathematics Voevodsky (2002). Voevodsky

More information

CHAPTER 0. Introduction

CHAPTER 0. Introduction M361 E. Odell CHAPTER 0 Introduction Mathematics has an advantage over other subjects. Theorems are absolute. They are not subject to further discussion as to their correctness. No sane person can write

More information

3 The language of proof

3 The language of proof 3 The language of proof After working through this section, you should be able to: (a) understand what is asserted by various types of mathematical statements, in particular implications and equivalences;

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 September 2, 2004 These supplementary notes review the notion of an inductive definition and

More information

Some Review Problems for Exam 3: Solutions

Some Review Problems for Exam 3: Solutions Math 3355 Spring 017 Some Review Problems for Exam 3: Solutions I thought I d start by reviewing some counting formulas. Counting the Complement: Given a set U (the universe for the problem), if you want

More information

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

30. TRANSFORMING TOOL #1 (the Addition Property of Equality) 30 TRANSFORMING TOOL #1 (the Addition Property of Equality) sentences that look different, but always have the same truth values What can you DO to a sentence that will make it LOOK different, but not

More information

Exercises. Exercise Sheet 1: Propositional Logic

Exercises. Exercise Sheet 1: Propositional Logic B Exercises Exercise Sheet 1: Propositional Logic 1. Let p stand for the proposition I bought a lottery ticket and q for I won the jackpot. Express the following as natural English sentences: (a) p (b)

More information

35 Chapter CHAPTER 4: Mathematical Proof

35 Chapter CHAPTER 4: Mathematical Proof 35 Chapter 4 35 CHAPTER 4: Mathematical Proof Faith is different from proof; the one is human, the other is a gift of God. Justus ex fide vivit. It is this faith that God Himself puts into the heart. 21

More information

Notes 11: OLS Theorems ECO 231W - Undergraduate Econometrics

Notes 11: OLS Theorems ECO 231W - Undergraduate Econometrics Notes 11: OLS Theorems ECO 231W - Undergraduate Econometrics Prof. Carolina Caetano For a while we talked about the regression method. Then we talked about the linear model. There were many details, but

More information

Mathmatics 239 solutions to Homework for Chapter 2

Mathmatics 239 solutions to Homework for Chapter 2 Mathmatics 239 solutions to Homework for Chapter 2 Old version of 8.5 My compact disc player has space for 5 CDs; there are five trays numbered 1 through 5 into which I load the CDs. I own 100 CDs. a)

More information

Section 3.1: Direct Proof and Counterexample 1

Section 3.1: Direct Proof and Counterexample 1 Section 3.1: Direct Proof and Counterexample 1 In this chapter, we introduce the notion of proof in mathematics. A mathematical proof is valid logical argument in mathematics which shows that a given conclusion

More information

(Refer Slide Time: 0:21)

(Refer Slide Time: 0:21) Theory of Computation Prof. Somenath Biswas Department of Computer Science and Engineering Indian Institute of Technology Kanpur Lecture 7 A generalisation of pumping lemma, Non-deterministic finite automata

More information

Programming in Japanese for Literacy Education

Programming in Japanese for Literacy Education Programming in Japanese for Literacy Education Ken Okada, Manabu Sugiura, Yoshiaki Matsuzawa, Megumi Araki, and Hajime Ohiwa Keio University - Graduate School of Media and Governance 5322 Endo, Fujisawa-shi,

More information

Supplementary Notes on Inductive Definitions

Supplementary Notes on Inductive Definitions Supplementary Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 August 29, 2002 These supplementary notes review the notion of an inductive definition

More information

Lecture 15 The Second Incompleteness Theorem. Michael Beeson

Lecture 15 The Second Incompleteness Theorem. Michael Beeson Lecture 15 The Second Incompleteness Theorem Michael Beeson The Second Incompleteness Theorem Let Con PA be the formula k Prf(k, 0 = 1 ) Then Con PA expresses the consistency of PA. The second incompleteness

More information

Equivalent Forms of the Axiom of Infinity

Equivalent Forms of the Axiom of Infinity Equivalent Forms of the Axiom of Infinity Axiom of Infinity 1. There is a set that contains each finite ordinal as an element. The Axiom of Infinity is the axiom of Set Theory that explicitly asserts that

More information

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

Modern Algebra Prof. Manindra Agrawal Department of Computer Science and Engineering Indian Institute of Technology, Kanpur Modern Algebra Prof. Manindra Agrawal Department of Computer Science and Engineering Indian Institute of Technology, Kanpur Lecture 02 Groups: Subgroups and homomorphism (Refer Slide Time: 00:13) We looked

More information