What is “computable”? - CTFM 2019 2019-Chong.pdf · What is “computable”? 1 +1 = 2 is...

Post on 12-Jul-2020

4 views 0 download

Transcript of What is “computable”? - CTFM 2019 2019-Chong.pdf · What is “computable”? 1 +1 = 2 is...

What is “computable”?

• 1 + 1 = 2 is computable.

• 123456789987654321 ∼ (108)109is computable.

• π = 4(1− 13 + 1

5 − 17 + 1

9 − 111 + · · · )

= 3.141592653589793238462643383279502884197169 . . .and √

n7 + 1

are computable.

What is “computable”?

• 1 + 1 = 2 is computable.

• 123456789987654321 ∼ (108)109is computable.

• π = 4(1− 13 + 1

5 − 17 + 1

9 − 111 + · · · )

= 3.141592653589793238462643383279502884197169 . . .and √

n7 + 1

are computable.

What is “computable”?

• 1 + 1 = 2 is computable.

• 123456789987654321 ∼ (108)109is computable.

• π = 4(1− 13 + 1

5 − 17 + 1

9 − 111 + · · · )

= 3.141592653589793238462643383279502884197169 . . .and √

n7 + 1

are computable.

What is “computable”?

• 1 + 1 = 2 is computable.

• 123456789987654321 ∼ (108)109is computable.

• π = 4(1− 13 + 1

5 − 17 + 1

9 − 111 + · · · )

= 3.141592653589793238462643383279502884197169 . . .and √

n7 + 1

are computable.

What is “computable”?

Algorithm: The heart of computation

• A “computable” operation is prescribed by an algorithm.

• An algorithm is a set of rules that can be executed step by step.

• Algorithm is not just about numerical computation.

• An algorithm for solving ax2 + bx + c = 0:

x =−b±

√b2 − 4ac

2a

Algorithm: The heart of computation

• A “computable” operation is prescribed by an algorithm.

• An algorithm is a set of rules that can be executed step by step.

• Algorithm is not just about numerical computation.

• An algorithm for solving ax2 + bx + c = 0:

x =−b±

√b2 − 4ac

2a

Algorithm: The heart of computation

• A “computable” operation is prescribed by an algorithm.

• An algorithm is a set of rules that can be executed step by step.

• Algorithm is not just about numerical computation.

• An algorithm for solving ax2 + bx + c = 0:

x =−b±

√b2 − 4ac

2a

Algorithm: The heart of computation

• A “computable” operation is prescribed by an algorithm.

• An algorithm is a set of rules that can be executed step by step.

• Algorithm is not just about numerical computation.

• An algorithm for solving ax2 + bx + c = 0:

x =−b±

√b2 − 4ac

2a

Algorithm: The heart of computation

• A “computable” operation is prescribed by an algorithm.

• An algorithm is a set of rules that can be executed step by step.

• Algorithm is not just about numerical computation.

• An algorithm for solving ax2 + bx + c = 0:

x =−b±

√b2 − 4ac

2a

Algorithm for bisecting an angle

Euclid (circ. 300 BC)

Elements: Book I, Proposition 9Algorithm for bisecting an anglewith ruler (straightedge) andcompass

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Algorithm: A long history

《九章算术》

Nine Chapters on the MathematicalArt (∼ 800 BC–100 AD)

In Chapter 9: Solving a quadraticequation

Algorithm: A long history

Diophantus (210–295 AD)

“Father of algebra”: Solved quadraticequations in his book Arithmetica

Algorithm: A long history

René Descartes

Algebraic formula for solution ofa quadratic equation first appearedin his La Geométrie (1637).

Algorithm: The heart of computation

• An algorithm can be simple or complex, short or very long.

• What is solvable (by an algorithm) is determined by theprescribed rules.

Algorithm: The heart of computation

• An algorithm can be simple or complex, short or very long.

• What is solvable (by an algorithm) is determined by theprescribed rules.

Algorithm: The heart of computation

• An algorithm can be simple or complex, short or very long.

• What is solvable (by an algorithm) is determined by theprescribed rules.

Negative solution

• Trisection of an angle is not solvable by ruler and compass.• (Pierre Wentzel (1837)) Every angle constructed using ruler and

compass corresponds to a root of a minimal polynomial of somedegree 2n.

• Trisecting an angle is impossible in general since it correspondsto root of a cubic polynomial (e.g. trisecting 20◦ = π/9 notpossible).

Negative solution

• Trisection of an angle is not solvable by ruler and compass.

• (Pierre Wentzel (1837)) Every angle constructed using ruler andcompass corresponds to a root of a minimal polynomial of somedegree 2n.

