- Location arithmetic
Location arithmetic (Latin "arithmeticæ localis") is a technique to do
binary arithmetic using a chessboard-like grid.John Napier termed the technique in his treatise "Rabdology ", from the way that positions of counters on the board represented numbers.Using simple moves of counters on the board, Napier showed ways to multiply, divide and even find the square roots of binary numbers. He was so pleased by his discovery that he said in his preface
: ... it might be well described as more of a lark than a labor, for it carries out addition, subtraction, multiplication, division and the extraction of square roots purely by moving counters from place to place. ref|Napier
Location numerals
Binary notation had not yet been standardized, and Napier used what he called location numerals to represent binary numbers. Roughly speaking, it used alphabets to stand for various powers of two.He used "a" to represent 1, "b" for 2, "c" for 4, "d" for 8, "e" for 16 and so on. To represent a number as a location numeral, express it as a sum of powers of two and replace the powers by the letters. For example
: 87 = 1 + 2 + 4 + 16 + 64 = "abceg"
A location numeral can similarly be converted back into standard notation:
: "abdgkl" = 1 + 2 + 8 + 64 + 512 + 1024 = 1611
He permitted letters to repeat, so the same number could be represented in multiple ways. For example
: "abbc" = "acc" = "ad" = 9
Notice that since each letter is twice the value of the previous one, two occurrences of the same letter can be replaced withone of the next letter without changing the value of the number. Thus you can always remove all repeated letters from alocation numeral, and Napier called this the abbreviated form of a number. If on the other hand a location numeral has repeated letters, it is the extended form of the number.
Napier showed ways to convert numbers into and out of abbreviated form which are identical to modern techniques to convert numbers into the
binary numeral system and we will not repeat them here.Location numerals provide a simple way to do addition: just write two numbers in abbreviated form together and abbreviate the result. For example to add 157 ("acdeh") to 230 ("bcfgh") just write them together
: "acdeh" + "bcfgh" = "abccdefghh"
and abbreviate the result
: "abccdefghh" → "abddefghh" → "abeefghh" → "abffghh" → "abgghh" → "abhhh" → "abhi"
and "abhi" = 387 = 157 + 230 as expected.
Subtraction is only a little more complicated. To subtract "bcfgh" from "abhi", first change "abhi" into itsextended equivalent "abccdefghh" and just remove the letters "bcfgh"
: "abccdefghh" - "bcfgh" = "acdeh"
to get the result "acdeh".
Napier used his non-standard representation of binary numbers to explain his techniques to do arithmetic. However, the rest of this article will rephrase his ideas using the more modern binary notation.
The grid
Location arithmetic uses a square grid where each square on the grid represents a value. Two sides of the grid are marked withincreasing powers of two. Any inner square can be identified by two numbers on these two sides, one being vertically below the innersquare and the other to its far right. The value of the square is the product of these two numbers.The sum of these two numbers is just the total value represented by the counters on the board, but some of the squares have more than one counter. Recall however, that moving to the left of a square doubles its value. So we replace two counters on a square with one counter to its left without changing the total value on the board. Note that this is the same idea used to abbreviatelocation numerals. Let's start by replacing the rightmost pair of counters with a counter to its left, giving:Now each square has just one counter, and reading off the result in binary 100110 (= 38) gives the correct result.
ubtraction
Subtracting is not much more complicated than addition: instead of adding counters on the board we remove them. To "borrow" a value, we replace a counter on a square with two to its right.
Let's see how we might subtract 12 from 38. First place 38 (= 100110 in binary) on a row, and then place 12 (= 1100 in binary) under it:Now replace one of the two counters with two more to its right, giving:Since a diagonal move can be broken down into a move to the right (which halves the value) followed by a moveup (which doubles the value), the value of the square stays the same.
In conjunction with that diagonal property, there's a quick way to divide the numbers on the bottom and right edges of the grid.Notice that each row of counters on the grid is just22 multiplied by somepower of two. In fact, the total value of the counters is thesum of two rows: 22*8 + 22*1 = 22*(8+1) = 22*9So the counters on the board actually represent the productof the two numbers, except it isn't possible to "read off" theanswer just yet.
Recall that moving counters diagonally doesn't change the value,so move all the counters on inner squares diagonally until theyhit either the bottom row or the left column.Read the counters along the L but don't double count the corner square.You will read the binary result 11000110 = 198 which is indeed 22*9.
Why can we read the binary number in this L-shaped fashion? Thebottom row is of course just the first six powers of two, butnotice that the leftmost column has the next five powers oftwo. So we can directly read off an 11 digit binary number fromthe L-shaped set of 11 squares that lie along the left and bottomsides of the grid.Now the next block of counters we might try would begin with theleftmost counter on the bottom, and we might attempt something likeIt looks like we still don't have a counter on the bottom edge to movediagonally into the remaining square, but notice that we can insteaddouble down the leftmost counter again and then move it into thedesired square.So we double down the counter and move one diagonally into the nextcolumn over. Let's also move the rightmost counter into the column,and here's how it looks after these steps.We still have a missing square, but we just double down again and movethe counter into this spot and end up withAt this point, the counter on the bottom edge is so far to the rightthat it cannot go diagonally to the top of any column, which signalsthat we are done.
The result is "read" off the columns -- each column with counters istreated as a 1 and empty columns are 0. So the result is100101 (= 37) and the remainder is the binary value of any countersstill left along the bottom edge. There is one counter on the thirdcolumn from the right, so we read it as 100 (= 4) and we get 485÷ 13 = 37 with a remainder 4.
quare roots
References
#John Napier; translated by William Frank Richardson; introduction by Robin E. Rider (1990). "Rabdology". MIT Press. ISBN 0-262-14046-2.
#Martin Gardner (1986). "Knotted doughnuts and other mathematical entertainments". W. H. Freeman and Company. ISBN 0-7167-1794-8.ee also
*
Jeton External links
* [http://courses.cs.vt.edu/~cs1104/Napier/Chessboard.html Javascript simulation of Location arithmetic]
Wikimedia Foundation. 2010.