Comparing Sets Size without Counting - PowerPoint PPT Presentation

About This Presentation
Title:

Comparing Sets Size without Counting

Description:

... for all the natural numbers: 1, 2, 3, 4, ... Obviously is a real number between 0 and 1 ... If consist of 500 symbols, we map them to the first 500 numbers ... – PowerPoint PPT presentation

Number of Views:28
Avg rating:3.0/5.0
Slides: 20
Provided by: leh71
Category:

less

Transcript and Presenter's Notes

Title: Comparing Sets Size without Counting


1
Comparing Sets Size without Counting
  • 2 sets A and B have the same size if there is a
    function f A? B such that
  • For every x ? A there is one and only y ? B such
    that f(x) y
  • Every y ? B has one x ? A such that f(x) y
  • In such situations f is said to be a bijective

2
Example
B
A
a b c d e f
1 2 3 4 5 6
3
Example (2)
E n n is an even natural number N n n
is a natural number
Does E and N have the same size?
Yes
4
Example (3)
R1 r r is a real positive number greater
than 1 (0,1 r r is a real number between
0 and 1
Does R1 and (0,1 have the same size?
Yes
5
Example (4)
How about R r r is a real non-negative
number N n n is a natural number

Every attempt fails
f(x) x
(leaves numbers like 0.5 out)
f(x) floor(x)
(assigns the same value for numbers like 1.2 and
1.3)
How can we know for sure that there is no
bijective function from R to N?
6
Enumerability
  • We know that there is an enumeration for all the
    natural numbers 1, 2, 3, 4,

, 101000,
The point is that for any natural, say 101000, it
will eventually be listed!
  • There is no such enumeration of all the real
    numbers between 0 and 1 (i.e., 0, 0.01, 0.1003,
    3/?)
  • Thus there cant be any bijective function f N?
    0,1, otherwise f(0), f(1), f(2), would be
    an enumeration for 0,1
  • Surprisingly there is a enumeration for the
    rational numbers (the irrational numbers the ones
    that are non enumerable!)

7
Enumerability (2)
  • The set of all rational numbers
  • p/q p, q are natural numbers
    is enumerable

Note you could easily write a program in C
that outputs this enumeration (and runs forever)
1 2 3 4 5 q 1 1/1
1/2 1/3 1/4 1/5 1/q 2 2/1 2/2 2/3 2/4 2/5
2/q 3 3/1 4 4/1 5 5/1
5/q p p/1
p/q
Enumeration
1/1, 1/2, 2/1, 1/3, 2/2, 3/1, 1/4, , p/q,
8
0,1) Is Not Enumerable
By contradiction suppose that there is an
enumeration for all the real numbers between 0
and 1
1 0.012304565 ... 2 0.10002344345
... 3 0.865732546789 23
0.4345556
9
0,1) Is Not Enumerable (II)
We construct a number ? as follows for each
number n in the enumeration, we look at the n-th
digit in n
1 0.012304565 ... 2 0.10002344345 ... 3
0.865732546789 23 0.4345556
? 0.0056
Obviously ? is a real number between 0 and 1
10
0,1) Is Not Enumerable(III)
We construct a number ? as follows we change
each digit in ? for a different digit
? 0.0056
?
1 0.012304565 ... 2 0.10002344345 ... 3
0.865732546789 23 0.4345556
Thus, it is not possible to enumerate all the
real numbers between 0 and 1!
?
?
11
Consequences
  • This means that even though the natural and the
    real numbers are both infinite, the size of the
    set of the real numbers is bigger than the size
    of the set of the natural numbers.

This has been known for mathematicians for quite
a long time
Astonishingly, this result is relevant for Turing
Machines!
12
Enumerability and Turing Machines
Definition A language L is Turing-enumerable is
there is a Turing machine that enumerates all
words in L in its tape (may run forever)
?w1? w2? w3?
Theorem 1. If a language is decidable then the
language is Turing-enumerable
Theorem 2. A language is semi-decidable if and
only if the language is Turing-enumerable
13
Optional Homework (Wednesday)
  • Explain why C programs can be simulated with
    Turing machines
  • Enumerate the ways to proof that a language is
  • decidable
  • semi-decidable
  • Enumerable
  • 4.20 c)
  • 4.24 a)

14
? is Turing-Enumerable
  • As an example consider ? a, b
  • We can define a lt b and then induce a
    lexicographical order

gt
  • We can can list all elements e, a, b, aa, ab,
    bb, aaa,
  • We can construct a 3-Tape Turing machine with a
    counter i 0, 1, 2, on the second tape, and in
    each loop construct all combinations of words of
    length i in tape 3. Once done, copy those words
    to the end (i.e., ) of the first tape
    (cumbersome but doable!)

??
  • A similar construction can be made for any ?
    (finite)

15
Decidable Implies Enumerable
  • Let L be a language over the alphabet ?
  • If L is decidable there is a Turing Machine that
    decides M
  • Let M be the Turing machine that enumerates ?
  • Construct a 3-tape Turing machine that enumerates
    L as follows
  • M will output words on the 2nd tape
  • Every time M outputs a word w, it is copied in
    the 3rd tape, where M checks if w is in L
  • If w is in L it is appended to the end of the 1st
    tape

16
Enumerable Implies Semi-decidable
  • Let L be a Turing-enumerable language
  • Thus, there is a Turing machine M that enumerates
    words in L
  • We can construct a Turing machine ML that
    semi-decides if a word w is in L as follows

Run M and wait to see if w is put on the tape. If
w is printed on the tape, ML halts. If not, it
continues waiting to see if w is printed on the
tape.
17
Backup Slides Please Ignore
18
? is Enumerable
Theorem. If ? is finite then ? is enumerable
If ? 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, ? 0,
1, , 12, 13, , 654,
If ? a, b, c, d, e, f, g, h, i, j
? a, b, , bc, cd, , gfe,
If ? consist of 500 symbols, we map them to the
first 500 numbers
19
Decidable Implies Enumerable
Suppose that L is decidable. By definition, it
means that there is a Turing machine ML that
decides L
Write a Comment
User Comments (0)
About PowerShow.com