When trying to understand a complex formula, it helps to first ask *what* is being related before asking *how* they are related.

This post will look at addition theorems for Bessel functions. They related the values of Bessel functions at two points to the values at a third point.

Let *a*, *b*, and *c* be lengths of the sides of a triangle and let θ be the angle between the sides of length *a* and *b*. The triangle could be degenerate, i.e. θ could be π. The addition theorems here give the value of Bessel functions at *c* in terms of values of Bessel functions evaluated at *b* and*c*.

The first addition theorem says that

*J*0(c) = ∑ *J**m*(*a*) *J**m*(*b*) exp(*im*θ)

where the sum is over all integer values of *m*.

This says that the value of the Bessel function *J*0 at *c* is determined by a sort of inner product of values of Bessel functions of all integer orders at *a* and *b*. It’s not exactly an inner product because it is not positive definite. (Sometimes you’ll see the formula above written with a factor λ multiplying *a*, *b*, and *c*. This is because you can scale every side of a triangle by the same amount and not change the angles.)

Define the vectors *x*, *y*, and *z* to be the values of all Bessel functions evaluated at *a*, *b*, and *c*respectively. That is, for integer *k*, *x**k* = *J**k*(*a*) and similar for *y* and *z*. Also, define the vector *w* by*w**k* = exp(*ik*θ). Then the first addition theorem says

*z*0 = ∑ *x*m *y**m* *w**m*.

This is a little unsatisfying because it relates the value of one particular Bessel function at *c* to the values of *all* Bessel functions at *a* and *b*. We’d like to relate all Bessel function values at *c* to the values at *a* and *b*. That is, we’d like to relate the whole vector *z* to the vectors *x* and *y*.

Define the vector *v* by *v**k* = exp(*in*ψ) where ψ is the angle between the sides of length *b* and *c*. Then the formula we’re looking for is

*z**n* = *v**-n* ∑ *x**n*+*m* *y**m* *w**m*.