  Classical orthogonal polynomials have widespread applications including in
numerical integration, solving differential equations, and interpolation.
Changing basis between classical orthogonal polynomials can affect the
convergence, accuracy, and stability of solutions.
  We provide a general method for changing basis between any pair of classical
orthogonal polynomials by using algebraic expressions called coefficient
functions that evaluate to connection coefficients. The method builds directly
on previous work on the change of basis groupoid. The scope has fifteen kinds
of classical orthogonal polynomials including the classes of Jacobi, Gegenbauer
and generalized Laguerre polynomials.
  The method involves the mappings to and from the monomials for these
polynomial bases. Sixteen coefficient functions appear to be new for
polynomials that do not have definite parity. We derive the remainder from
seven sources in the literature. We give a complete summary of thirty
coefficient functions.
  This enables change of basis to be defined algebraically and uniformly
between any pair of classical orthogonal polynomial bases by using a vector dot
product to compose two coefficient functions to give a third.
  A definition of Jacobi polynomials uses a basis of shifted monomials. We find
a key new mapping between the monomials and Jacobi polynomials by using a
general mapping between shifted monomials and monomials. It yields new mappings
for the Chebyshev polynomials of the third and fourth kinds and their shifted
versions.
