HNHacker News
TopNewBestAskShowJobs

fouronnes3

3,462 karma · joined January 2, 2019

submissionscomments
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
You can do this with bidicalc already! You just have to model the problem correctly. If you expect the ratio to remain constant, what you actually want is a problem with a single free variable: the scale.

    A1 = 1.0       // the scale, your variable
    A2 = 6 * A1    // intermediate values
    A3 = 8 * A1 
    A4 = A2 + A3   // the sum
Now update A4 (or any other cell!) and the scale (A1, the only variable) will update as you expect.
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
Interesting, thanks! I had never heard of this. Yes, bidicalc is much more advanced. You can update any value of an arbitrary dependency graph of cells.
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
Why do you think that 6+8 is a better solution than 7+7?
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
The actual heuristic used to pick a solution from an infinite solution subspace is a bit too complex to explain in a comment. I really need a blackboard :D The main goal was actually to find a solution, any solution at all, and fast. I wanted the backwards update to be very fast to feel as magic as possible. So the heuristic is pretty simple and could definitely be improved!
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
I wasn't aware of this chapter, but I did use constraint propagation for the solver (among other things), thanks!
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
You can do it and it is explained, actually. Use # as a prefix to indicate a constant, e.g.: #50 will be a constant and not a variable.

In the future I'd like to support more user input constraints, in particular domain constraints for variables. So you could tell the solver that this cell must remain in some interval, and it would respect that interval instead of assigning any real value.

fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
Jokes aside, let's say someone does figure out how to break RSA over a weekend project. The evil options are easy to come up with, but what is the actually responsible, ethical, thing to do? Never tell anyone?
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
Never used any of those, so I don't know! I'd be curious to read a comparison from anyone who knows about them.

I think what's pretty unique about the bidicalc solver that I made is that it does not depend on the previous input values to update backwards. It's truly solving the root finding problem. The advantage is that there are never any "stuck in a local optimum" problems with the solver. So you can solve difficult problems like polynomials, etc.

fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
Yes! I'd really like to make something graphical in this same idea space next. See g9.js for example, or parametric CAD software like FredCAD which kinda does what you said.
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
That's an interesting example I hadn't thought of. Probably? I'll need to try it. Thank you for the suggestion!

I think one issue will be that trig functions are kinda weird because they are non-injective. So they work but they are awkward (try solving cos(A1) = 0.5). Inverse kinematics is so well studied, you're probably better off using a dedicated algorithm.

fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
Interesting. Note that the backwards solver of bidicalc does not use the previous input values of variables at all.
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
You can actually solve fifth order polynomials with bidicalc! But it's a numerical solution, not an algebraic one, so no Fields medal.
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
Currently the solver does not use the previous values of inputs at all when solving. But it could use it in some cases as a heuristic I guess, yes!
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
Constants are supported, use # as a prefix, e.g.; #50.

I'd like to add more constraints in the future like a domain constraint for variables.

fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
I do like g9! It was a strong inspiration for bidicalc actually!
fouronnes3··on Show HN: I made a spreadsheet where formulas also update backwards
I made this mostly as a fun challenge :)

You are right that there is some arbitrariness involved when picking a solution, however it's a bit more subtle than that.

Let's say our problem has N free variables.

Step 1 is finding the subset of R^N that is the solution to the root finding problem. If this subset is a point, we are done (return that point). Note that if there is no solution at all bidicalc should correctly report it.

Step 2 is if the solution subset is not a point. Then there is multiple (maybe even an infinity of) solutions, and picking one is indeed arbitrary.

fouronnes3··on GPT-5.2
I want to read a short scify story set in 2150 about how, mysteriously, no one has been able to train a better LLM for 125 years. The binary weights are studied with unbelievably advanced quantum computers but no one can really train a new AI from scratch. This starts cults, wars and legends and ultimately (by the third book) leads to the main protagonist learning to code by hand, something that no human left alive still knows how to do. Could this be the secret to making a new AI from scratch, more than a century later?
fouronnes3··on The current state of the theory that GPL propagates to AI models
Not sure why the FSF or any other organization hasn't released a license like this years ago already.
fouronnes3··on Shai-Hulud Returns: Over 300 NPM Packages Infected
Surely in this case the problem is a technical one, and with more work towards a better security model and practices we can have the best of both worlds, no?
fouronnes3··on Nano Banana Pro
I guess the true endgame of AI products is naming them. We still have quite a way to go.
fouronnes3··on Open-source communications by bouncing signals off the Moon
Tomorrow on HN: Polishing the moon surface
fouronnes3··on Meta projected 10% of 2024 revenue came from scams
I don't see how the yearly tech support I do with my parents at Christmas will not one day converge to an outright ban of the internet. I am now demoing the level of sofistication of AI powered scams, telling them that it is now entirely possible they will get a VIDEO CALL from me that's not actually me asking for God knows what in a very convincing way using my face and voice. I am scared and this close to setting up a secret passphrase in case they need to tell me appart from a clone.
fouronnes3··on The shadows lurking in the equations
Very cool! This is also known as signed distance function in computer graphics, or implicit form equations in maths.
fouronnes3··on Rouille – Rust Programming, in French
I'm pretty sure they know, and that's what makes it funny. There's an entire genre of internet humor based on using incorrect (because of homophone/homograph words) english-to-french translation. For example saying "vérifie les buches" for "check the logs".
fouronnes3··on Rouille – Rust Programming, in French
Excel is a good one, another one is World of Warcraft macros which depend on the client language because Blizzard is too good at i18n and they translated spell names which are used as spell identifiers in the UX lua code.
fouronnes3··on Rouille – Rust Programming, in French
Yes we do this while learning programming. Then it quickly becomes a sign of being a novice programmer that we look down on.
fouronnes3··on Rouille – Rust Programming, in French
As a native french speaker, I feel so uneasy reading source code in french. It feels very very uncanny. I've often wondered if English native speakers feel the same when reading normal source code which is always in English. They probably don't. But how? I've always associated the "other language-ness" to correctness and technicality. It must be so weird to code in your own language. Feels like reading bad pseudo code. It's very nice to be able to map "english" to "technical, correct" and "native language" to "descriptive, approximate, comments, pseudo-code". Having only a single language to work with is like removing a color from the rainbow.
fouronnes3··on Structure and Interpretation of Classical Mechanics (2014)
I want to write Structure and Interpretation of Geometric Optics. I have an outline already in my notes and I'm convinced that the computing-first approach would benefit the field immensely. I've been learning optics for a while and writing a python library [0]. With a background in software it's very obvious that there is strong SICP vibes in lenses, refraction, etc. I just need someone to trust me and write me a check for 1 or 2 years salary so I can go full bunker mode and write it =)

[0] https://victorpoughon.github.io/torchlensmaker/

fouronnes3··on Normalize.css
Obviously we can't break backwards compatibility, but why doesn't css have opt-in "use version" strings that could tell the browser: I want this set of defaults. Something like "use-defaults: system-ui;" or "use-defaults: none".
fouronnes3··on Why formalize mathematics – more than catching errors
Is there, somewhere, a list of theorems that were considered proved and true for a while, but after attempts at formalization the proof was invalidated and the theorem is now unknown or disproved?
← PreviousPage 2 of 14Next →