• Trisecting an angle is impossible in general since it correspondsto root of a cubic polynomial (e.g. trisecting 20◦ = π/9 notpossible).

Negative solution

• Trisection of an angle is not solvable by ruler and compass.• (Pierre Wentzel (1837)) Every angle constructed using ruler and

compass corresponds to a root of a minimal polynomial of somedegree 2n.

• Trisecting an angle is impossible in general since it correspondsto root of a cubic polynomial (e.g. trisecting 20◦ = π/9 notpossible).

Negative solution

• Trisection of an angle is not solvable by ruler and compass.• (Pierre Wentzel (1837)) Every angle constructed using ruler and

compass corresponds to a root of a minimal polynomial of somedegree 2n.

• Trisecting an angle is impossible in general since it correspondsto root of a cubic polynomial (e.g. trisecting 20◦ = π/9 notpossible).

Negative solution

• Solution of a polynomial of degree ≥ 5 by the method of radicalsis not possible.

•Evariste Galois (1812–1832)

Created Galois Theory (published1846)) that revolutionized algebra.

Negative solution

• Solution of a polynomial of degree ≥ 5 by the method of radicalsis not possible.

•Evariste Galois (1812–1832)

Created Galois Theory (published1846)) that revolutionized algebra.

A key question: I. Existence

• Given that a mathematical problem has a solution, how does one“compute” a solution?

• Example.

If f is a continuous function andf (a) < 0 < f (b), then f (c) = 0 forsome c ∈ [a, b].

How to find c?

A key question: I. Existence

• Given that a mathematical problem has a solution, how does one“compute” a solution?

• Example.

If f is a continuous function andf (a) < 0 < f (b), then f (c) = 0 forsome c ∈ [a, b].

How to find c?

A key question: I. Existence

• Given that a mathematical problem has a solution, how does one“compute” a solution?

• Example.

If f is a continuous function andf (a) < 0 < f (b), then f (c) = 0 forsome c ∈ [a, b].

How to find c?

Alan Turing (1912–1954)

Formulated the concept ofalgorithm and computationon a Turing machine

Turing machine: Basic model of computation

Basic facts about TM

• A Turing machine (TM) is defined by a set of instructions.• Not every input has an output, and different inputs may have the

same output.• Different TMs may perform the same task.• We can “code” a problem into a TM.

Example: A TM that on input a, b, c

Outputs “1” if ax2 + bx + c = 0 has a real number solution

Outputs “0” otherwise.

Basic facts about TM

• A Turing machine (TM) is defined by a set of instructions.

• Not every input has an output, and different inputs may have thesame output.

• Different TMs may perform the same task.• We can “code” a problem into a TM.

Example: A TM that on input a, b, c

Outputs “1” if ax2 + bx + c = 0 has a real number solution

Outputs “0” otherwise.

Basic facts about TM

• A Turing machine (TM) is defined by a set of instructions.• Not every input has an output, and different inputs may have the

same output.

• Different TMs may perform the same task.• We can “code” a problem into a TM.

Example: A TM that on input a, b, c

Outputs “1” if ax2 + bx + c = 0 has a real number solution

Outputs “0” otherwise.

Basic facts about TM

• A Turing machine (TM) is defined by a set of instructions.• Not every input has an output, and different inputs may have the

same output.• Different TMs may perform the same task.

• We can “code” a problem into a TM.Example: A TM that on input a, b, c

Outputs “1” if ax2 + bx + c = 0 has a real number solution

Outputs “0” otherwise.

Basic facts about TM

• A Turing machine (TM) is defined by a set of instructions.• Not every input has an output, and different inputs may have the

same output.• Different TMs may perform the same task.• We can “code” a problem into a TM.

Example: A TM that on input a, b, c

Outputs “1” if ax2 + bx + c = 0 has a real number solution

Outputs “0” otherwise.

Church-Turing thesis

Intuitively computable⇐⇒ Executable by a Turing machine

• Every Turing machine is a computer program.• “Intuitive” is subjective while “computer program” is precise.• Equating the two is a leap of faith in our perception of truth.

The collection of TMs is the basic “model of computation” (VonNeumann architecture).

Church-Turing thesis

Intuitively computable⇐⇒ Executable by a Turing machine

• Every Turing machine is a computer program.• “Intuitive” is subjective while “computer program” is precise.• Equating the two is a leap of faith in our perception of truth.

The collection of TMs is the basic “model of computation” (VonNeumann architecture).

Church-Turing thesis

Intuitively computable⇐⇒ Executable by a Turing machine

• Every Turing machine is a computer program.

