4 ms·
Maybe slightly radical idea for beginner, but since we’re on hackernews. Try to write down solutions to known, quite easy problems (that you are able to solve
by tikej 6y ago
Maybe slightly radical idea for beginner, but since we’re on hackernews.
Try to write down solutions to known, quite easy problems (that you are able to solve easily by hand) step-by-step (line by line) using SymPy (https://www.sympy.org/ https://www.sympy.org/) library (or any other computer algebra system; but SymPy is most well documented, free and most beginner friendly IMO).
It may seem counterintuitive at first (you want to do learn mathematics by heart and I’m proposing to offload it to computer...) but carry on.
Contrarily to hand written math, it’s harder to abuse notation using computer algebra system. Don’t use pre-made functions (such as Integrate, Simplify, Solve) right at the start, but manually work your way (via simple operations like expand, substitute, and your hand-written functions working on expression parts) to the point when expression is in form you would put it by hand.
Each step, substitution, transformation etc has to be stated explicitly in order to be understood by SymPy! That way if you are able to “explain” it to a computer (that has no intuition about objects that it’s working with, maybe beyond some basic algebra and fact that they are symbols) it will be much easier to explain and present it more clearly.
That said the obvious con of this method is learning SymPy, but believe me it will pay back both by understanding math more deeply, as well as in ability to solve problems that are too large/tedious to do by hand in the future.
Btw I believe this is basically the way the applied math (computational, non-proof part of math) should be presented nowadays. When I (hopefully) finish writing my phd thesis I hope to to write CAS dedicated to this purpose (doing math in by-hand like way, but with help form computer) from scratch. Until then SymPy is IMO your best bet for that ;)
- nabajour 6y agoIf the issue is a lack of way to structure the explanation or missing the justification to go from one step to the next, having a structure that forces one to be explicit helps. Other than sympy, a technique for formal proof might help. One of my buddies showed me this talk from Leslie Lamport that I found interesting [1], albeit in french. I think this one [2] is an english version. And the paper behind is here [3], linked from Lamport's website [4]. Lamport makes a structured way to write proof so that all details can be written down. It seemed to me that a lot of knowledge and steps stay implicit in proofs. So if you're not familiar with the subject, you easily get lost. [1] https://www.youtube.com/watch?v=k-i7y0R_-KE https://www.youtube.com/watch?v=k-i7y0R_-KE [2] https://www.youtube.com/watch?v=uBiJpip9NVc https://www.youtube.com/watch?v=uBiJpip9NVc [3] http://lamport.azurewebsites.net/pubs/proof.pdf http://lamport.azurewebsites.net/pubs/proof.pdf [4] http://lamport.org/ http://lamport.org/ edit: fixed links and text structure