Chapter 10 of Walter Rudin's Principles of Mathematical Analysis (3rd edition, McGraw-Hill, 1976) builds the calculus of differential forms in and proves the theorem that unifies the integral theorems of vector analysis. The fundamental theorem of calculus, the Green, divergence and classical Stokes theorems all say the same thing — that integrating a derivative over a region is the same as integrating the original object over the boundary of that region — and Stokes' theorem (Theorem 10.33),
is that statement, once "region" is made precise as a chain of parametrized surfaces and "derivative" as the exterior derivative.
This mission is the tenth in a series formalizing Rudin Chapters 1–11; it uses the inverse function theorem and the several-variable calculus of Mission IX.
For an open , a -surface in is a -mapping from a parameter domain — a -cell or the standard simplex — into ; surfaces are maps, not point sets. A -form in is a formal sum
with continuous coefficients, whose meaning is the rule assigning to each -surface the number
The exterior derivative of is the -form with coefficients ; the pullback along a differentiable substitutes into the coefficients and the differentials. A -chain is a formal integer combination of -surfaces with parameter domain , its integral is the corresponding combination of integrals, and its boundary is obtained from the alternating sum of the faces of .
If is a -chain of class in an open and is a -form of class in , then
For this is the fundamental theorem of calculus, for Green's theorem, for the divergence theorem, and for , the theorem of Stokes.
Stokes' theorem is the organizing theorem of multivariable analysis; its formal content is that and are adjoint, which is also the starting point of de Rham cohomology. Poincaré's lemma is its local converse: on a convex set the only obstruction to a closed form being exact disappears, so the failure of exactness measures the shape of the domain. The change of variables theorem (10.9) is what makes integrals independent of the parametrization and is used in the proof of Stokes itself, and partitions of unity (10.8) are the standard device for passing from local to global statements.
Mathlib has a general change-of-variables theorem for the Lebesgue integral, smooth partitions of unity, and the theory of alternating forms and de Rham differentials on manifolds; it does not have Rudin's concrete apparatus of parametrized surfaces, affine chains, and their boundaries, nor a version of Stokes' theorem for such chains. This mission builds that apparatus and states the chapter's theorems for it; the definitions are reusable for any development that wants a hands-on, coordinate-based treatment of forms.
This is the most demanding mission of the series, for two reasons. First, the objects have to be set up before anything can be said: forms as coefficient families, their integrals as Jacobian integrals, chains, and the boundary operator with its signs. Second, Stokes' theorem is proved by reducing to a single oriented simplex, transporting along the parametrization by Theorem 10.25, and then computing the integral over by an iterated integral in which all but two terms of the boundary cancel; the cancellation is entirely a matter of getting the signs of the face maps right, and it is where a formalization will spend its time.
A further subtlety: with forms presented by coefficients indexed by all index tuples, the identity is false coefficient-wise and true as an identity of forms. Since Rudin defines a form to be its integration functional, statements of the shape "this form vanishes" are formalized as "its integral over every surface vanishes", and that is how 10.20, 10.22(c) and 10.39 are stated here.
Conventions fixed by this mission:
Fin n → ℝ. A -form is Rudin.KForm k n, a coefficient
function indexed by all tuples Fin k → Fin n, following Rudin's equation (34).Rudin.integralOverCell and Rudin.integralOverSimplex are Rudin's equation (35) for the two
admissible parameter domains, with Rudin.jacobian the determinant of the matrix of partial
derivatives. The integral over the parameter domain is the Lebesgue integral for the volume
measure, which agrees with Rudin's Riemann integral for continuous integrands.Rudin.extDeriv and Rudin.pullback are the exterior derivative and the pullback;
Rudin.Chain, Rudin.Chain.integral and Rudin.Chain.boundary are chains with integer
multiplicities, their integrals, and the boundary built from the faces of the standard simplex
with Rudin's signs .ContDiff ℝ 1 and ContDiff ℝ 2 for Rudin's and .Contributions of the supporting differential-form identities (10.20, 10.22, 10.25) are especially welcome, since they are exactly the lemmas the goal theorem consumes.
namespace Rudin
/-- Rudin, Theorem 10.33 (Stokes' theorem): if `Ψ` is a `(m+1)`-chain of class `C''` in an open
set `V ⊆ ℝⁿ` and `ω` is an `m`-form of class `C'` in `V`, then the integral of `dω` over
`Ψ` equals the integral of `ω` over the boundary `∂Ψ`. -/
theorem ch10_stokes (m n : ℕ) (V : Set (Fin n → ℝ)) (hV : IsOpen V) (Ψ : Chain (m + 1) n)
(hΨ : ∀ t ∈ Ψ.terms, ContDiff ℝ 2 t.2.map ∧ ∀ u ∈ stdSimplex (m + 1), t.2.map u ∈ V)
(ω : KForm m n) (hω : ∀ i, ContDiffOn ℝ 1 (ω.coeff i) V) :
Chain.integral (extDeriv ω) Ψ = Chain.integral ω Ψ.boundary := by sorry
end RudinIf is a -chain of class in an open set and is a -form of class in , then . Special cases are the fundamental theorem of calculus, Green's theorem, the divergence theorem and the classical theorem of Stokes.
No open leaves. Every sub-goal is proved or awaiting decomposition.