• “Intuitive” is subjective while “computer program” is precise.• Equating the two is a leap of faith in our perception of truth.

The collection of TMs is the basic “model of computation” (VonNeumann architecture).

Church-Turing thesis

Intuitively computable⇐⇒ Executable by a Turing machine

• Every Turing machine is a computer program.• “Intuitive” is subjective while “computer program” is precise.

• Equating the two is a leap of faith in our perception of truth.

The collection of TMs is the basic “model of computation” (VonNeumann architecture).

Church-Turing thesis

Intuitively computable⇐⇒ Executable by a Turing machine

• Every Turing machine is a computer program.• “Intuitive” is subjective while “computer program” is precise.• Equating the two is a leap of faith in our perception of truth.

The collection of TMs is the basic “model of computation” (VonNeumann architecture).

Church-Turing thesis

Intuitively computable⇐⇒ Executable by a Turing machine

• Every Turing machine is a computer program.• “Intuitive” is subjective while “computer program” is precise.• Equating the two is a leap of faith in our perception of truth.

The collection of TMs is the basic “model of computation” (VonNeumann architecture).

The central concern of mathematics

Decide if a mathematical statementis TRUE or FALSE.

• Historically, mathematics took the algorithmic approach.Abstraction came much later.

• Can algorithmic approach answer every mathematical question?

The central concern of mathematics

Decide if a mathematical statementis TRUE or FALSE.

• Historically, mathematics took the algorithmic approach.Abstraction came much later.

• Can algorithmic approach answer every mathematical question?

The central concern of mathematics

Decide if a mathematical statementis TRUE or FALSE.

• Historically, mathematics took the algorithmic approach.Abstraction came much later.

• Can algorithmic approach answer every mathematical question?

The central concern of mathematics

Decide if a mathematical statementis TRUE or FALSE.

• Historically, mathematics took the algorithmic approach.Abstraction came much later.

• Can algorithmic approach answer every mathematical question?

Computable vs noncomputable: Examples

• Fundamental Theorem of Algebra: Any polynomial

anxn + an−1xn−1 + · · ·+ a1x + a0 = 0

has a solution in the complex numbers C.

• (Tanaka and Yamazaki 2001) If the coefficients are computable,then there is a TM that computes a solution.

Computable vs noncomputable: Examples

• Fundamental Theorem of Algebra: Any polynomial

anxn + an−1xn−1 + · · ·+ a1x + a0 = 0

has a solution in the complex numbers C.

• (Tanaka and Yamazaki 2001) If the coefficients are computable,then there is a TM that computes a solution.

Computable vs noncomputable: Examples

• Fundamental Theorem of Algebra: Any polynomial

anxn + an−1xn−1 + · · ·+ a1x + a0 = 0

has a solution in the complex numbers C.

• (Tanaka and Yamazaki 2001) If the coefficients are computable,then there is a TM that computes a solution.

Computable and noncomputable: Examples

• Brouwer’s Fixed Point Theorem: Every continuous function ffrom the unit circle into itself has a fixed point, i.e. an a suchthat f (a) = a.

• (Shioji and Tanaka 1990) There is a computable continuousfunction with no TM to compute a fixed point.

Computable and noncomputable: Examples

• Brouwer’s Fixed Point Theorem: Every continuous function ffrom the unit circle into itself has a fixed point, i.e. an a suchthat f (a) = a.

• (Shioji and Tanaka 1990) There is a computable continuousfunction with no TM to compute a fixed point.

Computable and noncomputable: Examples

• Brouwer’s Fixed Point Theorem: Every continuous function ffrom the unit circle into itself has a fixed point, i.e. an a suchthat f (a) = a.

• (Shioji and Tanaka 1990) There is a computable continuousfunction with no TM to compute a fixed point.

Computable vs noncomputable: Examples

• Complex dynamical systems f (z) = z2 + c, c ∈ C:

Julia set Jc for c = 0.300283+0.48857i

f (z) = z2 + c;f (2)(z) = f (f (z)) = (z2 + c)2 + c;f (n+1)(z) = (f (n)(z))2 + c

Jc = boundary of {z : f (n)(z) 6→ ∞}.

• (Braverman and Yampolsky 2006) There exist computable c’sfor which there is no TM to approximate Jc.

Computable vs noncomputable: Examples

• Complex dynamical systems f (z) = z2 + c, c ∈ C:

Julia set Jc for c = 0.300283+0.48857i

f (z) = z2 + c;f (2)(z) = f (f (z)) = (z2 + c)2 + c;f (n+1)(z) = (f (n)(z))2 + c

Jc = boundary of {z : f (n)(z) 6→ ∞}.

