3 ms·
Oh wow! I wasn’t expecting to see this on HN. I’m one of the authors of the paper, and I’m happy to answer any questions. (I’m sorry I didn’t see it earlier, it
by robinhouston 4y ago
Oh wow! I wasn’t expecting to see this on HN. I’m one of the authors of the paper, and I’m happy to answer any questions. (I’m sorry I didn’t see it earlier, it was posted in the middle of my night.)
First of all, to clear up a possible misunderstanding: this new formula will not help you to compute determinants more quickly. The number of terms still grows a lot faster than polynomial, and if you just want to compute the determinant, there are polynomial-time algorithms for that.
The best theoretical results on the complexity of computing determinants, that I know of, are in [0]. In practice you'd probably use Gaussian elimination, or maybe Bareiss for integers.
Someone complained that there’s no code in the paper. Since it isn’t really useful for practical computation, I didn’t think code would be useful, but in fact it did start as a Mathematica program when I first discovered it. Adam Goucher (one of my co-authors) wrote a blog post on it [1] within a few days of its discovery, which links to my original Mathematica notebook.
(Edit: ur-whale points out that the link to the Mathematica notebook no longer works. I have now republished it at [2].)
[0] https://users.cs.duke.edu/~elk27/bibliography/04/KaVi04_2697263.pdf https://users.cs.duke.edu/~elk27/bibliography/04/KaVi04_2697...
[1] https://cp4space.hatsya.com/2022/07/02/a-combinatorial-proof-of-houstons-identity/ https://cp4space.hatsya.com/2022/07/02/a-combinatorial-proof...
[2] https://www.wolframcloud.com/obj/robin.houston/Published/determinants.nb https://www.wolframcloud.com/obj/robin.houston/Published/det...
- ur-whale 4y ago> Someone complained that there’s no code in the paper. That was me, apparently much to the dislike of a number of HNers :) Thank you very much for the pointer to the notebook although it is not easy to access, you seem to need a Wolfram account to get to it. [EDIT]: "Sorry, you do not have permission to access this item." after I logged into Wolfram ... > Since it isn’t really useful for practical computation, I didn’t think code would be useful This is a very common misconception. There is a large category of people out there (software engineers among other) that find it much easier to read code than reading abstract math formulas full of weird greek letters and which typically pre-suppose what the reader does and doesn't know (things that are considered "trivial" by the author and not worth mentioning in the paper is often a huge obstacle for the reader to proceed with understanding what goes on). Code is explicit to the degree that a machine can execute it, and therefore often way easier as a path to understanding an idea. Publishing code also has the minor benefits of actually exposing things that are claimed to work but often don't - again because a machine can execute it whereas a math formula in a PDF does not have that nice property.
- robinhouston 4y agoOh, what a pain. Sorry. It looks as though Wolfram Cloud removes published notebooks after 60 days unless you pay extra. I’ve just republished it at https://www.wolframcloud.com/obj/robin.houston/Published/determinants.nb https://www.wolframcloud.com/obj/robin.houston/Published/det... I’d be interested to know whether the code _does_ make it easier for you to understand.
- skyde 4y agoThanks a lot for sharing the code. It does indeed make it order of magnitude easier for me to understand and validate my own theory and assumptions about it. For context when I was like 6 years old I was writing code in BASIC on a “TRS-80 Model III” to do linear algebra for fun (trying to make an arcade game). But never learned algebra until I was forced to at ~20 years old in university. So my understanding of mathematics was always mechanical (algorithm) and never very abstract. And it always was extremely hard to read research paper because the Greek letter don’t even mean the same thing in a (Statistic/ machine learning) paper and in a (physics/ calculus paper). And the author never properly define all the function and variables and assume you are already an expert.
- otikik 4y agoAlso keep in mind that there’s people out there that will take your code and make it 40.363.757.265% more efficient (perhaps not in this case) https://youtu.be/c33AZBnRHks https://youtu.be/c33AZBnRHks
- VyseofArcadia 4y agoMy experience in math unfortunately is that code is just about unpublishable. I'd love to be able to just have relevant code in a paper, but editors will reject it. They'll also reject you for having too much discussion and explanation. Now that almost all "papers" are PDFs and we don't have to worry about printing costs, I worry that the expected brevity in math is just elitism. Sure, if you're one of the six experts in the sub sub subfield the paper concerns itself with, the brevity is welcome, but for everyone else...
- VyseofArcadia 4y agoI'm a former academic whose research area was matrix theory. I left for the dark side and do software engineering these days. I'm just jazzed to see a math paper in my wheelhouse on the front page of HN.