Skip to main content

Chapter 4 Arithmetic Algorithms

In this section, we will talk about the ways we do arithmetic in practice. If you think about it, the methods we use to do arithmetic are a series of steps (a good analogy is a recipe) that we follow to obtain an answer. In mathematics we care about these enough to give them their own name:

Definition 4.0.1.

An algorithm is a (finite) series of well-defined steps that will always solve a certain class of problems if correctly followed.
There are countless algorithms for solving arithmetic problems for whole numbers (which we can use to solve arithmetic problems in larger sets of numbers, like integers, rational numbers, or real numbers). We will discuss a few of the most common algorithms that are used, discuss the pros and cons of each, and also discuss some non-algorithmic and ad-hoc methods that are widely used, especially when it comes to mental arithmetic.
Most, if not all, of the following algorithms use the fact that we write numbers in a place-value system to break the computation into easier parts that we can put together at the end. It is incredibly important to have a solid understanding of this concept from [cross-reference to target(s) "sec-NumberSystems" missing or not unique] in order to understand the reasons why our algorithms work the way that they do.
Additionally, our algorithms predominantly feature adding or multiplying each place value separately. If we instinctively know all sums and products of one-digit numbers by heart, we can quickly perform these computations without too much problem solving and thought. It is an excellent idea to work on being able to recall all single digit sums and products quickly.
Is there a "best" algorithm for each arithmetic operation? Depending on what you care about (speed, efficiency, ease of understanding, consistency in all cases), a different algorithm can be "better" than others. Regarding understanding, the most understandable algorithm may differ from student to student, and from teacher to teacher. So it is a very hard (and in some cases impossible) task to exclusively recommend one algorithm over another.
It is important to study multiple algorithms for many reasons. First of all, understanding the details of an algorithm allows a teacher to explain how and why an algorithm works, as opposed to simply relying on some authoritative explanation like "follow these steps because they are the ones that work". Also, this understanding allows teachers to be able to find student’s conceptual errors in arithmetic. Not only can they find mistakes, they can, along with discussions with the students, also determine the conceptual reasons behind these mistakes. Knowing the underpinnings of multiple algorithms allows a teacher to have many algorithmic tools in their toolbox. They can use their professional judgement for what is the most appropriate algorithm to use and/or teach depending on the needs of their students.
Also, studying multiple algorithms allows teachers the opportunity to understand arithmetic through many lenses, thus increasing their overall understanding of the operations themselves. It is relatively commonplace for curricula to suggest that students develop their own personal algorithms for arithmetic. Studying multiple algorithms gives a future teacher practice in evaluating and interpreting the algorithms that students are indeed discovering (and perhaps inventing) themselves.
Part of our study of these algorithms will involve being able to "picture" what is happening using blocks. Teachers could indeed use manipulatives so students can get a feel for the underpinnings of each algorithm that we will study. However, the author believes that students should not rely on the manipulatives to perform these algorithms. For many reasons, including speed and working with students towards the ideas of abstraction, being able to use the algorithms, while still being able to explain why they work as they do, is the best approach.
Note that we will also learn how to use these algorithms to do arithmetic in other bases, as discussed in INSERT SECTION REFERENCE. Even though it may be unlikely that you will need to teach students how to do arithmetic in other bases, this will allow us to turn off our "muscle memory" of doing arithmetic in base ten, as we are so comfortable with many of these algorithms that it is incredibly difficult to this muscle memory off to think deeply about the algorithmic underpinnings. As an added bonus, we will get to experience, in a small way, the struggles that your future students will have when learning about performing arithmetic for the first time.