• (Braverman and Yampolsky 2006) There exist computable c’sfor which there is no TM to approximate Jc.

Computable vs noncomputable: Examples

• Complex dynamical systems f (z) = z2 + c, c ∈ C:

Julia set Jc for c = 0.300283+0.48857i

f (z) = z2 + c;f (2)(z) = f (f (z)) = (z2 + c)2 + c;f (n+1)(z) = (f (n)(z))2 + c

Jc = boundary of {z : f (n)(z) 6→ ∞}.

• (Braverman and Yampolsky 2006) There exist computable c’sfor which there is no TM to approximate Jc.

David Hilbert (1862–1943)

In 1900, Hilbert proposed 23 mathematicalproblems.The development of mathematics in thenew century was greatly influenced by in-vestigations of these problems.

Two Hilbert problems

• Problem 2. Prove that arithmetic is consistent, i.e. free ofcontradiction.

• There is a TM T that inputs the (Peano) axioms of arithmetic andoutputs its theorems.

Left: Gódel and Einstein (Princeton, Auguest 1950)

Kurt Gödel (1906–1978)

If arithmetic is consistent,then “consistency of arithmetic”is not an output of T.

Two Hilbert problems

• Problem 2. Prove that arithmetic is consistent, i.e. free ofcontradiction.

• There is a TM T that inputs the (Peano) axioms of arithmetic andoutputs its theorems.

Left: Gódel and Einstein (Princeton, Auguest 1950)

Kurt Gödel (1906–1978)

If arithmetic is consistent,then “consistency of arithmetic”is not an output of T.

Two Hilbert problems

• Problem 2. Prove that arithmetic is consistent, i.e. free ofcontradiction.

• There is a TM T that inputs the (Peano) axioms of arithmetic andoutputs its theorems.

Left: Gódel and Einstein (Princeton, Auguest 1950)

Kurt Gödel (1906–1978)

If arithmetic is consistent,then “consistency of arithmetic”is not an output of T.

Two Hilbert problems

• Problem 2. Prove that arithmetic is consistent, i.e. free ofcontradiction.

• There is a TM T that inputs the (Peano) axioms of arithmetic andoutputs its theorems.

Left: Gódel and Einstein (Princeton, Auguest 1950)

Kurt Gödel (1906–1978)

If arithmetic is consistent,then “consistency of arithmetic”is not an output of T.

Two Hilbert problems

• Problem 10. Produce an algorithm to decide whether a givenpolynomial

P(x1, . . . , xn) = 0

with integer coefficients has a solution in integers.• Examples:

Elliptic curve y2 = x3 + ax + b

Fermat’s equation xn + yn = zn, n > 2

• Martin Davis, Yuri Matiyasevich, Hilary Putnam and JuliaRobinson (1961 to 1969): There is no TM for this.

Two Hilbert problems

• Problem 10. Produce an algorithm to decide whether a givenpolynomial

P(x1, . . . , xn) = 0

with integer coefficients has a solution in integers.

• Examples:

Elliptic curve y2 = x3 + ax + b

Fermat’s equation xn + yn = zn, n > 2

• Martin Davis, Yuri Matiyasevich, Hilary Putnam and JuliaRobinson (1961 to 1969): There is no TM for this.

Two Hilbert problems

• Problem 10. Produce an algorithm to decide whether a givenpolynomial

P(x1, . . . , xn) = 0

with integer coefficients has a solution in integers.• Examples:

Elliptic curve y2 = x3 + ax + b

Fermat’s equation xn + yn = zn, n > 2

• Martin Davis, Yuri Matiyasevich, Hilary Putnam and JuliaRobinson (1961 to 1969): There is no TM for this.

Two Hilbert problems

• Problem 10. Produce an algorithm to decide whether a givenpolynomial

P(x1, . . . , xn) = 0

with integer coefficients has a solution in integers.• Examples:

Elliptic curve y2 = x3 + ax + b

Fermat’s equation xn + yn = zn, n > 2

• Martin Davis, Yuri Matiyasevich, Hilary Putnam and JuliaRobinson (1961 to 1969): There is no TM for this.

Foundational issue

• Since TMs are not able to answer all questions, can westrengthen the notion of TM to compute all mathematical truths?

• For example, write TMn as the nth TM. Consider

• A = {n : TMn has no output}• B = {n : TMn has infinitely many outrputs}•

C = {n : n = 2m0 · 3m1 & TMm0 and TMm1 eventuallyproduce the same outputs}· · ·

• There is No TM to compute A,B or C. In fact, C > B > A interms of “relative difficulty” to compute.

