Discrete differential geometry
Check out page 40 of the source PDF (calcula ex geometrica) — they talk about geometrical computation. Instead of
- approximating analog with digital
- doing digital arithmetic
- smoothing the result to fake an analog again
why not OOP-define computer operations that deal directly with the curves via their defining properties?
Sort of like how MATLAB, Mathematica, Wolfram Alpha, YACAS, SAGE, Maxima, Axiom, Maude, PARI, lie, Singular, GAP — the symbolic calculators — do integrals and derivatives by the same rules that you would on paper rather than numerically approximating a function and then delivering only floating-point answers. The “computer as zillions of arithmetic operations” idea is totally incapable of giving a general answer like ∫cos=sin
, or recognise some Green’s-Theorem-type reduction so that a few quintillion computational steps don’t even need to be performed.
The exterior calculus — invention of Élie Cartán — appears to be the right set of principles to object-orientedly program to do the analog-of-symbolic-computation for curves and surfaces.
It makes sense to me. If you have a plane curve with essentially two parameters, why does it need to be represented as an arbitrarily long array of points=pairs
? You should be able to get arbitrary precision (just like a symbolic calculator does) with just the two parameters, if the reasoning system you programmed reasons the right way.
Overload dem operators with curve+curve=⊔
and surface×curve=∮
, the wedge operator’s leading the way.