Formalizing the H-Principle and Sphere Eversion
dl.acm.org
dl.acm.org
The result this is applied to is one by Smale (of the Horseshoe Map and other notions) that a sphere (ie abstract basketball 2D surface in 3 space) can be turned inside out without puncturing or creasing.
Here's a 20 minute video that starts with an outline of the problem and then discusses approaches.
https://www.youtube.com/watch?v=OI-To1eUtuU
This also may interest some:
https://www.researchgate.net/publication/7942052_Visualizing...
Geometric arguments are notoriously difficult to formalize due to their non-symbolic nature and sometimes vague exposition; this work demonstrates (among other things) that even topics involving infinitesimal geometric reasoning in high dimensions with imprecise language can be formalized.
Fascinatingly, the paper further provides humanly usable elaboration of many vague arguments geometers and analysts use (for instance, using filters to formalize nearness arguments). To me this is an under-rated aspect of formalization: it has the potential to clarify our own, human to human communication of human proofs.
I recall a ring-theorist's way of looking at filters is: The filters in a Boolean algebra B are obtained by forming the Boolean algebra B^* dual to B, forming the Boolean ring corresponding to B^*, and then taking its ideals.
Alternatively, a filter over a Boolean algebra B is just some homomorphism f:B^* -> {0,1} where {0,1} is the two-element Boolean algebra.
Now, filters and ultrafilters are now extensively used in ergodic theory and probability to "soften" tricky analytic arguments; they have proven especially fruitful for tackling problems in combinatorics and Ramsey theory. Vitali Bergelson is a big proponent of their use, and recently Moreira, Richter and Robertson proved a fundamental result [0] in that style.
For me, the most intuitive way of thinking about filters is as measure 1 sets in a (finitely additive) probability space. Their basic properties then become very clear. Principal ultrafilters, for instance, correspond to delta masses at individual points.
As a little challenge, try to find "a programmer's way" of thinking about filters and ultrafilters.
As a programmer attempting to develop an intuition for filters, are the following at all close?
- a filter is a funny kind of predicate (involving order shenanigans)
- an ultrafilter is a classical predicate, with excluded middle.
It makes sense to work with "functions" whose domains and ranges are filters. From this perspective, a function X -> Y is continuous at x if it can be restricted to be a function nbhd x -> nbhd f(x), where nbhd x denotes the principal open filter from all the open neighborhoods of x.
If you're familiar with the germ at x of a smooth function f : X -> R, this is exactly the same concept as the restriction of f to a function nbhd x -> R. It's also possible to restrict to a germ at any given subset of f, which I think is neat. For example, you can restrict a smooth function to an infinitesimal neighborhood of a smooth submanifold.
These are some of the reasons why I think that filters have some "user friendliness," once you get a feel for them.
They have a dependency graph that shows the general structure of the argument: https://leanprover-community.github.io/sphere-eversion/bluep...