Nonholonomic system
A nonholonomic system in physics and mathematics is a physical system whose state depends on the path taken in order to achieve it. Such a system is described by a set of parameters subject to differential constraints and non-linear constraints, such that when the system evolves along a path in its parameter space (the parameters varying continuously in values) but finally returns to the original set of parameter values at the start of the path, the system itself may not have returned to its original state. Nonholonomic mechanics is autonomous division of Newtonian mechanics. Details
More precisely, a nonholonomic system, also called an anholonomic system, is one in which there is a continuous closed circuit of the governing parameters, by which the system may be transformed from any given state to any other state. Because the final state of the system depends on the intermediate values of its trajectory through parameter space, the system cannot be represented by a conservative potential function as can, for example, the inverse square law of the gravitational force. This latter is an example of a holonomic system: path integrals in the system depend only upon the initial and final states of the system (positions in the potential), completely independent of the trajectory of transition between those states. The system is therefore said to be integrable, while the nonholonomic system is said to be nonintegrable. When a path integral is computed in a nonholonomic system, the value represents a deviation within some range of admissible values and this deviation is said to be an anholonomy  produced by the specific path under consideration. This term was introduced by Heinrich Hertz in 1894. The general character of anholonomic systems is that of implicitly dependent parameters. If the implicit dependency can be removed, for example by raising the dimension of the space, thereby adding at least one additional parameter, the system is not truly nonholonomic, but is simply incompletely modeled by the lower-dimensional space. In contrast, if the system intrinsically cannot be represented by independent coordinates (parameters), then it is truly an anholonomic system. Some authors make much of this by creating a distinction between so-called internal and external states of the system, but in truth, all parameters are necessary to characterize the system, be they representative of "internal" or "external" processes, so the distinction is in fact artificial. However, there is a very real and irreconcilable difference between physical systems that obey conservation principles and those that do not. In the case of parallel transport on a sphere, the distinction is clear: a Riemannian manifold has a metric fundamentally distinct from that of a Euclidean space. For parallel transport on a sphere, the implicit dependence is intrinsic to the non-euclidean metric. The surface of a sphere is a two-dimensional space. By raising the dimension, we can more clearly see the nature of the metric, but it is still fundamentally a two-dimensional space with parameters irretrievably entwined in dependency by the Riemannian metric. By contrast, one can consider an X-Y plotter as an example of a holonomic system where the state of the system's mechanical components will have a single fixed configuration for any given position of the plotter pen. If the pen relocates between positions 0,0 and 3,3, the mechanism's gears will have the same final positions regardless of whether the relocation happens by the mechanism first incrementing 3 units on the x-axis and then 3 units on the y-axis, incrementing the Y-axis position first, or operating any other sequence of position-changes that result in a final position of 3,3. Since the final state of the machine is the same regardless of the path taken by the plotter-pen to get to its new position, the end result can be said not to be path-dependent. If we substitute a turtle plotter, the process of moving the pen from 0,0 to 3,3 can result in the gears of the robot's mechanism finishing in different positions depending on the path taken to move between the two positions. See this very similar gantry crane example for a mathematical explanation of why such a system is holonomic. History
N. M. Ferrers first suggested to extend the equations of motion with nonholonomic constraints in 1871. He introduced the expressions for Cartesian velocities in terms of generalized velocities. In 1877, E. Routh wrote the equations with the Lagrange multipliers. In the third edition of his book  for linear non-holonomic constraints of rigid bodies, he introduced the form with multipliers, which is now called the Lagrange equations of the second kind with multipliers. The terms the holonomic and nonholonomic systems were introduced by Heinrich Hertz in 1894. In 1897, S. A. Chaplygin first suggested to form the equations of motion without Lagrange multipliers. Under certain linear constraints, he introduced on the left-hand side of the equations of motion a group of extra terms of the Lagrange-operator type. The remaining extra terms characterise the nonholonomicity of system and they become zero when the given constrains are integrable. In 1901 P. V.Voronets generalised Chaplygin's work to the cases of noncyclic holonomic coordinates 
and of nonstationary constraints. Constraints
Consider a system of  particles with positions  for  with respect to a given reference frame. In classical mechanics, any constraint that is not expressible as

is a non-holonomic constraint. In other words, a nonholonomic constraint is nonintegrable and in Pfaffian form:

 is the number of coordinates. is the number of constraint equations. are coordinates. are coefficients. In order for the above form to be nonholonomic, it is also required that the left hand side neither be a total differential nor be able to be converted into one, perhaps via an integrating factor. For virtual displacements only, the differential form of the constraint is

