Binary Lambda Calculus and Combinatory Logic

10
Binary Lambda Calclus and Combinatory Logic Presented by Melvin Zhang by John Tromp in Randomness and Complexity, From Leibniz to Chaitin (2007)

Transcript of Binary Lambda Calculus and Combinatory Logic

Binary Lambda Calclus and

Combinatory Logic

Presented by Melvin Zhang

by John Tromp in Randomness and Complexity,From Leibniz to Chaitin (2007)

Algorithmic Information Theory

Ray Solomonoff

http://jonisalonen.com/2013/lets-draw-the-mandelbrot-set/

for (int row = 0; row < height; row++) {

for (int col = 0; col < width; col++) {

double c_re = (col - width/2)*4.0/width;

double c_im = (row - height/2)*4.0/width;

double x = 0, y = 0;

double r2;

int iter = 0;

while (x*x+y*y < 4 && iter < max) {

double x_new = x*x-y*y+c_re;

y = 2*x*y+c_im;

x = x_new;

iter++;

}

if (iter < max) pixel(col, row, colors[iter]);

else pixel(col, row, black);

}

}http://jonisalonen.com/2013/lets-draw-the-mandelbrot-set/

https://www.cs.auckland.ac.nz/ chaitin/inv.html

“So I’ve done that using LISP because LISP is simpleenough, LISP is in the intersection between theoreticaland practical programming. Lambda calculus is evensimpler and more elegant than LISP, but it’s unusable.”– An Invitation to Algorithmic Information Theory

Gregory Chaitin

http://www.mathrix.org/liquid/archives/the-history-of-the-chaitin-leibniz-medallion

λ-calculus

Alonzo Church

Combinatory Logic

Haskell Curry

Binary λ-calculus

John Tromp

Futher readings:

• John’s LC and CL Playgroundhttps://tromp.github.io/cl/cl.html

• Understanding ioccc.org/2012/tromphttps://github.com/melvinzhang/binary-lambda-calculus

• Church’s Thesis and Functional ProgrammingTurner, 2006

• Meta Math!: The Quest for OmegaChaitin, 2005