Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Evaluating different strategies to teach algebra with an intelligent equation solver Patricia Jaques, Geiseane Rubi and Henrique Seffrin PIPCA-UNISINOS - Brazil Abstract. This paper presents PATsolver, an intelligent learning tool that demonstrates how to solve equations step-by-step. PATsolver is composed by an editor and a rule-based expert system. The editor allows students to provide any linear or quadratic equation they would like to see the problem solution. The expert system solves the specified equation step-by-step, showing each step for the student at the editor interface. We accomplished two experiments with eighteen students from a 6th grade class in order to evaluate PATsolver as a tool to assist students in learning algebra. In each experiment, students used PATSolver with two different learning strategies. In one experiment students were mediated by the teacher while using PATsolver and in the second one they could interact freely and individually with the tool. The main goal of this evaluation was to verify the effect of using PATsolver along different learning strategies on students performance. The results indicate that the effectiveness of PATsolver on student’s performance depends on the learning strategy employed and the assistance of a mediator. Keywords: algebra learning, computers & education, learning object 1. INTRODUCTION Algebra is a content domain (or task domain) where great part of American students experience poor achievement [1, 2]. This is also the case of Brazilian students. According to the Brazilian National Evaluation System of Basic Education [3], the national tests referring to algebra hardly reach a success rate of 40% in most regions of Brazil. The reluctance to the Math discipline is generally linked to the algebraic equations. This reality has driven researches in Math Education with the intention to create new strategies for the teaching of equations [3, 4]. Several of these strategies try to show the student the stages in the development of the equation, in which the greatest difficulty concerning equations solving is on how to define the intermediary operations that lead to the final solution of the equation. Considering this gap, this paper presents an educational software proposal to help students in comprehending the intermediary operations that are necessary in the solution of algebraic equations. This paper presents the learning object to solve equations called PATsolver. This Equation Solver was submitted to two evaluations with eighteen 6th grade students in an elementary school in the city of São Leopoldo in Brazil. The experiments occurred during different dates with the same students, but with different strategies to use PATsolver in a class. The present work also aims at discussing the importance of stimulating learning strategies in the use of an Equations Solver as a supporting tool in the classroom. More specifically, it attempts to compare the effectiveness of the tool in two main situations: (i) when applied with a strategy that guides and stimulates the student’s learning (1st experiment), and (ii) with a strategy that the student is left totally free (2nd experiment). The results show that, although PATsolver is an intelligent learning object since it is composed of a rule-based expert system to solve equations, in order to be an effective learning tool it should be employed along with learning strategies that promotes reflection. This is mainly due to the fact that the although PATsolver is intelligent when solving equations, it does not present an intelligent tutoring model to assist students during learning, as Intelligent Tutoring Systems does [5]. The present paper is organized as follows. Section 4.2 briefly describes the phases of the algebraic problem solving cognitive process. Section 3 explains how works the inference mechanism of the Rule-based Expert System. This is an important background knowledge to understand how the intelligent module of PATsolver solve equations. Section 4 portrays PATsolver, describing how it works and how it was implemented. Section 5 gives an approach to the evaluation of the educative software explaining the two strategies carried out in a sample with eighteen six-graders from a public school, along with the results of the evaluation. Finally, in Section 7, we present the conclusions concerning improvements implemented in the Equations Solver along with some final considerations about the strategies and evaluation experiments. 2. SOLVING ALGEBRAIC PROBLEMS In an Algebra Tutor, a task is generally a word problem for students to solve. An algebraic word problem consists of one or more sentences representing a situation or a story, where the student needs to understand the situation elements in order to generate a mathematical model to represent it. The model consists of one or more equations that the pupil should solve in order to obtain the numerical values that are the solution of the problem [6]. Take for example the following word problem (adapted from [7], page 107): A computer store sells desktop and laptop computers. Due to space considerations, the number of laptops in inventory is seven less than twice the number of desktops in stock. How many desktops does the store have if it has a total of 272 computers? The process of solving a word problem consists of two phases [8, 9]: (i) Problem Representation (also called Symbolization [10]), and (ii) Problem Solution. While the former concerns to the transformation of an algebra word problem into a system of equations, the second encompasses the process of solving these equations using algebraic operations. For example, for the word problem that we previously presented, the student could provide the solution presented in Table 1. TABLE 1. An Example of a Solution for a Linear Equation x + (2x − 7) = 272 3x − 7 = 272 3x = 279 x = 93 (1) (2) (3) (4) In the above example, the line (1) refers to the process of Problem Representation, and the lines (1)-(4) denotes the Problem Solution phase. As we can perceive in the above solution, solving a task involves several steps. Each line provided by the student is a step. The proposed learning object, PATsolver, aims at helping students in the Problem Solution phase. It shows for students how to solve an equation step-by-step. As the proposed solver is composed by an expert system, in the next section we give an introduction about this subject. 3. EXPERT SYSTEM SHELL An Expert System (ES) is a computer program that imitates the behaviour of human specialists in a specific area of knowledge [11]. Different from the conventional programs, the ES works with knowledge and not with data. It uses inference algorithms to produce new knowledge. The Expert Systems basically represent and deal with two type of knowledge: facts and heuristics. The facts are the knowledge the system holds about something. The facts can be generated during the process of inference, or inserted into the system by the user. Table 2 illustrates simple examples of facts. Each fact represents one different characteristic of a vehicle. They are examples of input data provided by the user for an ES whose functionality is to infer the type of vehicle. TABLE 2. Some example of facts about vehicles vehicleType=cycle numberofwheels=2 motor=yes The heuristics define how the system uses the acquired knowledge or generates new knowledge. When the heuristics are represented by rules, the ES is also called Rule-based Expert System (RBES) or Production System. A rule is typically expressed as IF-THEN statements: (1) the antecedent (IF) embodies a set of condition to be satisfied; (2) the consequent (THEN) that contains actions to be executed or new knowledge to be produced if the antecedent is true. The execution of a rule can or can not generate new facts (new conclusions) or exclude the existing ones. Table 3 represents an example of a rule to determine a vehicle type. In this example, an ES designed to choose a car according to a user’s preferences tests if the characteristics of the desired vehicle (facts provided by the user) match with the characteristics of a determined vehicle (stated in the rule condition). TABLE 3. An example of a rule IF vehicleType=cycle AND numberofwheels=2 AND motor=no THEN vehicle=bicycle A RBES is composed of several modules. The knowledge base (KB) stores rules and facts permanently. Those facts and rules that are being used to solve the current problem are temporarily maintained in the Work Memory and in the Agenda, respectively. However, the most important component of a RBES is the inference engine. It selects to fire those rules whose antecedents match facts in the Work Memory. The inference engine is the most important component of a RBES and the one more difficult to implement. On the other hand, it is domain-independent. Although the facts and rules are exclusive for each domain, the inference engine depends only on the language used for knowledge representation. For this reason, implementations of inference engine are available for RBES developers. They are called Expert Systems Shells. The choice of a shell depends on many characteristics and facilities that it offers such as a friendly interface and knowledge classification facilities, among others. In the following section, we describe Drools, the shell that we chose for the implementation of PATsolver ES. We chose Drools because it is platform independent and also because it allows easy integration with Java. It is possible to call Java methods from Drools and vice-versa. This integration with Java enables us to develop more powerful and flexible rules. There are two reasoning mechanisms for RBES inference engine: forward and backward chaining. The former selects rules whose antecedents match facts in the working memory; the latter examines the rules consequents. The backward chaining is more interesting to solve those problems in which a single specific conclusion is to be proved. It is more efficient, since it will just fire the rules that are necessary to solve the problem. As previously explained, in PATequation we use Drools shell for ES. Drools IE applies forward chaining. This is the most appropriate type of reasoning for algebra problem solving because the solution is previously unknown. Besides, RBES is a powerful reasoning mechanism when it is necessary non-deterministic reasoning, i. e., when there is not a pre-specified sequence of actions to solve the problem. This is the case of Algebra, where the students can solve a problem in several ways. 4. PATSOLVER PATsolver is an intelligent learning object to help students to learn how to solve equations. As previously explained in Section 4.2, solving an algebraic word problem involves two phases: (1) Symbolization, and (2) Problem Solution. PATsolver can help students in the Problem Solution phase, showing them how to solve a linear or quadratic equation step-by-step. Figure 1 shows the interface of PATsolver editor. The editor allows a student to enter an equation and it shows the problem solution. It is composed of four main panels. Panel (A) contains buttons for a student to type an equation. The student can verify the typed equation in Panel (B). In order to see the problem solving, the student should select the button "Solve Equation" (in Portuguese: Resolver equacao) in Panel (C). PATsolver shows the problem solution step-by-step in Panel (D). For each step, it shows a description of the operation that was applied to solve the problem and an equation representing the step solution. Besides having an editor, PATsolver is also composed of an Expert System. This module is responsible for solving any equation provided by the student step-by-step. It is a Rule-based Expert System that solves a linear or quadratic equation in a very similar way to how students do. When solving an equation, students generally apply one operation to the current equation in order to obtain another equation (the following step). For example, in line (1) of the equation solution shown in Table 1, one applied the operation SUM_VARIABLES to get the equation represented in line (2). Similarly, PATsolver ES contains one rule for each algebraic operation that could be used to solve an equation step. The ES fires one rule to solve each step of the Problem Solution. In this way, when a rule is fired, it applies an algebraic operation in the current equation (the solution of the previous step) in order to obtain the next step. This allows PATsolver to solve equations like students learned to solve in schools. Furthermore, each rule contains a description of the related operation. This allows PATsolver to demonstrate which operation was applied, besides to show the step solution (the equation resulting from the application of the operation in the current equation). FIGURE 1. PATsolver Interface In order to be more helpful for novice learners, PATsolver only applies one algebraic operation in a step. For the same problem solution aforementioned in Section 4.2, instead of directly providing line (3) as a next step for 3x − 7 = 272, PATsolver would give 3x − 7 + 7 = 372 + 7 and 3x = 372 + 7 separately. This allows a novice student to know the order of the operations that were performed, besides knowing all the operations that were used. Because of all the functionalities described above, PATsolver can be a useful learning object to assist students in learning algebra. When a student is stuck (he does not know which operation he should apply to solve the current step), the tutor can demonstrate the problem solving for the student. Then, the student can verify which operation was applied and also the result of this operation. PATsolver is distributed in a jar file, which is an executable format proper of the Java language. The execution of this program demands a Java Virtual Machine (JVM) version 1.6 (or superior) installed in the user computer (actually, most popular operating systems already include Java). Both the JVM and the solver are available at: http://www.projeto.unisinos.br/pat2math/index.php/patsolver.html. 4.1. Representation format for Equations The ES is the PATsolver’s module responsible for solving equations. The ES will try to apply the rules to the current equation in order to solve it step-by-step. In order to do so, it is necessary a data structure to represent equations that is easy to operate on and also that is unambiguous. For example, consider the equation 2x + 3× = 5. It is ambiguous unless one knows that multiplication happens before subtraction. A natural data structure to represent an equation is a binary tree because it is unambiguous. For this reason, compilers have largely used it to represent mathematical expressions [12]. A binary tree that represents an equation is called an expression tree. Figure 2 illustrates two examples of expression trees for the equations 2x + 3x = 6 (a) and (2x + 3x) × x = 6 (b). There are three types of nodes in an expression tree: • • constant nodes: hold real or integer numbers identifier nodes: denote variables FIGURE 2. Examples of expression trees TABLE 4. Pseudocode for the rule that applies quadratic formula IF there is an equation AND equation format is ax2 + bx + c = 0 THEN apply Quadratic Formula; • compound nodes: represent the application of a operator to two operands, which one being another expression tree. As Figure 2 shows, the constant nodes and the identifier nodes are always leaf nodes (a node that has no child). On the other hand, the compound nodes have always one (unary operation) or two (binary operation) trees as children, which represent the operands that they operate to. In PATsolver implementation, we chose to represent the terms with coefficients multiplying variables as a single node instead of a tree (a multiplication compound node that has two children: a constant and identifier node). This representation makes it easier to apply some algebraic operations involving variable coefficients, such as combining variable like terms. 4.2. Solving Equations In PATsolver ES, there are 53 rules. In the PS, each rule represents an algebraic operation to solve a linear or quadratic equation. They are knowledge components in the Algebra domain. For example, in order to solve a linear equation, students can use one of the following operations: basic arithmetic operations (add, subtract, multiply or divide) on real numbers or on variables; a transformation (add, subtract multiply or divide on both sides of the equation); simplify of a fraction, or least common multiple. To solve quadratic equations, they can also apply the following operations: factorization, expansion, quadratic formula, square of the sum of 2 numbers, difference of the square formula, square of the difference, rationalization, potentiation, and square root. Among these 53 rules, 20 rules aim at replicating students’ usual misconceptions (an incorrect conception about some knowledge component). There are also rules that allow rewriting the equation (for instance, add a constant on each side of the equation) and other complementary operations (find the final roots for quadratic equations). Finally, there are four rules that aim at avoiding results that are not mathematically correct. The algorithm in Table 4 shows an example of a rule in PATsolver. The operation of the solver is divided into two main stages: (i) converting the equation into a tree of expressions and (ii) solving the equation. In the first stage, the PATsolver receives an equation entered by the user on the graphic interface. The equation then goes through a validation process in order to check if it does not have invalid values, such as two equal signs, two operation signs together, or an empty equation. After the validation, the equation is translated into a postfix notation (as 2 × 3+) and is then converted to an expression tree. This process follows the algorithm described by [12]. Once the tree is generated, the ES inserts the three as a fact in the Working Memory and launches the inference engine. In a rule-based expert system, the inference engine executes several cycles of reasoning to solve problems. In TABLE 5. Pseudocode of Forward Chaining Algorithm REPEAT UNTIL Agenda is Empty (none rule was selected) { Empty Agenda; Create a set S1 of rules to examine (select rules from KB; often all rules are selected); FOR EACH (rule r in the set S1 ) { Remove r from S1 ; Evaluate condition part of r; IF (Condition of r met) Add rule r to Agenda; } Select a rule from the Agenda (conflict resolution) and fire it; } each cycle, it executes the following actions. First, it selects from the knowledge base the rules that match with facts in the working memory and stores them in the Agenda. Among these rules, it chooses one rule to fire according to a determined strategy of selection. PATsolver uses rules priority as a strategy of conflict selection. Each rule has a priority number and the IE selects the rule with highest priority to trigger. Even for operations that have same precedence, usually, there are some operations that are more desirable to first apply than others due to pedagogical reasons. For example, for the equation 4 × +4 = 9 − ×, a next step could be either (1) 4× = 9 − 4 − × or (2) 4 × + × +4 = 9. However, PATsolver first applies the rule that generates (1). Teachers generally prefer to isolate the variables on the left side of the equation before any other operation in order to emphasize it. In the case where all the rules have the same priority, it fires the rule that has matched the facts most recently added to the database. If the rule produces a new knowledge, the IE adds this fact to the working memory. It also empties the Agenda and starts a new cycle until there are no more rules to fire in the Agenda. The algorithm in Table 5 describes the pseudocode of this forward chaining reasoning. As we previously explained, there exists one rule for each algebra operation that could be applied in an equation. In each cycle, the IE selects the rule with highest priority (representing one operation involving linear or quadratic equations) to fire. Consider, for example, that PATsolver ES is solving the equation 4x +4 = 9−x. In the first cycle, the IE examines all rules in the KB in order to select those rules whose antecedents contain conditions that match the current equation. As the operation of addiction is just applied on the same side of the equation, this rule is not eligible. The IE chooses the rules MOVE_INT and MOVE_VARIABLE. These rules aim at moving an operand for the other side of the equation by applying an operation on both sides. While the goal for the MOVE_INT rule is to move constants to the right side, the purpose of MOVE_VARIABLE rule is to move all variables to the left side. Both aim at isolating the variables of the equation. The IE selects the MOVE_VARIABLE rule to fire, since this one has a higher priority. The resulting equation (4x + 4 + x = 9 − x + x) replaces the previous one in the working memory. This prevents the IE in applying the operations recursively. The IE execution continues until no more rules can be fired. This generally means the value of equation variable was found. 5. EVALUATION The latest software version was evaluated for the content of linear equations with a variable in an elementary school in the city of São Leopoldo in Brazil. The restriction for only first-degree equations was due to the fact that the students that participated were all six-graders, where the curriculum comprises only linear equations (second degree equations are taught in Brazil starting at the 8th grade). 18 students from the same class (ten boys and eight girls) participated of the experiment. The teacher of the class undertook grade school equations with an variable before the evaluations by making use of games, concrete material and a scale with two plates [4]. Two evaluations took place with the same class, but with differentiated interactive pedagogical strategies: (i) a strategy guided by the teacher that stimulated the curiosity in the students (explained in the first experiment), and (ii) a second experiment where the strategy did not guide the student, allowing him to be totally free (evidencing an almost absent strategy). The objective of these two experiments was to verify the importance of using a stimulating learning strategy when students interact with a learning object. The evaluation follows a quasi-experimental design [13]. It respects a delineation of type ’O1 X1 O2 X2 O3’, where TABLE 6. The Exercises applied in the Pre-test 4x - 24 = -3 6 - 2x = -4x -4 4x + 16 = 0 3x + 4 = 64 ’Oi’ corresponds to the assessments that were done (pre-test and post-tests) and ’Xi’ concerns the two experiments that were carried out (using PATSolver with two different strategies). As it can be observed, ’O2’ worked as a post-test for the first experiment and as a pre-test for the second one. The evaluations (pre-tests and post-tests) were performed during November 20th to the 27th of 2009 and December 11th of the same year. The experiments occurred during the last two dates, always preceding the post-test. In the next sections we explain each experiment. 5.1. First Experiment On November 20th 2009, the students completed a pre-test with the aim of verifying their previous knowledge on linear equations. This pre-test was composed by four equations that evaluated the student’s knowledge on four different operations, which are: addition, subtraction, division and multiplication on variables. This evaluation consisted of two tests that were part of the math evaluation system of the class. The mathematical problems from this pre-test are shown in Table 6. After completing the pre-test, the same subjects were conducted to the school computer science lab. Only two computers were suitable for evaluation because the others were in maintenance due to hardware or software problems. The students were arranged in a circle in order to initiate the experiment. First PATsolver was presented to the class. The teacher showed its interface and interaction options. Individually the teacher headed each student to a computer and proposed an equation for the student to solve in PATsolver. The students were to explain and question about the solution presented by the tool. The several ways to solve an equation were discussed. All 18 students interacted individually with the solver. Two by two, the students came up with a list of 3 previously solved equations to test the tool, and they analysed if the solution displayed by PATsolver was the same that they did. The students also discussed if the nomenclature used by the solver for algebraic operations matched with the language they had learned in class. The section lasted for two hours. Returning to the classroom, the students were submitted to a post-test composed of four different equations that evaluated the same algebraic abilities of the pre-test. Analyzing the relation between the pre-test (O1) and the post-test (O2), we perceived that 66.67% (twelve students) improved their results in the problems, 5.56% (one student) remained with the same grade, and 27.77% (five students) worsened their performance in the proposed problems. A more detailed evaluation based on the t-student statistic test is described in section 6. 5.2. Second Experiment In the second experiment, which took place on December 17th, the subjects were conducted up to the UNISINOS University located in the city of São Leopoldo in Brazil, to the computer science lab where each student had an available computer at their disposal. As the students were already familiar with the educational software, there was no need for an presentation of PATsolver. The students were initially invited to solve five equations defined by the teacher in PATsolver. Afterwards, they could freely use the tool. There were very few issues concerning the solutions presented to the class by this time. The experiment lasted for two hours and at the end of the session the students completed a new post-test that we refer to as post-test 2 (the O3 in the model) with four different equation problems from previous tests, yet evaluating the same algebraic abilities. The post-test of the previous experiment (O2) was used as a pre-test in this evaluation. Keeping in mind the post-test 1 (O2) compared to the post-test 2 (O3), we perceived that 27.78% of the students (five students) improved their grade, 16.67% (three students) remained the same, 44.44% (eight students) got worse, and 11.11% were not present for the post-test 2. The results of the comparative analysis applying the statistic t-student TABLE 7. Mean and standard deviation of the pretest, Post-test 1 and Post-test 2 Pre-Test Post-Test 1 Post-test 2 Mean(µ) Standard Deviation (σ ) 1, 18055 2, 22 1, 9375 1, 13578 1, 11781 1, 18585 test are described in the next section. 6. COMPARISON: FIRST AND SECOND EXPERIMENT Considering the attained data, we analysed the mean and also the standard deviation on the pre-test, post-test 1 and post-test 2. Table 7 summarizes it. The maximum grade that a student can achieve is 4, as each test was composed by four equations and every equation was worth one point. The initial hypothesis is that the utilization of the PATSolver with the learning strategies applied to the first experiment provides a significant gain when it comes to algebraic equation learning to the students. This can be verified comparing the grades in the pre-test and the post-test 1. The invalid and alternative hypotheses are: Ho: µpos ≤ µpre (null hypothesis) H1: µpos > µpre (allegation) The null hypothesis is that the grades of post-test 1 (O2) are lesser or equal to the grades of the pre-test (O1). The allegation wants to know if the grades of the post-test were significantly greater than the grades from the pre-test, presenting a gain in learning for the students that made use of the PATSolver with the learning strategies that were defined in the first experiment. With the intent to measure up to paired data (records of the same individuals before and after interaction with the PATsolver), we applied a paired t-test. The grades of the students increased 1.18 (standard deviation=1.13) in the pretest against 2.22 (dp=1.11) in the post-test. The difference between both averages is statistically significant in the level of 0.01 (t=-2.78, df = 17). There is enough evidence to confirm that there is an increase in grades in the post-test 1 in relation to the grades of the pre-tests. It means that students that interacted with PATSolver in the first experiment had performance gains. Making the same comparison between the post-test 1 (O2) and the pre-test (O1), we found p=0.0648 (t= -1.9929, df=15). This way there is not enough evidence to affirm that PATsolver can provide a better learning with the application of free pedagogical strategies submitted in the second experiment. The results of the statistic tests show that PATsolver can be a proficient tool in algebraic equation learning, as long as there is an efficient pedagogical learning strategy to support the use of the software in the classroom. An adequate and involving planning is essential for a considerable progress for, and not only taking students to the lab and letting them on their own as what happened during the second experiment. As already stated by Vygotsky [14], the role of a mediator and the use of effective learning strategies are essential in learning. 7. CONCLUSIONS In this paper we presented PATsolver, an intelligent learning object to assist students in learning algebra. We also describe the results of two evaluations carried out with students with different pedagogical strategies. The experiments with students gave emphasis in which the computational tool PATSolver assists students in the comprehension of all necessary operations to solve an equation up to the final solution. Students found the contact with the educational tool enjoyable and important. They highlighted the different ways to solve an equation due to issues in the first experiment. Despite presenting difficulties in algebra, the students showed interest in interacting with the solver. There was not much interest in the second experiment because the students spent most of the time free to interact according to their own will, and also due to few questions regarding the equations proposed by the teacher for the students. In other words, there was not a well defined pedagogical strategy that could stimulate learning in the student’s behalf during the second experiment. Besides, there was not a mediator assisting students in learning algebra. It is also important to mention that due to the restriction of space, the present paper displays only two strategic examples: (i) a guided strategy that stimulated curiosity in students (explained in experiment 1) and (ii) a second experiment where the strategy did not guide the student. With the two experiments we wanted to draw attention to the importance of the strategy and mediation when students are interacting with a learning object. However, many other strategies can be brought up to be applied along with PATsolver in a classroom or as an extra-class activity. Other examples of learning strategies can be found at [4]. The important role of the mediation and strategies in learning, evidenced by the experiments described in this paper, motivated us to develop an Intelligent Tutor System to teach algebra. When the teacher is not available (because a student is completing homework or the teacher is helping another student), the tutor would be responsible for providing individual assistance to students. In this way, PATsolver is being incorporated to the ITS (Intelligent Tutoring System) PAT2Math. PAT2Math is an algebra intelligent tutoring system that, besides assisting students in learning algebra, will also infer their emotions in order to adapt the system to student’s motivation and emotions. PATsolver is the ES of PAT2Math, it can demonstrate equations and verify if the students step is correct (by comparing student solution with its solution). With the integration of PATsolver, PAT2Math will be able to provide step-by-step guidance for student. It can correct each step and provide assistance when students are stuck or when it is detected a misconception. The ITS will also be composed by another module called Tutor that will be responsible for determining different strategies and apply them in order to assist students in the equation solution. In this case the tutor will be responsible to carry out the role of a mediator, and the strategies that the tutor will apply, as discussed previously, will have a fundamental role so that the tutor may be effective in its function. ACKNOWLEDGMENTS We would like to thank the following research funding agencies in Brazil: CAPES, CNPq and FAPERGS, which support the project PAT2Math. REFERENCES T. P. Carpenter, H. S. Kepner, M. K. Corbitt, M. M. Lindquist, and R. E. Reys. Student Performance in Algebra: Results from the National Assessment. School Science and Mathematics 82, 514–531 (1982), ISSN 1949-8594. N. C. on Excellence in Education, A nation at risk: The imperative for educational reform, Tech. rep., U.S. Government printing office, Washignton, DC (1983). Brasil. Secretaria de Educaçãao Fundamental., Parâmetros Curriculares Nacionais: matemática. Volume 3., Tech. rep., Secretária de Educaçãao Fundamental., Brasília (1997). A. d. S. Figueira-Sampaio, E. E. F. dos Santos, and G. A. Carrijo. A constructivist computational tool to assist in learning primary school mathematical equations. Computers & Education 53, 484–492 (2009), ISSN 03601315. K. Vanlehn. The Behavior of Tutoring Systems. International Journal of Artificial Intelligence in Education 16, 227– 265 (2006), ISSN 1560-4292. C. A. Gama, Integrating Metacognition Instruction in Interactive Learning Environments, Phd thesis, University of Sussex (2004). M. A. Munem, and C. West, Beginning Algebra, Kendall/Hunt Publishing Company, 2003, ISBN 9780757501982. R. E. Mayer, The promise of educational psychology: learning in the content areas, The Promise of Educational Psychology, Merrill, 1999, ISBN 9780139130137. G. Polya, How to Solve It: A New Aspect of Mathematical Method, Princeton Science Library, Princeton University Press, 2004, ISBN 9781400828678. N. T. Heffernan, K. R. Koedinger, and L. Razzaq. Expanding the Model-Tracing Architecture : A 3rd Generation Intelligent Tutor for Algebra Symbolization. International Journal of Artificial Intelligence in Education 18, 153–178 (2008). J. Liebowitz, An Introduction to Expert Systems, Mitchell Publishing, Santa Clara, 1988. A. Aho, M. Lam, R. Sethi, and J. Ullman, Compilers: Principles, Techniques, and Tools, Addison Wesley, 2006, 2 edn., ISBN 0321486811. D. T. Campbell, and J. C. Stanley, Experimental and quasi-experimental designs for research, vol. 20, Rand McNally, 1963, ISBN 0395307872. L. S. Vygotsky, and J. Vlasineer, The Problem of the Environment, Blackwell, Cambridge, 1994.