Beruflich Dokumente
Kultur Dokumente
Henk Barendregt
Radboud University
Nijmegen, The Netherlands
Mathematics: computing, deduction, modelling 1/24
44
44
44
Computing
44 Deduction
444 (proofs)
(algorithms)
44
44
44
44
44
Modelling
(structures)
Thesis: Deduction
Antithesis: Computing
Synthesis: Archimede, al-Khowarizm combined proving and computing
Systems for
deduction Aristotle, Leibniz, Boole, Peirce, Frege [1879] (predicate logic)
modelling Cantor, Zermelo-Fraenkel [1922] (set theory)
Whitehead-Russell, de Bruijn, Girard, Coquand-Huet (type theory)
Eilenberg-MacLane, ..., (category theory)
computing Thue, Hilbert, Skolem, Herbrand, Kleene,
Church, Turing [1936] (computability)
(AB) A , A B
B (AB)
A A=B
, if M
M B
X = D W = W W = BF D W = F (D W) = F X
XX XX
X XA XX
XA
XA
X
A
Churchs numerals
0 = f x.x = (f (xx))
1 = f x.f x = (f (x(f x)))
2 = f x.f (f x) = (f (x(f (f x))))
...
n = f x.f (n) (x)
A+ n m = n+m
A n m = nm
Take
A+ , nmf x.nf (mf x) then A+ nm = f x.nf (mf x)
A , nmf x.m(y.nf y)x A nm = f x.m(y.nf y)x
Then
A function f : N k N is -definable
if there exists a lambda term F such that for all ~nN k
map(square)(b.b (b (l 2 ) (l 1 )) (l 3 )) = b.b (b (l 4 ) (l 1 )) (l 9 ),
computations termination
processes continuation
Simplest continuation
Let = x.xx. Then
= (x.xx)
=
This can be done in more interesting ways
Given C(~x, f ) = . . . ~x . . . f . . ., there is a term F such that (general recursion)
F ~x = C(~x, F )
Take F = AA, with
A = f~x.C(~x, f f )
then
AA = ~x.C(~x, AA)
so
F ~x = C(~x, F )
TT = A | TT TT
Type assignment
(axiom) x : A, if (x:A)
M : (A B) N :A , x:A M : B
(E) (I)
(M N ) : B (x.M ) : (A B)
Examples
I : (AA)
K : (A B A) T
for all A, B, CT
S : (ABC)(AB)(AC)
I , x.x : AA
K , xy.x : ABA
S , xyz.xz(yz) : (ABC)(AB)AC
(x:A.M ) : (AB) (F p) : B
M M : A ML A,
n noun/subject s sentence
nn red hat (adjective) (ns)(ns) adverbs
(nn)n redness (ns)s quantifiers
n(nn) (John and Henry) are brothers
ns Mary sleeps
nns Mary kisses John
ss not(Mary kisses John)
More complex cases
(nn)(nn)(nn) slightly large
((nn)(nn))(nn)(nn) slightly too large
1900-2000
The computing and deduction traditions again diverged:
Computer Algebra systems versus Proof Checking systems
2000-2100
Certified Mathematics/Computer Science, will unify the two
. . . .
Computing Proving Modeling
. . . .
term term type
M : A
.M : .A
Certifications
Fundamental Theorem of Algebra Geuvers, Wiedijk, Zwanenburg,
Pollack and Niqui Coq
Fundamental Theorem of Calculus Cruz-Filipe Coq
Correctness Buchbergers algorithm Person, Thery Coq
Primality of Oostdijk, Caprotti Coq
9026258083384996860449366072142307801963
Correctness of Fast Fourier Transform Capretta Coq
Book Continuous lattices (in part) Bancerek et al. Mizar
Impossibility of trisecting angles Harrison HOL-light
2
P 1
k=1 k2 = 6
Harrison HOL-light
Prime Number Theorem Avigad, Harrison Isabelle-HOL
Four Colour Theorem Gonthier Coq
Jordan Curve Theorem Hales HOL
Primality of >100 digit numbers Gregoire, Thery, Werner Coq
SP conservative over Stoevring Twelve
Proof of the Kepler conjecture Hales [2014] HOL-light
ARM6 processor Fox [2003] HOL
seL4 Operating system Klein et al [2009]
C-compiler Leroy et al [2009] Coq
~ = [cf (n,m)
P cn cm ~ , cn ].]
f (m)
~ = x.g(x, m)
~ = 0.