It is not necessary for all non-holonomic constraints to take this form, in fact it may involve higher derivatives or inequalities. A classical example of an inequality constraint is that of a particle placed on the surface of a sphere, yet is allowed to fall off it:

 is the distance of the particle from the centre of the sphere. is the radius of the sphere. Examples

Rolling wheel
A wheel (sometimes visualized as a unicycle or a rolling coin) is a nonholonomic system. Layperson's explanation
Consider the wheel of a bicycle that is parked in a certain place (on the ground). Initially the inflation valve is at a certain position on the wheel. If the bicycle is ridden around, and then parked in exactly the same place, the valve will almost certainly not be in the same position as before. Its new position depends on the path taken. If the wheel were holonomic, then the valve stem would always end up in the same position as long as the wheel were always rolled back to the same location on the Earth. Clearly, however, this is not the case, so the system is nonholonomic. Mathematical explanation

It is possible to model the wheel mathematically with a system of constraint equations, and then prove that that system is nonholonomic. First, we define the configuration space. The wheel can change its state in three ways: having a different rotation about its axle, having a different steering angle, and being at a different location. We may say that  is the rotation about the axle,  is the steering angle relative to the -axis, and  and  define the spatial position. Thus, the configuration space is:

We must now relate these variables to each other. We notice that as the wheel changes its rotation, it changes its position. The change in rotation and position implying velocities must be present, we attempt to relate angular velocity and steering angle to linear velocities by taking simple time-derivatives of the appropriate terms:

The velocity in the  direction is equal to the angular velocity times the radius times the cosine of the steering angle, and the  velocity is similar. Now we do some algebraic manipulation to transform the equation to Pfaffian form so it is possible to test whether it is holonomic, starting with:

Then, let's separate the variables from their coefficients (left side of equation, derived from above). We also realize that we can multiply all terms by  so we end up with only the differentials (right side of equation):

The right side of the equation is now in Pfaffian form:

We now use the universal test for holonomic constraints. If this system were holonomic, we might have to do up to eight tests. However, we can use mathematical intuition to try our best to prove that the system is nonholonomic on the first test. Considering the test equation is:

we can see that if any of the terms , , or  were zero, that that part of the test equation would be trivial to solve and would be equal to zero. Therefore, it is often best practice to have the first test equation have as many non-zero terms as possible to maximize the chance of the sum of them not equaling zero. Therefore, we choose:

We substitute into our test equation:

and simplify:

We can easily see that this system, as described, is nonholonomic, because  is not always equal to zero. Additional conclusions
We have completed our proof that the system is nonholonomic, but our test equation gave us some insights about whether the system, if further constrained, could be holonomic. Many times test equations will return a result like  implying the system could never be constrained to be holonomic without radically altering the system, but in our result we can see that  can be equal to zero, in two different ways:
 , the radius of the wheel, can be zero. This is not helpful as the system in practice would lose all of its degrees of freedom. can be zero by setting  equal to zero. This implies that if the wheel were not allowed to turn and had to move only in a straight line at all times, it would be a holonomic system. There is one thing that we have not yet considered however, that to find all such modifications for a system, one must perform all eight test equations (four from each constraint equation) and collect all the failures to gather all requirements to make the system holonomic, if possible. In this system, out of the seven additional test equations, an additional case presents itself:

This does not pose much difficulty, however, as adding the equations and dividing by  results in:

which with some simple algebraic manipulation becomes:

