34 karma · joined June 10, 2008
http://www.mathpiper.org/
My gmail address name is ted.kosan
However, a few CASs do solve elementary algebra equations the way humans do, and the most famous of these is probably PRESS (Prolog Equation Solving System). The story of PRESS's development is an interesting one.
In the 1970s and 1980s, a group of artificial intelligence researchers led by Dr. Alan Bundy at Edinburgh University conducted research on how computers can be "taught" to solve elementary algebra equations the way humans do. The first thing they did was to try and figure out exactly how mathematicians do mathematics. They were surprised to learn that a significant number of the techniques that mathematicians used to perform mathematics were not written down anywhere. They were not in any textbooks, nor were they in any journals or research papers. As the researchers dug deeper, they discovered that the techniques did not have names, and they were not taught explicitly. The researchers concluded that mathematicians were using these techniques unconsciously. (Alan Bundy. The Computer Modelling of Mathematical Reasoning. Academic Press, 1983, p.164.)
Why were these researchers the first people in history to discover this information? I think it’s because computers were the first "students" in history that absolutely refused to learn any mathematics that was not taught explicitly. The researchers then devoted years of effort to discovering and naming the unwritten techniques that mathematicians used to perform mathematics. When they "taught" PRESS these techniques, it was able to perform mathematics similar to the way humans typically would.
The step-by-step solver I am building is based on PRESS, and here is an example of what I have working so far:
If aigrant.org was able to provide accounts on a Cyc system to community members, would you be interested in having one?
I don't think Google, Bing, Wolfram Alpha, or Siri can be used for applications like this.
%cycl,microtheory="InferencePSC"
(eventOccursAt
(SummerOlympicsFn
(YearFn 2012))
?VAR)
%/cycl
%output,mpversion=".257",preserve="false"
# ?VAR
--- ---------------------------------------------------------------------
1 UnitedKingdomOfGreatBritainAndNorthernIreland
2 England
3 EasternContinent
4 ContinentOfEurasia
5 Occident
6 MilkyWay-Galaxy
7 PlanetEarth
8 NorthernHemisphere-Region
9 ContinentOfEurope
10 CityOfLondonEngland
. %/outputWhat would be helpful is if aigrant.org could provide an account on a Cyc instance to community members.
If you are interested in discussing this topic, feel free to contact me using the email address that is in my profile.
https://www.youtube.com/watch?v=cy6bwNBkAK0
If you are interested in learning the MathPiper programming language and how this solver works, feel free to contact me using the email address that is in my profile.
Most people don't like playing games they can't win because they have not been taught how to play. Most people would not like playing c_es_ for this reason, so they would only play it if they were forced to. They would also start asking questions like "why am I being forced to play this illogical game?". The way to help your son is not by providing him with reasons for why he is being forced to play a game he has not been properly taught how to play. The way to help him is to simply teach him how algebra actually works. I can show you how to do this (my contact information is in my profile).
I am convinced that software tutors that are based on AI research which was primarily done in the 1970s and 1980s will form the core of these new software education systems. For the past few years I have been working on an AI tutor for solving elementary algebra equations that can already teach parts of this subject better than a human can. If you are interested in discussing how AI tutors like this can be used to help realize the vision you have for Bloom, contact me using the email address that is in my profile.
I have found that writing software that automatically solves elementary algebra equations using the techniques humans use is also a very good method for understand how math works at a deep level. Here is a demo of a step-by-step equation solver that I am currently writing:
Contact me by email if you are interested in learning more about either of these options (my email address is in my profile).
http://patternmatics.org/temp_1/mathfuture/
The other lessons explain some of the concepts used in lesson 6.
I have been working on a step-by-step elementary algebra equation solver for a few years now, and here is an example of what I have working so far:
http://p1.ssucet.org/tkosan/misc/mathfuture/steps/solve_equa...
If you are interested in discussing the possibility of teaching programmers fundamental mathematics using technology like this, feel free to contact me (my email address is in my profile).
My son did not have any noticeable talent for mathematics when he first started learning it. In fact, he was not very good at math at all. I couldn’t directly teach him math because I did not understand it very well at that time, so I had him work through some of the math books I set aside. Before he went to college, he worked through one “Saxon Math” arithmetic book, one book titled “How to Think Like a Mathematician” by Kevin Houston (which dealt with how to do proofs), and a book titled “Fundamental Mathematics” fourth edition by Wade and Taylor (which was based on 1960s New Math). Around a third of the way through the fundamental mathematics book he apparently saw how formal mathematics worked because he started being able to do mathematics quickly, accurately, and with confidence. He did not like math very much up to this point, but as soon as he was able to do math, he began to like it more and more.
Before college, my son never took even one math test. When he entered college, he majored in mathematics and physics. He was easily able to do all of the work in the mathematics and physics courses he took. This past spring he graduated with a GPA of 3.9.
Since 2008 I have been developing open source mathematics software that students can use to learn how mathematics works at a deep level. Here are some examples of what I have created so far:
http://patternmatics.org/test/expression_structure.html http://patternmatics.org/ https://www.youtube.com/watch?v=kYtsQ_PczlY http://www.mathpiper.org/
The last link is to an education-oriented computer algebra system. If you (or anyone else) is interested in learning more about this software and my thoughts on mathematics education, feel free to ask questions about it on the MathPiper developer list.
Does solving equations using the following manual step-by-step elementary algebra equation solver interest you?:
https://www.youtube.com/watch?v=kYtsQ_PczlY
If so, join the MathPiper developer email list, introduce yourself, and I will teach you how to use it.
My recommendation for someone who is interested in learning how to program in Prolog is to start by reading “Logic for Problem Solving” by Robert Kowalski:
http://www.amazon.com/Problem-Solving-Revisited-Robert-Kowal...
I am currently about halfway through an earlier edition of this book, and it is the first book I have found that clearly explains the ideas upon which Prolog is based.
"1. Math is a lot easier to pick up after you know how to program. In fact, if you're a halfway decent programmer, you'll find it's almost a snap.
2. They teach math all wrong in school. Way, WAY wrong. If you teach yourself math the right way, you'll learn faster, remember it longer, and it'll be much more valuable to you as a programmer.
3. Knowing even a little of the right kinds of math can enable you do write some pretty interesting programs that would otherwise be too hard. In other words, math is something you can pick up a little at a time, whenever you have free time.
4. Nobody knows all of math, not even the best mathematicians. The field is constantly expanding, as people invent new formalisms to solve their own problems. And with any given math problem, just like in programming, there's more than one way to do it. You can pick the one you like best.
5. Math is... ummm, please don't tell anyone I said this; I'll never get invited to another party as long as I live. But math, well... I'd better whisper this, so listen up: (it's actually kinda fun.)"
Here is a link to the full blog post:
http://steve-yegge.blogspot.com/2006/03/math-for-programmers...
I have had students as young as 10 make it through the programming newbies series of books on this site with a little help.