Great Theoretical Ideas In Computer Science

Slides:



Advertisements
Similar presentations
1 COMP 382: Reasoning about algorithms Unit 9: Undecidability [Slides adapted from Amos Israeli’s]
Advertisements

Homework 7 –Average: 70Median: 75 – Homework 8 –Average: 74Median:
EE1J2 - Slide 1 EE1J2 – Discrete Maths Lecture 10 Cardinality Uncountability of the real numbers.
Computability and Complexity 4-1 Existence of Undecidable Problems Computability and Complexity Andrei Bulatov.
Introduction to Computability Theory
Courtesy Costas Busch - RPI1 A Universal Turing Machine.
Great Theoretical Ideas in Computer Science.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
Fall 2004COMP 3351 A Universal Turing Machine. Fall 2004COMP 3352 Turing Machines are “hardwired” they execute only one program A limitation of Turing.
1 Introduction to Computability Theory Lecture11: The Halting Problem Prof. Amos Israeli.
Cardinality of a Set “The number of elements in a set.” Let A be a set. a.If A =  (the empty set), then the cardinality of A is 0. b. If A has exactly.
Great Theoretical Ideas in Computer Science.
Cantor’s Legacy: Infinity And Diagonalization Great Theoretical Ideas In Computer Science Steven RudichCS Spring 2004 Lecture 25Apr 13, 2004Carnegie.
Functions A B f( ) =. This Lecture We will define a function formally, and then in the next lecture we will use this concept in counting. We will also.
Cardinality of Sets Section 2.5.
Turing’s Legacy: The Limits Of Computation. Great Theoretical Ideas In Computer Science Steven RudichCS Spring 2004 Lecture 26April 20, 2003Carnegie.
1 Lecture 3 (part 3) Functions – Cardinality Reading: Epp Chp 7.6.
Week 7 - Friday.  What did we talk about last time?  Set disproofs  Russell’s paradox  Function basics.
1 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 15-1 Mälardalen University 2012.
Great Theoretical Ideas in Computer Science for Some.
Copyright © Cengage Learning. All rights reserved. CHAPTER 7 FUNCTIONS.
Ch. 11: Cantor’s Infinity!. N = {1, 2, 3, 4, 5, 6, …} “the natural numbers” Z = {…, –3, –2, –1, 0, 1, 2, 3, …} “the integers” Q = {all quotients “a/b”
Great Theoretical Ideas in Computer Science about AWESOME Some Generating Functions Probability Infinity Computability With Alan! (not Turing) Mind-
Basic Structures: Sets, Functions, Sequences, and Sums CSC-2259 Discrete Structures Konstantin Busch - LSU1.
A Universal Turing Machine
Relations, Functions, and Countability
COMPSCI 102 Introduction to Discrete Mathematics.
INFIINITE SETS CSC 172 SPRING 2002 LECTURE 23. Cardinality and Counting The cardinality of a set is the number of elements in the set Two sets are equipotent.
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata (LBAs) are the same as Turing Machines with one difference: The input string tape space is the.
Basic Structures: Sets, Functions, Sequences, and Sums.
Great Theoretical Ideas in Computer Science.
CompSci 102 Discrete Math for Computer Science February 7, 2012 Prof. Rodger Slides modified from Rosen.
Lecture 4 Infinite Cardinals. Some Philosophy: What is “2”? Definition 1: 2 = 1+1. This actually needs the definition of “1” and the definition of the.
1 Melikyan/DM/Fall09 Discrete Mathematics Ch. 7 Functions Instructor: Hayk Melikyan Today we will review sections 7.3, 7.4 and 7.5.
Section 3.2: Sequences and Summations. Def: A sequence is a function from a subset of the set of integers (usually the set of natural numbers) to a set.
CS 285- Discrete Mathematics
CSE 311: Foundations of Computing Fall 2014 Lecture 27: Cardinality.
Great Theoretical Ideas in Computer Science about AWESOME Some Generating Functions Probability.
To Infinity And Beyond! CS Lecture 11 The Ideal Computer: no bound on amount of memory Whenever you run out of memory, the computer contacts the.
Section 2.5. Cardinality Definition: A set that is either finite or has the same cardinality as the set of positive integers (Z + ) is called countable.
1 A Universal Turing Machine. 2 Turing Machines are “hardwired” they execute only one program A limitation of Turing Machines: Real Computers are re-programmable.
Fall 2013 Lecture 27: Turing machines and decidability CSE 311: Foundations of Computing.
Sequences Lecture 11. L62 Sequences Sequences are a way of ordering lists of objects. Java arrays are a type of sequence of finite size. Usually, mathematical.
1-1 Copyright © 2013, 2005, 2001 Pearson Education, Inc. Section 2.4, Slide 1 Chapter 2 Sets and Functions.
Cantor’s Legacy: Infinity And Diagonalization
Function Hubert Chan (Chapter 2.1, 2.2) [O1 Abstract Concepts]
The Acceptance Problem for TMs
Discrete Mathematics CS 2610
A Universal Turing Machine
Turing’s Legacy: The Limits Of Computation.
Lecture12 The Halting Problem
Function Hubert Chan (Chapter 2.1, 2.2) [O1 Abstract Concepts]
2.4 Sequences and Summations
Cardinality of Sets Section 2.5.
Countable or Uncountable…That is the question!
Discrete Structures for Computer Science
Great Theoretical Ideas in Computer Science
Module #4.5, Topic #∞: Cardinality & Infinite Sets
Discrete Mathematics and its Applications
Cantor’s Legacy: Infinity And Diagonalization
Discrete Math for CS CMPSC 360 LECTURE 43 Last time: Variance
Formal Languages, Automata and Models of Computation
Cantor’s Legacy: Infinity And Diagonalization
Module #4.5, Topic #∞: Cardinality & Infinite Sets
Functions Rosen 2.3, 2.5 f( ) = A B Lecture 5: Oct 1, 2.
Introduction to Discrete Mathematics
CS21 Decidability and Tractability
Cardinality Definition: The cardinality of a set A is equal to the cardinality of a set B, denoted |A| = |B|, if and only if there is a one-to-one correspondence.
Great Theoretical Ideas in Computer Science
Cantor’s Legacy: Infinity And Diagonalization
Presentation transcript:

Great Theoretical Ideas In Computer Science To Infinity And Beyond! Lecture 11 CS 15-251

The Ideal Computer: no bound on amount of memory Whenever you run out of memory, the computer contacts the factory. A maintenance person is flown by helicopter and attaches 100 Gig of RAM and all programs resume their computations, as if they had never been interrupted.

An Ideal Computer Can Be Programmed To Print Out: : 3.14159265358979323846264… 2: 2.0000000000000000000000… e: 2.7182818284559045235336… 1/3: 0.33333333333333333333…. : 1.6180339887498948482045…

Computable Real Numbers A real number r is computable if there is a program that prints out the decimal representation of r from left to right. Thus, each digit of r will eventually be printed as part of an infinite sequence. Are all real numbers computable?

Describable Numbers A real number r is describable if it can be unambiguously denoted by a finite piece of English text. 2: “Two.” : “The area of a circle of radius one.”

Theorem: Every computable real is also describable Proof: Let r be a computable real that is output by a program P. The following is an unambiguous denotation: “The real number output by:“P

MORAL: A computer program can be viewed as a description of its output.

Are all real numbers describable?

To INFINITY …. and Beyond!

Correspondence Principle If two finite sets can be placed into 1-1 onto correspondence, then they have the same size.

Correspondence Definition Two finite sets are defined to have the same size if and only if they can be placed into 1-1 onto correspondence.

Georg Cantor (1845-1918)

Cantor’s Definition (1874) Two sets are defined to have the same size if and only if they can be placed into 1-1 onto correspondence.

Cantor’s Definition (1874) Two sets are defined to have the same cardinality if and only if they can be placed into 1-1 onto correspondence.

Do N and E have the same cardinality? E = The even, natural numbers.

The attempted correspondence f(x)=x does not take E onto N. E and N do not have the same cardinality! E is a proper subset of N with plenty left over. The attempted correspondence f(x)=x does not take E onto N.

E and N do have the same cardinality! 0, 1, 2, 3, 4, 5, ….… 0, 2, 4, 6, 8,10, …. f(x) = 2x is 1-1 onto.

This distinction never arises when the sets are finite. Lesson: Cantor’s definition only requires that some 1-1 correspondence between the two sets is onto, not that all 1-1 correspondences are onto. This distinction never arises when the sets are finite.

If this makes you feel uncomfortable….. TOUGH! It is the price that you must pay to reason about infinity

Do N and Z have the same cardinality?

N and Z do have the same cardinality! 0, 1, 2, 3, 4, 5, 6 … 0, 1, -1, 2, -2, 3, -3, …. f(x) = x/2 if x is odd -x/2 if x is even

Transitivity Lemma If f: A->B 1-1 onto, and g: B->C 1-1 onto Then h(x) = g(f(x)) is 1-1 onto A->C Hence, N, E, and Z all have the same cardinality.

Do N and Q have the same cardinality? = { 0, 1, 2, 3, 4, 5, 6, 7, …. } Q = The Rational Numbers

No way! The rationals are dense: between any two there is a third. You can’t list them one by one without leaving out an infinite number of them.

Don’t jump to conclusions! There is a clever way to list the rationals, one at a time, without missing a single one!

The point at x,y represents x/y

The point at x,y represents x/y 3 1 2 The point at x,y represents x/y

So far we know that N, E, Z, and Q are countable. We call a set countable if it can be placed into 1-1 onto correspondence with the natural numbers. So far we know that N, E, Z, and Q are countable.

Do N and R have the same cardinality? R = The Real Numbers

No way! You will run out of natural numbers long before you match up every real.

Don’t jump to conclusions! You can’t be sure that there isn’t some clever correspondence that you haven’t thought of yet.

He invented a very important technique called I am sure! Cantor proved it. He invented a very important technique called “DIAGONALIZATION”.

Theorem: The set I of reals between 0 and 1 is not countable. Proof by contradiction: Suppose I is countable. Let f be the 1-1 onto function from N to I. Make a list L as follows: 0: decimal expansion of f(0) 1: decimal expansion of f(1) … k: decimal expansion of f(k)

Theorem: The set I of reals between 0 and 1 is not countable. Proof by contradiction: Suppose I is countable. Let f be the 1-1 onto function from N to I. Make a list L as follows: 0: .3333333333333333333333… 1: .3141592656578395938594982.. … k: .345322214243555345221123235..

L 1 2 3 4 …

L 1 2 3 4 … d0 d1 d2 d3

L 1 2 3 4 d0 d1 d2 d3 … ConfuseL = . C0 C1 C2 C3 C4 C5 …

ConfuseL = . C0 C1 C2 C3 C4 C5 … 5, if dk=6 6, otherwise Ck= L d0 d1 1 2 3 4 d0 d1 d2 d3 … 5, if dk=6 6, otherwise Ck= ConfuseL = . C0 C1 C2 C3 C4 C5 …

. C0 C1 C2 C3 C4 C5 … 5, if dk=6 6, otherwise Ck= L 1 2 3 4 d0 d1 d2 d3 … 5, if dk=6 6, otherwise Ck= . C0 C1 C2 C3 C4 C5 … By design, ConfuseL can’t be on the list! ConfuseL differs from the kth element on the list in the kth position. Contradiction of assumption that list is complete.

The set of reals is uncountable!

Why can’t the same argument be used to show that Q is uncountable? Hold it! Why can’t the same argument be used to show that Q is uncountable?

The argument works the same for Q until the punchline The argument works the same for Q until the punchline. CONFUSEL is not necessarily rational, so there is no contradiction from the fact that it is missing.

S* = All finite strings of symbols from S including the empty string e Standard Notation = Any finite alphabet Example: {a,b,c,d,e,…,z} S* = All finite strings of symbols from S including the empty string e

Theorem: Every infinite subset S of S* is countable Proof: List S in alphabetical order. Map the first word to 0, the second to 1, and so on….

Stringing Symbols Together = The symbols on a standard keyboard The set of all possible Java programs is a subset of S* The set of all possible finite pieces of English text is a subset of S*

The set of all possible Java programs is countable. Thus: The set of all possible Java programs is countable. The set of all possible finite length pieces of English text is countable.

There are countably many Java program and uncountably many reals. HENCE: MOST REALS ARE NOT COMPUTABLE.

There are countably many descriptions and uncountably many reals. Hence: MOST REAL NUMBERS ARE NOT DESCRIBEABLE!

BINGO BONZO!

Is there a real number that can be described, but not computed?

We know there are at least 2 infinities. Are there more?

There are many, many, many, many, many more! So many infinities that the number of infinities goes beyond any infinity!

Power Set The power set of S is the set of all subsets of S. The power set is denoted P(S). Proposition: If S is finite, the power set of S has cardinality 2|S|

Theorem: S can’t be put into 1-1 correspondence with P(S) Suppose f:S->P(S) is 1-1 and ONTO. Let CONFUSE =All x in S such that x is not contained in f(x) There is some y such that f(y)=CONFUSE IS Y in CONFUSE? YES: definition of CONFUSE implies NO NO: definition of CONFUSE implies YES CONTRADICTION

This proves that there are at least a countable number of infinities. The first infinity is called: 0

Cantor wanted to show that the number of reals was 1 0,, 1, 2, .. Cantor wanted to show that the number of reals was 1

Cantor couldn’t prove that 1 was the number of reals Cantor couldn’t prove that 1 was the number of reals. This helped feed his depression. He called it The Continuum Hypothesis.

The Continuum Hypothesis can’t be proved or disproved The Continuum Hypothesis can’t be proved or disproved! This has been proved!

S = union of Si for i  q Contradiction How Many Infinities? Suppose there are q infinities. For all i, let Si be a set of size i. S = union of Si for i  q Easy to prove that S is bigger than q Contradiction