which has the solution  (from ). Refer back to the layman's explanation above where it is said, "[The valve stem's] new position depends on the path taken. If the wheel were holonomic, then the valve stem would always end up in the same position as long as the wheel were always rolled back to the same location on the Earth. Clearly, however, this is not the case, so the system is nonholonomic." However it is easy to visualize that if the wheel were only allowed to roll in a perfectly straight line and back, the valve stem would end up in the same position! In fact, moving parallel to the given angle of  is not actually necessary in the real world as the orientation of the coordinate system itself is arbitrary. The system can become holonomic if the wheel moves only in a straight line at any fixed angle relative to a given reference. Thus, we have not only proved that the original system is nonholonomic, but we also were able to find a restriction that can be added to the system to make it holonomic. However, there is something mathematically special about the restriction of  for the system to make it holonomic, as  in a Cartesian grid. Combining the two equations and eliminating , we indeed see that  and therefore one of those two coordinates is completely redundant. We already know that the steering angle is a constant, so that means the holonomic system here needs to only have a configuration space of . As discussed here, a system that is modellable by a Pfaffian constraint must be holonomic if the configuration space consists of two or fewer variables. By modifying our original system to restrict it to have only two degrees of freedom and thus requiring only two variables to be described, and assuming it can be described in Pfaffian form (which in this example we already know is true), we are assured that it is holonomic. Rolling sphere
This example is an extension of the 'rolling wheel' problem considered above. Consider a three-dimensional orthogonal Cartesian coordinate frame, for example, a level table top with a point marked on it for the origin, and the x and y axes laid out with pencil lines. Take a sphere of unit radius, for example, a ping-pong ball, and mark one point B in blue. Corresponding to this point is a diameter of the sphere, and the plane orthogonal to this diameter positioned at the center C of the sphere defines a great circle called the equator associated with point B. On this equator, select another point R and mark it in red. Position the sphere on the z = 0 plane such that the point B is coincident with the origin, C is located at x = 0, y = 0, z = 1, and R is located at x = 1, y = 0, and z = 1, i.e. R extends in the direction of the positive x axis. This is the initial or reference orientation of the sphere. The sphere may now be rolled along any continuous closed path in the z = 0 plane, not necessarily a simply connected path, in such a way that it neither slips nor twists, so that C returns to x = 0, y = 0, z = 1. In general, point B is no longer coincident with the origin, and point R no longer extends along the positive x axis. In fact, by selection of a suitable path, the sphere may be re-oriented from the initial orientation to any possible orientation of the sphere with C located at x = 0, y = 0, z = 1. The system is therefore nonholonomic. The anholonomy may be represented by the doubly unique quaternion (q and −q) which, when applied to the points that represent the sphere, carries points B and R to their new positions. Foucault pendulum
An additional example of a nonholonomic system is the Foucault pendulum. In the local coordinate frame the pendulum is swinging in a vertical plane with a particular orientation with respect to geographic north at the outset of the path. The implicit trajectory of the system is the line of latitude on the Earth where the pendulum is located. Even though the pendulum is stationary in the Earth frame, it is moving in a frame referred to the Sun and rotating in synchrony with the Earth's rate of revolution, so that the only apparent motion of the pendulum plane is that caused by the rotation of the Earth. This latter frame is considered to be an inertial reference frame, although it too is non-inertial in more subtle ways. The Earth frame is well known to be non-inertial, a fact made perceivable by the apparent presence of centrifugal forces and Coriolis forces. Motion along the line of latitude is parameterized by the passage of time, and the Foucault pendulum's plane of oscillation appears to rotate about the local vertical axis as time passes. The angle of rotation of this plane at a time t with respect to the initial orientation is the anholonomy of the system. The anholonomy induced by a complete circuit of latitude is proportional to the solid angle subtended by that circle of latitude. The path need not be constrained to latitude circles. For example, the pendulum might be mounted in an airplane. The anholonomy is still proportional to the solid angle subtended by the path, which may now be quite irregular. The Foucault pendulum is a physical example of parallel transport. Linear polarized light in an optical fiber
Take a length of optical fiber, say three meters, and lay it out in an absolutely straight line. When a vertically polarized beam is introduced at one end, it emerges from the other end, still polarized in the vertical direction. Mark the top of the fiber with a stripe, corresponding with the orientation of the vertical polarization. Now, coil the fiber tightly around a cylinder ten centimeters in diameter. The path of the fiber now describes a helix which, like the circle, has constant curvature. The helix also has the interesting property of having constant torsion. As such the result is a gradual rotation of the fiber about the fiber's axis as the fiber's centerline progresses along the helix. Correspondingly, the stripe also twists about the axis of the helix. When linearly polarized light is again introduced at one end, with the orientation of the polarization aligned with the stripe, it will, in general, emerge as linear polarized light aligned not with the stripe, but at some fixed angle to the stripe, dependent upon the length of the fiber, and the pitch and radius of the helix. This system is also nonholonomic, for we can easily coil the fiber down in a second helix and align the ends, returning the light to its point of origin. The anholonomy is therefore represented by the deviation of the angle of polarization with each circuit of the fiber. By suitable adjustment of the parameters, it is clear that any possible angular state can be produced. Robotics
In robotics, nonholonomic has been particularly studied in the scope of motion planning and feedback linearization for mobile robots. See also
Holonomic constraint
Bicycle and motorcycle dynamics
Falling cat problem
Goryachev–Chaplygin top
Parallel parking problem
Pfaffian constraint
Udwadia–Kalaba equation
Lie group integrator

References

Algebraic topology
Differential geometry
Differential topology
Dynamical systems