
Ask HN: I am building a step-by-step equation solver to learn how math works - tkosan
I am an average programmer who used to have trouble understanding how math worked. According to Donald Knuth, science is knowledge that is understood so well that it can be taught to a computer. So, I decided to write a program that solves elementary algebra equations step-by-step the way humans typically do to fully understand the process. This turned out to be a very effective way to learn math because I now understand how elementary algebra works, and I am no longer intimidated by more advanced mathematics.<p>My question is, would enough programmers be interested in learning how math works using this approach to make it worthwhile for me to create educational materials that are based on it?
======
wayn3
This exists. Its a program called Maple and really sophisticated. Industry
standard. Every physicist/mathematician has a license. It can perform all the
standard operations on a lot of math objects that you have probably never even
heard about. No offense here. Math gets a lot stranger once you leave calculus
behind.

There is wolframalpha, the computational knowledge engine. Provides maple core
functionality and behaves more like a search engine.

If you do this for your own learning experience, that's awesome. As a
business, you would have to be really good at a lot of very deep math to
compete on that level.

~~~
tkosan
Is Maple able to show the steps a human would typically take to solve a given
elementary algebra equation?

~~~
jrpt
The market for "solve an algebra equation and show the steps" is students who
want something to do their homework for them. And yes, websites (and graphing
calculator apps) already do this. For example,
[http://cymath.com/](http://cymath.com/)

It's cool that you made it, but whether you decide to do anything else with it
depends on what your goals are.

~~~
tkosan
No currently used step-by-step equation software I am aware of shows all of
the steps (inferences) that are needed to solve an equation, and why it took
those steps. For example, I just had cymath solve 8 _x - 2 = -9 + 7_ x. The
solution it provides is missing steps, and there is no explanation of why it
took the steps it did. The solver I am writing shows all of the steps needed
to solve an equation, and it is capable of explaining why it took these steps
(although the "why" part is not shown in the video).

~~~
jupenur
Wolfram|Alpha does this pretty well, although they moved the step-by-step
solver to the paid version quite a while ago and I've only tried the early
free version. They also have an extensive knowledge base and other resources
that make it very easy to understand even completely new concepts.

And Mathematica of course does everything Wolfram|Alpha can.

------
wslh
Yes, sure. You can even give a better insight about how roots of a polynomial
of grade 2 can be obtained with a step by step approach or how you can derive
and integrate symbolically.

This is like the explain command in databases.

------
jjpe
This is pretty cool. I might actually use this (assuming it can solve any
"solvable" linear system). I'd also use a version of this for differential
equations, if you happened to write one :)

------
tkosan
This video shows what I have working so far:

[https://www.youtube.com/watch?v=cy6bwNBkAK0](https://www.youtube.com/watch?v=cy6bwNBkAK0)

~~~
penetrarthur
Please explain either with text or voice what is happening in that video. It
is hard to follow.

~~~
tkosan
Lesson 6 at the following website explains the fundamentals of how the solver
works:

[http://patternmatics.org/temp_1/mathfuture/](http://patternmatics.org/temp_1/mathfuture/)

The other lessons explain some of the concepts used in lesson 6.

------
seanccox
I would be very interested. Do you have a sample lesson to share?

------
selmat
I think there will be hundreds of kids and students who struggle with math.

