|
| 1 | +Laurent Schwartz: Analytical Type Theory |
| 2 | +======================================== |
| 3 | + |
| 4 | +Type Theory for mechanical formalization of Théorie des |
| 5 | +Distributions and Analys Mathematique by Laurent Schwartz. |
| 6 | + |
| 7 | +Type systems in mathematics and computer science provide |
| 8 | +a structured way to formalize proofs and computations. |
| 9 | +In this article, we present a minimal type system, |
| 10 | +designed to encode classical and modern analysis with |
| 11 | +just 19 core constructors. Unlike full HoTT, |
| 12 | +we omit identity types `Id`, `idp`, `J` to keep the system lean, |
| 13 | +\relying instead on `Bool` predicates and external test validation |
| 14 | +for equational reasoning. We’ll explore this system through |
| 15 | +examples, starting with classical Riemann sums, advancing |
| 16 | +to Lebesgue integration, Bishop’s constructive analysis, L_2 spaces, |
| 17 | +and culminating in Schwartz’s theory of distributions. |
| 18 | + |
| 19 | +``` |
| 20 | +type exp = |
| 21 | + | Var of string (* Variables *) |
| 22 | + | Lam of exp * (string * exp) (* Lambda abstraction *) |
| 23 | + | App of exp * exp (* Application *) |
| 24 | + | Pi of exp * (string * exp) (* Dependent function type *) |
| 25 | + | Sig of exp * (string * exp) (* Dependent pair type *) |
| 26 | + | Pair of string * exp * exp (* Pair constructor *) |
| 27 | + | Nat (* Natural numbers *) |
| 28 | + | Real (* Real numbers *) |
| 29 | + | Complex (* Complex numbers *) |
| 30 | + | Bool (* Boolean type *) |
| 31 | + | RealIneq of real_ineq * exp * exp (* Real inequalities: <, >, ≤, ≥ *) |
| 32 | + | RealOps of real_op * exp * exp (* Real operations *) |
| 33 | + | ComplexOps of complex_op * exp * exp (* Complex operations *) |
| 34 | + | Seq of exp (* Sequences *) |
| 35 | + | Limit of exp * exp * exp (* Limits *) |
| 36 | + | Set of exp (* Sets *) |
| 37 | + | Union of exp * exp (* Set union *) |
| 38 | + | Intersect of exp * exp (* Set intersection *) |
| 39 | + | Complement of exp (* Set complement *) |
| 40 | + | Meas of exp * exp (* Measures *) |
| 41 | + | ELebInt of exp * exp (* Lebesgue integral *) |
| 42 | + | Id of exp * exp * exp (* Identity type *) |
| 43 | + | Refl of exp (* Reflexivity *) |
| 44 | + | And of exp * exp (* Conjunction *) |
| 45 | + | If of exp * exp * exp (* Conditional *) |
| 46 | + | Vec of exp * exp * exp (* Vector space *) |
| 47 | + | Ordinal (* Ordinals *) |
| 48 | + | Power of exp (* Power set *) |
| 49 | +and real_op = RPlus | RMinus | RMult | RDiv |
| 50 | +and real_ineq = RLt | RGt | RLte | RGte |
| 51 | +and complex_op = CPlus | CMinus | CMult | CDiv | CExp |
| 52 | +``` |
0 commit comments