At the start of the book, I had stated: “Topological convexity, topological measure theory, hyperspaces, and powerdomains will be treated in further volumes.” The book got out in 2013, but I wrote that in 2011, almost seven years ago now. What happened?

Well, nothing went according to plan, but I in fact wrote plenty of things during the period. Let me tell you what happened… with a surprise in the middle of the post.

## Version zero

I had been writing on semantic models for mixed probabilistic and non-deterministic choice, and one can still find one of the latest version of my notes on the subject on my Web page. But that was in French, and there were many things I wanted to do better.

## Version one

I had finished writing the non-Hausdorff topology book in 2011, and I started my new project right away. I started writing an introductory, motivating example from computer science… and developed it at such a level of detail that I had written more than 50 pages and the book had not even started. Hence I decided to scrap that version.

## Version two

I decided I should start all over again. Since I needed a notion of integral, and Choquet integration, which has my preference, is based on the Riemann integral of functions on the real line **R**, I decided to start with the Riemann integral on **R**. However, the Riemann integral is perhaps the worst notion of integral in existence. So I decided to talk about the Kurzweil-Henstock integral, which is a kind of miracle (see below). Now, by the time I had finished talking about that, I already had more than 150 pages… and again I had not started touching the real subject of the new book.

I also realized at about that time that there were many books on the subject, including one that had come out during the same period. Hence I decided to abandon that version as well. However, I preferred to push it to completion. But I could not decently publish it—not new enough. I kept it, not knowing what to do with it.

This is the surprise I promised you: that book is here. (Login: guest, password: guest.) Happy New Year 2018!

## Version three

In the meantime, in 2011 or 2012, I realized that I should write the new book with Klaus Keimel, who was one of the best experts on the subject. He agreed, and it took me three years to send him a possible outline. We discussed the contents of the book in early 2015, but nothing really got started for some time: I had more urgent things to do, then he had to finish a paper, then I did not have time, and so on… until Klaus suggested we met for a week in Schloss Dagstuhl, away from all constraints. We finally started it there, in February 2016. However, as soon as we returned home, time escaped me again. Also, I had refereed Klaus’s paper and therefore given him some more work to do before he could come back to the book. As a result, the book had not advanced much until Klaus’s sad demise on November 18th, 2017.

I owe a lot to Klaus, and I decided I should give myself a good kick somewhere and start all over again. Let us hope that **version four** will be the right one.

## The Kurzweil-Henstock integral

The Riemann integral of a function *f* : [*a*, *b*] → **R** is defined as follows. We subdivide the interval [*a*, *b*] by cutting it at points *a*_{0}=*a* ≤ *a*_{1} ≤ *a*_{1} ≤ … ≤ *a _{n-1}* ≤

*a*=

_{n}*b*, pick points

*t*

_{1}in [

*a*

_{0},

*a*

_{1}],

*t*

_{2}in [

*a*

_{1},

*a*

_{2}], …, and

*t*in [

_{n}*a*,

_{n-1}*a*]. That data is called a

_{n}*pointed subdivision*of [

*a*,

*b*]. For such a pointed subdivision

*D*, the

*Riemann sum*of

*f*relatively to

*D*is ∑

*(*

_{i=1}^{n}*a*—

_{i}*a*)

_{i-1}*f*(

*t*). Let us write that as ∫

_{i}

_{D}*f*. If ∫

_{D}*f*tends to some number when the width of the intervals [

*a*,

_{i-1}*a*] tends to 0, then the result if the

_{i}*Riemann integral*of

*f*on the interval [

*a*,

*b*].

Formally, we can cast that as the limit of a net, as follows. The indexing preorder is given by pairs (*D*, η) where *D* is a pointed subdivision as above and such that *a _{i}*—

*a*<η for every

_{i-1}*i*. Moreover, we say that (

*D*, η) ⪯ (

*D’*, η’) if η≥η’. In other words, we are looking at what happens when the integration step η goes to 0. We form a net by saying that its element at index (

*D*, η) is ∫

_{D}*f*, and define the Riemann integral as the limit of that net, if the limit exists.

There are other ways of defining the Riemann integral. Some of you may have heard about Darboux sums—a simpler construction—but that only works to define the Riemann integral of continuous maps. There are also slightly simpler ways to define the Riemann integral itself, for example by restricting to pointed subdivisions where each interval [*a _{i-1}*,

*a*] has exactly the same length.

_{i}However, the point is that there is a simple modification of this modification, the Kurzweil-Henstock integral, which has much better properties than the Riemann integral.

What we do is replace the parameter η, which bounds the width of subintervals [*a _{i-1}*,

*a*]

_{i}*uniformly*, by a so-called

*gauge*δ, which is a map which says what the allowed width of the interval is around each point

*t*.

_{i}Formally, a gauge is a map δ : [*a*, *b*] → (0, ∞). A pointed subdivision *D* is *δ-fine* if and only if *a _{i}*—

*a*<δ(

_{i-1}*t*) for every

_{i}*i*. We now define a net whose index set consists of pairs (

*D*, δ) where

*D*is a δ-fine pointed subdivision, and whose element at index (

*D*, δ) is again ∫

_{D}*f*. This time, we preorder the index set by (

*D*, δ) ⪯ (

*D’*, δ’) if δ(

*t*)≥δ'(

*t*) for every

*t*in [

*a*,

*b*]. The limit of that net, if it exists, is the

*Kurzweil-Henstock integral*of