Foundational issue

• Since TMs are not able to answer all questions, can westrengthen the notion of TM to compute all mathematical truths?

• For example, write TMn as the nth TM. Consider

• A = {n : TMn has no output}

• B = {n : TMn has infinitely many outrputs}•

C = {n : n = 2m0 · 3m1 & TMm0 and TMm1 eventuallyproduce the same outputs}· · ·

• There is No TM to compute A,B or C. In fact, C > B > A interms of “relative difficulty” to compute.

Foundational issue

• Since TMs are not able to answer all questions, can westrengthen the notion of TM to compute all mathematical truths?

• For example, write TMn as the nth TM. Consider

• A = {n : TMn has no output}• B = {n : TMn has infinitely many outrputs}

C = {n : n = 2m0 · 3m1 & TMm0 and TMm1 eventuallyproduce the same outputs}· · ·

• There is No TM to compute A,B or C. In fact, C > B > A interms of “relative difficulty” to compute.

Foundational issue

• Since TMs are not able to answer all questions, can westrengthen the notion of TM to compute all mathematical truths?

• For example, write TMn as the nth TM. Consider

• A = {n : TMn has no output}• B = {n : TMn has infinitely many outrputs}•

C = {n : n = 2m0 · 3m1 & TMm0 and TMm1 eventuallyproduce the same outputs}· · ·

• There is No TM to compute A,B or C. In fact, C > B > A interms of “relative difficulty” to compute.

Foundational issue

• Since TMs are not able to answer all questions, can westrengthen the notion of TM to compute all mathematical truths?

• For example, write TMn as the nth TM. Consider

• A = {n : TMn has no output}• B = {n : TMn has infinitely many outrputs}•

C = {n : n = 2m0 · 3m1 & TMm0 and TMm1 eventuallyproduce the same outputs}· · ·

• There is No TM to compute A,B or C. In fact, C > B > A interms of “relative difficulty” to compute.

Foundational issue

• We can create a “larger” model of computationM∗ = all thesets of TMs that our language can describe.

• But it can be proved thatM∗ will still have limitedcomputational power.

• So this model captures only a small fraction of the universe ofmathematical truths.

Foundational issue

• We can create a “larger” model of computationM∗ = all thesets of TMs that our language can describe.

• But it can be proved thatM∗ will still have limitedcomputational power.

• So this model captures only a small fraction of the universe ofmathematical truths.

Foundational issue

• We can create a “larger” model of computationM∗ = all thesets of TMs that our language can describe.

• But it can be proved thatM∗ will still have limitedcomputational power.

• So this model captures only a small fraction of the universe ofmathematical truths.

In the universe of sets,M∗ is a tiny collection.

Foundational issue

• For example, there are uncountably many sets of naturalnumbers butM∗ computes only countably many of them.

• This is a natural limitation ofM∗ and hence of our ability tocompute.

• To overcome this barrier, we need to go to “higher infinity”.• In the universe of higher infinity, there is a more powerful model

of computation. But again there are sets of natural numbers itcannot compute.

Foundational issue

• For example, there are uncountably many sets of naturalnumbers butM∗ computes only countably many of them.

• This is a natural limitation ofM∗ and hence of our ability tocompute.

• To overcome this barrier, we need to go to “higher infinity”.• In the universe of higher infinity, there is a more powerful model

of computation. But again there are sets of natural numbers itcannot compute.

Foundational issue

• For example, there are uncountably many sets of naturalnumbers butM∗ computes only countably many of them.

• This is a natural limitation ofM∗ and hence of our ability tocompute.

• To overcome this barrier, we need to go to “higher infinity”.• In the universe of higher infinity, there is a more powerful model

of computation. But again there are sets of natural numbers itcannot compute.

Foundational issue

• For example, there are uncountably many sets of naturalnumbers butM∗ computes only countably many of them.

• This is a natural limitation ofM∗ and hence of our ability tocompute.

• To overcome this barrier, we need to go to “higher infinity”.

• In the universe of higher infinity, there is a more powerful modelof computation. But again there are sets of natural numbers itcannot compute.

Foundational issue

• For example, there are uncountably many sets of naturalnumbers butM∗ computes only countably many of them.

• This is a natural limitation ofM∗ and hence of our ability tocompute.

• To overcome this barrier, we need to go to “higher infinity”.• In the universe of higher infinity, there is a more powerful model

of computation. But again there are sets of natural numbers itcannot compute.

Back to the physical world...

• But what about Turing’s vision of AI by the year 2000?

That’s another story.

Back to the physical world...

• But what about Turing’s vision of AI by the year 2000?

That’s another story.