Hilbert's 10th problem asked whether there exists an algorithm to determine if a polynomial Diophantine equation with integer coefficients has a solution. Matiyasevich showed in 1971 that this problem is undecidable by reducing the halting problem for Turing machines to Hilbert's 10th problem. Specifically, he constructed a mapping from instances of the halting problem to instances of Hilbert's 10th problem such that a machine halts if and only if the corresponding Diophantine equation has a solution. This proved that Hilbert's 10th problem is undecidable, meaning no general algorithm can exist to solve it.
1. Hilbert’s 10th problem
Thorsten Altenkirch
Hilbert’s 10th problem – p.1/31
David Hilbert (1862-1943)
1900
Paris International
Congress
Hilbert proposed
23 outstanding problems
in Mathematics
Hilbert’s 10th pro
Hilbert’s problems
1a Is there a transfinite number between that of a
denumerable set and the numbers of the continuum?
Independent, Cohen 1963
1b Can the continuum of numbers be considered a well
ordered set?
Yes, Zermelo 1904 using the Axiom of Choice
which is independent, Fraenkel 1925
2. Can it be proven that the axioms of logic are consistent?
No, Gödel 1931
8. Prove the Riemann hypothesis. Still open
10. Does there exist a universal algorithm for solving
Diophantine equations? Topic today
Hilbert’s 10th problem – p.3/31
Diophantine equations
Example
Are there solutions
for
, yes,
, no
In general?
Hilbert’s 10th pro
2. Relatively Prime
Every number can be (uniquely) represented as a product
of primes, e.g.
Def.: Two numbers are relatively prime, iff the lists of primes
is disjoint.
and
are relatively prime.
and are not relatively prime.
Prop.:
has integer solutions, iff
and
are
relatively prime.
Hilbert’s 10th problem – p.5/31
Hilbert 10th, revisited
Consider Diophantine equations made up from and
.
Dioph
Is there a computer program which decides Dioph
?
Given an equation in Dioph
the program would answe
yes if there is a solution
no if there is no solution.
Hilbert’s 10th pro
Undecidability
Turing, 1930: The problem Halt to decide whether a given pro-
gram (Turing machine) halts is undecidable, i.e it cannot be
solved by any program (Turing machine).
Hilbert’s 10th problem – p.7/31
Reduction
To show that a problem
is undecidable,
we construct a reduction Halt
,
that is a computer program which translates instances of
the halting problem into instances of
.
Why does this work ?
Hilbert’s 10th pro
3. Yuri Matiyasevich (1947)
1971
Matiyasevich shows that
Halt
Dioph
Hence, the answer
to Hilbert’s 10th
is negative
Hilbert’s 10th problem – p.9/31
Julia Roberts
Halt
ExpDioph
Dioph
Hilbert’s 10th prob
ExpDioph
Consider Diophantine equations made up from and
and
ExpDioph
We will show: ExpDioph
is undecidable.
By reducing it to the Halting problem for register machines.
Hilbert’s 10th problem – p.11/31
Eliminating
Prop: A conjunction of 2 equations
can be reduced to one.
How?
Use
.
This also works for
equations (and
variables).
Hilbert’s 10th prob
4. Eliminating
Prop: A disjunction of 2 equations
can be reduced to one.
How?
Use
.
This also works for
equations (and
variables).
Hilbert’s 10th problem – p.13/31
Eliminating negative numbers
Dioph
Dioph
Dioph
Dioph
How?
Hilbert’s 10th prob
Dioph
Dioph
Hint
Lagrange: Every natural number can be written as the sum
of four squares.
!
!
#
%
$
#
%
#
#
%
#
%
'
#
$
#
#
#
#
'
Hilbert’s 10th problem – p.15/31
Rest of the talk
We are going to show that Halt
ExpDioph
.
Here Halt is the Halting problem for Register machines.
Hence we have shown that ExpDioph
is undecidable.
We believe Matiyasevich that ExpDioph
Dioph
or read his paper.
Hilbert’s 10th prob
5. Register machines
registers:
with values in
. Program:
.
.
.
What are the possible instructions
?
Hilbert’s 10th problem – p.17/31
Instructions
INC
(and DEC
)
increments (decrements) register
by one.
GOTO
Goto line .
IF
GOTO
Goto line , if
is
HALT
Ends the program.
Why don’t we have
or
?
Hilbert’s 10th prob
IF
GOTO
DEC
GOTO
Hilbert’s 10th problem – p.19/31
IF
GOTO
DEC
INC
INC
IF
GOTO
DEC
INC
GOTO
Hilbert’s 10th prob
6. The Halting problem
Given a register machine started with all registers 0, will the
machine stop?
We are going to constract a set of equations in ExpDioph
which has a solution iff the machine stops.
Hilbert’s 10th problem – p.21/31
The dominance relation
Def.:
the
th bit of
the
th bit of
, because
, because
We will see: is definable in ExpDioph
Hilbert’s 10th prob
Important Variables
the largest integer,
the number of steps until HALT
Values of register
Sequence number for instruction
is executed at time
otherwise.
Hilbert’s 10th problem – p.23/31
First equations
But these are not equations?
Hilbert’s 10th prob
7. Hilbert’s 10th problem – p.25/31
More equations
Exactly one instruction is executed at any time.
The program starts with the first instruction.
The last instruction is
HALT.
Initially all registers are .
Hilbert’s 10th prob
GOTO
Also for
INC
DEC
we add
Hilbert’s 10th problem – p.27/31
INC,DEC
INC
DEC
Hilbert’s 10th prob
8. IF
GOTO
The next step is either
or
To test
:
Hilbert’s 10th problem – p.29/31
Back to
Theorem (Kummer,Lucas):
is odd
Hence we replace
by
Hilbert’s 10th prob
What about
?
Hilbert’s 10th problem – p.31/31