5 comments

  • dharmatech 11 minutes ago
    Very cool!

    Here's a demo of a library for interactively eliminating variables from sets of equations:

    https://youtu.be/7ysUdxTfKhU?is=lE5o9Besk1XNnggP

    Source:

    https://github.com/dharmatech/combine-equations.py

  • siraben 31 minutes ago
    This is very cool! I'd like to see a version for theorem proving/equational reasoning as well because I think the ideas behind reasoning about functional programs and proving properties about them are just many cases of rule-applying but people don't staring at equations or jump straight to a theorem prover, whereas a visual interface might make the transition a lot easier.
  • senkora 1 hour ago
    This is awesome. Congrats on shipping!

    The nearest thing that I've heard of is Wolfram Alpha's step-by-step solution solvers, but the worry with those is always that it's too easy for the student to just keep clicking next step and not learn anything.

    I appreciate how this frames algebra as a puzzle instead of a problem :)

    The Wolfram thing: https://www.wolframalpha.com/examples/pro-features/step-by-s...

    Specifically this one: https://www.wolframalpha.com/input?i=find+t+for+t%5E2+%2B+3t...

  • bobajeff 2 hours ago
    I watched the video. I think I've been wanting something like this recently but there's not really a name for this sort of thing that I know of.

    Relatedly, I've been working on a step-by-step solver/calculator but I just use sympy (via pyodide) + mathlive. But I'm starting to see the limitations of running Python in the browser and am starting to look at js libraries now.

    • dicroce 2 hours ago
      The underlying math engine is written in typescript and is open source:

      https://github.com/dicroce/wyrm_math

      Probably it's most important feature for applications like this is that the id's of elements in the equations are stable (meaning, if an X has an id of 123 and a transformation moves it to the other side of the equals sign, it still has id 123... this allows you animate between states if you wish).