Andrej has invited me to write about certain surprising functional

programs.

The first program, due to Ulrich Berger (1990), performs exhaustive

search over the “Cantor space” of infinite sequences of binary

digits. I have included references at the end. A weak form of

exhaustive search amounts to checking whether or not a total predicate

holds for all elements of the Cantor space. Thus, this amounts to

universal quantification over the Cantor space. Can this possibly be

done algorithmically, in finite time?

Continue reading Seemingly impossible functional programs

# Category Archives: Tutorial

# Synthetic Computability (MFPS XXIII Tutorial)

A tutorial presented at the *Mathematical Foundations of Programming Semantics XXIII* Tutorial Day.

Continue reading Synthetic Computability (MFPS XXIII Tutorial)

# On a proof of Cantor’s theorem

The famous theorem by Cantor states that the cardinality of a powerset $P(A)$ is larger than the cardinality of $A$. There are several equivalent formulations, and the one I want to consider is

Theorem (Cantor):There is no onto map $A \to P(A)$.

In this post I would like to analyze the usual proof of Cantor’s theorem and present an insightful reformulation of it which has applications outside set theory. Continue reading On a proof of Cantor’s theorem

# König’s Lemma and the Kleene Tree

For the benefit of the topology seminar audience at the math department of University of Ljubljana, I have written a self-contained explanation of the Kleene tree, which is an interesting object in computability theory. For the benefit of the rest of the planet, I am publishing it here.

Continue reading König’s Lemma and the Kleene Tree

# Sometimes all functions are continuous

You may have heard at times that there are mathematicians who think that *all* functions are continuous. One way of explaining this is to show that all *computable* functions are continuous. The point not appreciated by many (even experts) is that the truth of this claim depends on what programming language we use.

Continue reading Sometimes all functions are continuous