Geonum – geometric number library for unlimited dimensions with O(1) complexity
github.com
github.com
Reading the README and related link [0] I have no idea if this is some serious math concept that I never considered, or is it some sarcastic manifesto.
[0]: https://gist.github.com/mxfactorial/c151619d22ef6603a557dbf3...
There are physics systems that are simplified by operating with phase vectors. It is not a magical constant time dimension hack.
They claim negative numbers and mateicies are unnecessary because they figured out a better way to math.
As for the math itself, you can put anything amount of data you like into this 2-component vector, but nowhere is it claimed that you can get that data back out.
After vigorously shoveling your data onto the head of a pin, you can do any number of operations on that pin in time O(1). And as long as you don't ask for an answer, you'll be satisfied that your calculation was executed the utmost alacrity.
For once I'm almost curious what a LLM has to say about this bullshit.
Amusing tidbit from the copilot instructions:
> avoid words like "proper", "correct", "appropriate" and "valid" in your comments AND responses. these weasel words only create confusion in a lib challenging convention
Ya know what, they claim to be packing thousand-dimensional vectors into a pair of 64 bit floats. Great. The author should compress an entire set of LLM weights and then show us how their LLM performs with this O(1) magic.
push a rust test proving what it reads like
This is exactly what I wished to have answered for myself by submitting this to HN! I came across it in an unrelated PR on GitHub, didn't understand enough to figure out if it's actually something noteworthy or not, but sounded like it, so here we are.
Now someone just have to figure out if this is actually sound or not :) My hunch from looking through the commits is that it's made by someone with an unsound mind, but you never know, could just be I don't understand enough.
dont ask social media technical questions. stay empirical and draft your own tests. welcome to push a failing test discrediting the lib
But ultimately the key data structure is trivial; it's a 2d vector(?) that splits the angle information into quotient and remainder assuming a divisor of PI / 2. This is hardly a novel construction.
// test k*i = j
// k*i equals [1, 3π/2+π/2] = [1, 2π] = [1, 0] which is not j
// (this is a limitation of our simplified implementation)
// in a proper quaternion implementation, k*i would be -j = [1, 2π - π] = [1, π]