The envelope theorem is a theorem about optimization problems (max & min) in microeconomics. It may be used to prove Hotelling's lemma, Shephard's lemma, and Roy's identity. It also allows for easier computation of comparative statics in generalized economic models.
The theorem exists in two versions, a regular version (unconstrained optimization) and a generalized version (constrained optimization). The regular version can be obtained from the general version because unconstrained optimization is just the special case of constrained optimization with no constraints (or constraints that are always satisfied, i.e. constraints that are identities such as or .
The theorem gets its name from the fact that it shows that a less constrained maximization (or minimization) problem (where some parameters are turned into variables) is the upper (or lower for min) envelope of the original problem. For example, see cost minimization, and compare the long-run (less constrained) and short-run (more constrained – some factors of production are fixed) minimization problems.
For the theorem to hold, the functions being dealt with must have certain well-behaved properties. Specifically, the correspondence mapping parameter values to optimal choices must be differentiable, with it being single-valued (and hence a function) a necessary but not sufficient condition.
The theorem is described below. Note that bold face represents a vector.
Envelope theorem 
A curve in a two-dimensional space is best represented by the parametric equations like x(c) and y(c). The family of curves can be represented in the form where c is the parameter. Generally, the envelope theorem involves one parameter but there can be more than one parameter involved as well.
The envelope of a family of curves g(x,y,c) = 0 is a curve such that at each point on the curve there is some member of the family that touches that particular point tangentially. This forms a curve or surface that is tangential to every curve in the family of curves forming an envelope.
Consider an arbitrary maximization (or minimization) problem where the objective function depends on some parameters :
The function is the problem's optimal-value function — it gives the maximized (or minimized) value of the objective function as a function of its parameters .
Let be the (arg max) value of , expressed in terms of the parameters, that solves the optimization problem, so that . The envelope theorem tells us how changes as a parameter changes, namely:
That is, the derivative of with respect to is given by the partial derivative of with respect to , holding fixed, and then evaluating at the optimal choice .
General envelope theorem 
There also exists a version of the theorem, called the general envelope theorem, used in constrained optimization problems which relates the partial derivatives of the optimal-value function to the partial derivatives of the Lagrangian function.
We are considering the following optimization problem in formulating the theorem (max may be replaced by min, and all results still hold):
Which gives the Lagrangian function:
- is the dot product
Then the general envelope theorem is:
Note that the Lagrange multipliers are treated as constants during differentiation of the Lagrangian function, then their values as functions of the parameters are substituted in afterwards.
Envelope theorem in generalized calculus 
In the calculus of variations, the envelope theorem relates evolutes to single paths. This was first proved by Jean Gaston Darboux and Ernst Zermelo (1894) and Adolf Kneser (1898). The theorem can be stated as follows:
"When a single-parameter family of external paths from a fixed point O has an envelope, the integral from the fixed point to any point A on the envelope equals the integral from the fixed point to any second point B on the envelope plus the integral along the envelope to the first point on the envelope, JOA = JOB + JBA."
See also 
- Arg max
- Optimization problem
- Random optimization
- Simplex algorithm
- Topkis's Theorem
- Variational calculus
- Kimball, W. S. (1952). Calculus of Variations by Parallel Displacement. London: Butterworth. p. 292.