What is “computable”? - CTFM 2019-Chong.pdf · PDF file What is...

Click here to load reader

  • date post

    12-Jul-2020
  • Category

    Documents

  • view

    2
  • download

    0

Embed Size (px)

Transcript of What is “computable”? - CTFM 2019-Chong.pdf · PDF file What is...

  • What is “computable”?

    • 1 + 1 = 2 is computable.

    • 123456789987654321 ∼ (108)109 is computable. • π = 4(1− 13 + 15 − 17 + 19 − 111 + · · · )

    = 3.141592653589793238462643383279502884197169 . . . and √

    n7 + 1

    are computable.

  • What is “computable”?

    • 1 + 1 = 2 is computable.

    • 123456789987654321 ∼ (108)109 is computable. • π = 4(1− 13 + 15 − 17 + 19 − 111 + · · · )

    = 3.141592653589793238462643383279502884197169 . . . and √

    n7 + 1

    are computable.

  • What is “computable”?

    • 1 + 1 = 2 is computable.

    • 123456789987654321 ∼ (108)109 is computable.

    • π = 4(1− 13 + 15 − 17 + 19 − 111 + · · · ) = 3.141592653589793238462643383279502884197169 . . .

    and √ n7 + 1

    are computable.

  • What is “computable”?

    • 1 + 1 = 2 is computable.

    • 123456789987654321 ∼ (108)109 is computable. • π = 4(1− 13 + 15 − 17 + 19 − 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 9 Algorithm for bisecting an angle with ruler (straightedge) and compass

  • . . .

    .

    . . .

    .

    . . .

    .

    . . .

    .

    . . .

    .

    . . .

    .

    . . .

    .

    . . .

    .

    . . .

    .

    . . .

    .

    Algorithm: A long history

    《九章算术》

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

    In Chapter 9: Solving a quadratic equation

  • Algorithm: A long history

    Diophantus (210–295 AD)

    “Father of algebra”: Solved quadratic equations in his book Arithmetica

  • Algorithm: A long history

    René Descartes

    Algebraic formula for solution of a quadratic equation first appeared in 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 the prescribed 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 the prescribed 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 the prescribed 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 some degree 2n.

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

  • 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 some degree 2n.

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

  • 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 some degree 2n.

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

  • 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 some degree 2n.

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

  • Negative solution

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

    • Evariste Galois (1812–1832)

    Created Galois Theory (published 1846)) that revolutionized algebra.

  • Negative solution

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

    • Evariste Galois (1812–1832)

    Created Galois Theory (published 1846)) 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 and f (a) < 0 < f (b), then f (c) = 0 for some 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 and f (a) < 0 < f (b), then f (c) = 0 for some 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 and f (a) < 0 < f (b), then f (c) = 0 for some c ∈ [a, b].

    How to find c?

  • Alan Turing (1912–1954)

    Formulated the concept of algorithm and computation on 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 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.

  • Basic facts