The leaking bucket equation for the water level

is

, where

is the unit step function. The solution is easily seen to be

and says that

is zero for

(because the bucket is empty then). In this Demonstration, we replace the exact solution by a numerical one, which is obtained by repeated application of a so-called integrator (actually the asynchronous leapfrog integrator) to the initial state of the system. We compute this solution well beyond the time

that the bucket is empty. Because the integrator under consideration is reversible, we can take the final (empty) state and evolve it back in exact agreement with the forward evolution. Along this reversed trajectory, the bucket will start to get filled exactly at time

. How can this be? It works because the state description according to the asynchronous leapfrog method contains, in addition to the water level, a second quantity. In most cases this quantity behaves like
. However, when

approaches the value 0 on a trajectory of the leaking bucket equation, the steepness of the right-hand side of this equation makes this second quantity oscillate. It is only the mean value over two consecutive steps that resembles

. This oscillation together with a small linear trend of

carries the information concerning the moment of emptying.