  First passage distributions of semi-Markov processes are of interest in
fields such as reliability, survival analysis, and many others. The problem of
finding or computing first passage distributions is, in general, quite
challenging. We take the approach of using characteristic functions (or Fourier
transforms) and inverting them, to numerically calculate the first passage
distribution. Numerical inversion of characteristic functions can be
numerically unstable for a general probability measure, however, we show for
lattice distributions they can be quickly calculated using the inverse discrete
Fourier transform. Using the fast Fourier transform algorithm these
computations can be extremely fast. In addition to the speed of this approach,
we are able to prove a few useful bounds for the numerical inversion error of
the characteristic functions. These error bounds rely on the existence of a
first or second moment of the distribution, or on an eventual monotonicity
condition. We demonstrate these techniques in an example and include R-code.
