This paper presents a mathematical tool to help the designer in the difficult task of tolerancing mechanical assemblies. It starts with the identification of a critical tolerance chain around some functional requirement of the assembly. A mathematical relationship which quantifies the effects that possible small displacements of functional elements in the chain have on the functional requirement is obtained. This corresponds to the solution of the tolerance analysis problem. This is expressed as a set of equations in matrix form with a Jacobian matrix which provides the desired analysis relationship. The solution to the tolerance synthesis problem is obtained by simply pseudo-inverting the Jacobian matrix, where small displacements of the functional element pairs in the chain are expressed as a function of the desired small displacements of the functional requirement. The paper presents the procedure for obtaining both the analysis and synthesis equations. An example is used to illustrate the generation of tolerance equations. The paper is concluded with a discussion of how the equations could be used in a statistical tolerancing context using Monte Carlo simulations.