*f*on [

*a*,

*b*]. We write ∫

_{a}^{b}*f*for that integral.

The only difference with the Riemann integral is that we measure how fine a pointed subdivision is by resorting to a gauge, which is allowed to give varying widths of intervals across [*a*, *b*]. But that makes a huge difference! Let us list a few:

- The
*fundamental theorem of analysis*: for every differentiable map*f*on [*a*,*b*], the Kurzweil-Henstock integral of its derivative*f*‘ exists, and ∫_{a}^{b}*f’=**f*(*b*)—*f*(*a*); the same theorem is known to hold for Riemann integrals only when*f*is*continuously*differentiable, that is, when*f’*is continuous (and when*f*is almost everywhere continuously differentiable if you use the Lebesgue integral). No such assumption is needed with the Kurzweil-Henstock integral. - If
*f*has an integral*I*over the subinterval [_{n }*a*,*b-ε*] for every_{n}*n*, and*I*tends to_{n}*I*when*ε*tends to 0, then_{n}*f*has an integral over the whole interval [*a*,*b*], and that is just*I*. This is called*Hake’s theorem*, and fails for both the Riemann and the Lebesgue integrals. - The
*bounded convergence theorem*holds: if*f*is a sequence of functions that have Kurzweil-Henstock integrals on the interval [_{n}*a*,*b*], if*f*converges to_{n}*f*pointwise (that is, at each point*t*of [*a*,*b*]), and if there are two functions*g*and*h*whose Kurzweil-Henstock integrals are finite and such that*g*≤*f*≤_{n}*h*for every*n*, then ∫_{a}^{b}*f*is the limit of*∫*when_{a}^{b}f_{n}*n*tends to infinity. The same theorem holds with Lebesgue integrals, although it is usually formulated in a slightly different form, and called the*dominated convergence theorem*. With Riemann integrals, the theorem fails at this level of generality, and is only known to hold when*f*converges to_{n}*f**uniformly*. - The Kurzweil-Henstock integral
*generalizes*the Lebesgue integral, in the sense that every function that has a Lebesgue integral also has a Kurzweil-Henstock integral, and their values coincide. (The converse fails.)

I have discovered this fantastic integral by reading some notes due to Jean-Pierre Demailly. He wrote some other notes to show how this can be generalized to integrals of functions of several real variables instead of just one.

## A final note

Define Riemann or Kurzweil-Henstock integrals through nets requires to show that the indexing preorder is *directed*. In the case of Riemann integrals, that is easy. For the Kurzweil-Henstock integral, that is slightly trickier. We take two indices (*D*, δ) and (*D’*, δ’), namely: *D* is a δ-fine pointed subdivision, and *D’* is a δ’-fine pointed subdivision. We wish to find an index (*D”*, δ”) such that δ” ≤ min (δ, δ’), where the min is taken pointwise. We can simply take δ” = min (δ, δ’)… but what can we take for a pointed subdivision *D”* here? That has to be δ”-fine. What makes it work is *Cousin’s Lemma*:

**Lemma (Cousin).** For every gauge δ on [*a*, *b*], there is a pointed subdivision *D* that is δ-fine.

*Proof.* That relies on the fact that [*a*, *b*] is compact, really. The open intervals (*t*—δ(*t*)/2, *t+*δ(*t*)/2), *t* ∈ [*a*, *b*], form an open cover of [*a*, *b*]. Extract a finite subcover, remove the intervals that are included in other intervals, and sort the points *t* thus obtained: *t*_{1} < *t*_{2} < … < *t _{n}*. Let

*a*

_{0}=

*a*, pick

*a*

_{1}from the intersection of (

*t*

_{1}—δ(

*t*

_{1})/2,

*t*

_{1}

*+*δ(

*t*

_{1})/2) and (

*t*

_{2}—δ(

*t*

_{2})/2,

*t*

_{2}

*+*δ(

*t*

_{2})/2), pick

*a*

_{2}from the intersection of (

*t*

_{2}—δ(

*t*

_{2})/2,

*t*

_{2}

*+*δ(

*t*

_{2})/2) and (

*t*

_{3}—δ(

*t*

_{3})/2,

*t*

_{3}

*+*δ(

*t*

_{3})/2), and so on.

However, there is a more elementary proof of Cousin’s Lemma. That proceeds by dichotomy. Assume that there is no δ-fine pointed subdivision on [*a*, *b*]. Then there is no δ-fine pointed subdivision on [*a*, (*a+**b*)/2] or on [(*a+**b*)/2, *b*], otherwise we could just concatenate the two δ-fine pointed subdivisions we found on each of the subintervals. We repeat the process, and find smaller and smaller intervals [*a _{n}*,

*b*],

_{n}*n*in

**N**, on which there is no δ-fine pointed subdivision. Each interval is twice smaller than the previous one, so their intersection consists of just one point

*t*. Look at the open interval (

*t*—δ(

*t*)/2,

*t+*δ(

*t*)/2). For some large enough

*n*, it must contain [

*a*,

_{n}*b*]. (Indeed,

_{n}*t*= sup

*a*= inf b

_{n}*, so*

_{n}*a*>

_{n}*t*—δ(

*t*)/2 and b

*<*

_{n}*t+*δ(

*t*)/2 for

*n*large enough.) But then [

*a*,

_{n}*b*] has a trivial pointed subdivision, consisting of just one interval and the point

_{n}*t*in the middle: contradiction. ☐

Happy New Year 2018!