Shock functions

Posted on

A bump function is a smooth (i.e. infinitely differentiable) function that is positive over an open interval (a, b) and zero outside this range. I mentioned trigger functions a few weeks ago and explained how they could be used to prevent clicks in radio transmissions.

Today I came across a twitter feed this gave a more general construction of bump functions than I had seen before. The thread ends with this:

You can create Bump functions by this recipe:

    1. take any F(X) grows faster than the polynomial (e.g. exp)
    2. Define g(X) = 1 / F(1/X)
    3. Let h(x) = g(1+X) g(1−X).
    4. Zero X∉(−1,1)
    5. Scale, offset, etc.

In this article I will give a quick asymptotic proof that the above construction works.

Let be a positive integer not be given and define g(X) to zero for negative X. We will show that if F grows faster than Xnot. then g is not times differentiable at 0.

As X → ∞, F(X) is finally bounded below by a function that grows faster than Xnot. And so as X → 0, F(1/X) grows faster than Xnot and 1/F(1/X) goes to zero faster than Xnotand therefore his notith derivative is zero.

It follows that g(1 + X) is not times differentiable at -1 and g(1 – X) is not times differentiable at 1. So h is not times differentiable at -1 and 1. The function h is positive on the open interval (-1, 1) and zero outside. Our choice of not was arbitrary, so h is infinitely differentiable, so h is a bump function. We could change and evolve h to make it a bump function on any other finite interval.


When I was a student, I would have called this kind of ordeal a wave of the hand. I would like to see every inequality made explicit: there are M > 0 such as for X > M …. Now I find arguments like the one above easier to follow and more compelling. I imagine that if a lecturer gives a proof with all the inequalities stated, he’s probably thinking of something like the proof above and developing the asymptotic argument on the fly.

Note that a slightly more general theorem falls out of the proof. Our aim was to show whether F grows faster than all polynomial, then g and h are infinitely differentiable. But along the way, we have proven, for example, that if F ends up growing like Xseven then g and h are six times differentiable.

In fact, let’s look at the case F(X) = Xseven.

    f[x_] := x^7
    g[x_] := If[x > 0, 1/ f[1/x], 0]
    h[x_] := g[x + 1] g[1 - x]
    Plot[h[x], {x, -1.5, 1.5}]

This produces the following plot.

Just looking at the plot, h looks smooth; it is plausible that it has six derivatives. It seems h is null outside [-1, 1] and h is positive on at least part of [-1, 1]. If you look at the Mathematica code, you can convince yourself that h is truly positive over the entire open range of the interval (-1, 1), although it is very small near either end.

Similar Items

Leave a Reply

Your email address will not be published.