SimStudent helps students learn how to solve algebraic equations by teaching a machine-learning agent named Stacy.  Stacy uses interactive help from students and inductive learning to figure out rules for solving equations.  Students correct her mistakes to help her improve and to strengthen their own knowledge.
Here, Stacy is asking for us to input a problem. The first two equation cells are unlocked for us to type it into.
Once we type in a problem, as shown, Stacy asks if she should do it.  We click the 'Yes' button to tell Stacy to start trying to solve it.
The next step after entering the equation is the first transformation.  If Stacy thinks she knows what to do, she fills her suggestion into the table and asks if it would be a good move.
Here she enters 'multiply 3' to suggest multiplying both sides of the equation by 3.  We click the 'Yes' button to indicate that she should do this and move on to the next step.
Stacy moves on to filling in one side of the equation on the next row down.  She suggests '25' for the right-hand side.  This is a mistake, so this time we click the 'No' button to tell her to try again.
Now Stacy tells us she does not know how to multiply either side by 3 and asks for us to show her what to do.  To give her this hint, we fill in one side of the equation, '15' on the right-hand side and hit enter.
Stacy still does not know how to fill in the other side of the equation and asks for another hint.  This time we fill 'x+4' into the left-hand side and hit enter.
Stacy's knowledge is modelled through production rules.  These are not visible to the student, but we can look at them here to see how they have changed from the examples that we have already given her.
In the previous version of 1), Stacy takes the first integer of a term (without its sign) and multiplies it by the whole term.  This worked when she was multiplying 2 by 2, but multiplying 5 by 3 and getting 15 didn't fit the pattern, so she generated a new application of the rule which fits both examples.  Now she will multiply the term by the operand.
The previous version of 2) didn't result in an error, but did result in Stacy thinking that she couldn't use it.  After we demonstrated how (x+4)/3 could be multiplied here, Stacy removed one of the conditions from the rule.
Now Stacy tells us she is stuck and does not know what to do next.  This time we fill the next step, 'subtract 4', into the transformation column and hit enter.
If we make a mistake in teaching Stacy, she will still try to learn.  Here we enter '19' on the right-hand side instead of '11' and she still figures something out.
Now Stacy is stuck on applying the 'subtract 4' step on the left-hand side.  If we do not know what to do, we can look at the examples to see if we can figure it out.  The examples are shown in several tabs at the top with different examples.  We click the 'Example 3' tab to look at the third example.
Each example is filled into the interface and has an explanation from Mrs. Smith, Stacy's teacher.  We can get back to the current problem by selecting the 'Stacy' tab at the top.
Based on conjectures from the examples, we next enter 'x' into the left-hand side and hit enter.
We can look again at the production rules which Stacy has generated based on our tutoring.  Some of the conditions are not shown in these excerpts to highlight the important parts.  Here we can see that Stacy has come up with two different rules on how to perform subtraction in different situations, because she could not come up with one rule which fit both 15-4=19 and x+4-4=x. 
The rule on the left Stacy will use with constants.  She adds the operand onto the term in this case, which fits with the example 15-4=19.
The rule on the right Stacy will use with polynomials.  In this case, she is left with only the variable term, which fits with the example x+4-4=x.  While this rule gives a correct result, you may notice that it isn't entirely accurate.  This is a good thing as it will allow her to make more mistakes later on and give the student the chance to correct her.
Stacy also needs to learn when a problem is complete.  Here she has suggested that the problem is solved. There is no more work to do on this problem, so we click 'Yes' to tell her she is done.
At any point during our teaching of Stacy we can check what she has learned by giving Stacy a quiz. We can do that by clicking the 'Quiz Stacy' button.  This starts the quiz which Stacy attempts to solve without our help.
Once Stacy finishes the quiz, the Quiz Results window shows correctly completed steps in green and incorrect steps in red.  We see that she has made the mistake again where she subtracts from one side and adds to the other, which she learned when we taught her incorrectly.  She has also made a new mistake where she tries to subtract the coefficient at the beginning of the problem.
We could now go back and try to teach her again to correct these mistakes.