Monday, November 07, 2005

Troubleshooting Your Way to Better Math, Pt. 2

a.k.a.: math rant, part 2
By the end of the previous math rant, I had stipulated that all problem solving can be approached in a manner that is typically associated with troubleshooting. Namely, the problem can be reduced by employing an iterative process that results in a continual refinement of the "working answer" into a final solution. The final solution is not reached until all of the available data have been consumed. I provided an example of applying this technique to arrive at the summation of several four-digit numbers.
Problem Solving Theory
One of the most valuable skills in any profession is an ability to understand a problem, classify and distill the problem into discrete components, and formulate methods (or theories) of resolving each resultant "problem-ette." This is the role of a troubleshooter (M-W). Cultivating this skill is essential to success in many fields, although the problems encountered can vary widely. An IT professional will encounter vastly different problems than a plumber or a mechanic, but all of these skilled workers must apply similar problem solving principles. Educators and executives apply the same logical processes in solving the problems encountered in their fields. The principle is simple: understand the nature of the problem, be knowledgeable of the constraints and rules, apply your experience to formulate a hypothesis, and test the hypothesis to verify the result.
Why Troubleshoot Math Problems?
The logical constraints and rules associated with basic arithmetic provide a very practical introduction to troubleshooting methodologies, which can then be applied to more difficult classes of problems. (Those of you who don't dismiss the preceeding statement as a circular argument may have recognized it as a case of the type of iterative process that I am attempting to promote.) A consistent application of problem analysis followed by targeted iterative solution generation reinforces understanding of not only the underlying problem and principles, but also the means of arriving at a solution. The current methods of mathematics education tend to teach rote processes that require little understanding of why the process works.
Example - Find the Product of Two Three-digit Numbers
This class of problem demonstrates my point fairly well. Consider the task of finding the product of two three-digit numbers, say 456 x 789. If you were taught the same way I was, your initial reaction is probably "let me grab my calculator," followed by a reluctant reach for pencil and paper to apply the dreaded process of starting on the right-hand side and carrying digits, which goes something like this:
The Way You Were Taught:
Consider the problem, and apply the method that has been demonstrated to arrive at an answer to the problem. Be sure to write everything in nice little columns, so that you'll be able to "carry" any digits as required. Then, start turning the "multiply like this because it works" crank. The process works something like this (starting from the right-hand side):
1.) Nine times six is fifty-four. Write the four (under the "line"), but "carry" the five.
2.) Nine times five is forty-five -- add in the "carried" five to make fifty. Write the zero to the left of the four, and "carry" the five.
3.) Nine times four is thirty-six -- add in the "carried" five to make forty-one. Write the one to the left of the zero, then -- since there aren't any more digits -- write the four to the left of the one. You now have a top line in your sub-solution that reads "4104"...
4.) Eight times six is forty-eight. Carefully write the eight under the zero from the previous line of the sub-solution, and be sure to "carry" the four. (Some of you may have been lucky enough to learn to place a zero as a "placeholder" to the right of this eight.)
5.) Eight times five is forty -- add in the "carried" four to make forty-four. Write a four to the left of the eight, and "carry" the other four -- don't mix them up!!!!
6.) Eight times four is thirty-two -- add in the "carried" four to make thirty-six. Write the six to the left of the four, then -- since there aren't any more digits -- write the three to the left of the six. You now have a second line in your sub-solution that reads "3648(0)"...
7.) Seven times six is forty-two. Carefully write a two under the four from the previous line of the sub-solution, and be sure to "carry" the four. (Again, some of you may have learned to place two zeros as "placeholders" to the right of this two.)
8.) Seven times five is thirty-five -- add in the "carried" four to make thirty-nine. Write a nine to the left of the two, and "carry" the three.
9.) Seven times four is twenty-eight -- add in the carried three to make thirty-one. Since you're out of digits write the one to the left of the nine, and then the three to the left of the one. You now have a third line in your sub-solution that reads "3192(00)"...
10.) Add the three lines of the sub-solution to get the final solution. So, that's 4104 + 36480 + 319200. Eventually, after much more carrying (see prior rant), you will arrive at 359784.
Why did you add the sub-solutions components? Because you have to, that's just the way it works... Why work the problem right-to-left, because it's harder to lose your place that way. How can you test the validity of your solution?
The Way That Makes More Sense:
Oddly, many of you learned the logical way of solving this class of problem much later in your mathematics education -- after the above process was already firmly, and indelibly, ingrained. When considering the multiplication of two three-digit numbers, the first step is to separate the numbers into their constituent components, namely rewrite the problem as: (400 + 50 +6) x (700 + 80 + 9). When presented in this manner, the "distributive law" and the need for addition of solution components become apparent to those who have studied algebra. I prefer to approach the solution in this manner, because it involves application of a logical process that demonstrates the significance of each digit appropriately. So, without further ado, let's troubleshoot this restated problem:
1.) 400 x 700 is 280000.
2.) 400 x 80 is 32000, and 280000 + 32000 is 312000.
3.) 400 x 9 is 3600, and 312000 + 3600 is 315600.
4.) 50 x 700 is 35000, and 315600 + 35000 is 350600.
5.) 50 x 80 is 4000, and 350600 + 4000 is 354600.
6.) 50 x 9 is 450, and 354600 + 450 is 355050.
7.) 6 x 700 is 4200, and 355050 + 4200 is 359250.
8.) 6 x 80 is 480, and 359250 + 480 is 359730.
9.) 6 x 9 is 54, and 359730 + 54 is 359784.
Instead of carrying digits, we gave them the appropriate significance throughout the entire process. Instead of saving all of our addition until the end, we performed it with each refinement of the solution. Notice that the solution converges on the final answer as the data are consumed, just as it did with our summation example.
Isn't That Still Just a Process?
Because the process is founded on logic and mathematical principles, rather than merely applied "because it works," it is possible to refine the process based on the problem. Once the principles are well-understood, it is appropriate to apply logic to identify "faster" ways of reaching the solution. In fact, I would encourage a group of students to discuss ways to do just that. Remember, we are trying to instill understanding, not just methodology.
For example: 456 x 789 = (456 x 790) - 456. Zeros are really awesome when you're multiplying, because you get to "skip steps." This results in restating the problem as ((400 + 50 +6) x (700 + 90)) - 456, wherein one subtraction takes the place of three "multiply and add" steps from the prior example.
Another example: 456 x 789 = (455 + 1) x (790 - 1). Fives aren't too bad, either. So maybe this would work out to ((400 + 55) x (700 + 90)) + 790 - 456, which takes considerably fewer steps -- but much more advanced understanding. If somebody came up with this and could explain it to the class, they might get a gold star...
Summary
Applying the troubleshooting method, in which the problem is rephrased to allow an iterative process that continually refines estimates until it converges on the solution, represents a logical way to handle many different types of mathematical problems -- not merely simple summations. The above example illustrates how this process can also be applied to finding the product of two three-digit numbers. The key to unlocking the potential of the troubleshooting approach to mathematics is to instill understanding of what the numbers represent and their significance based on place. If we did teach the foundations in this manner, then making the jump from decimal into other number systems -- where this type of "bitwise" operation is essential -- would become vastly easier. As the T-shirt says, "There are only 10 types of people in this world: those who understand binary, and those who don't."