Hacker News new | past | comments | ask | show | jobs | submit login
Early Times (Multiplication) (futilitycloset.com)
33 points by beardyw on July 1, 2022 | hide | past | favorite | 4 comments



This trick, like several others like it, is easier to remember and work with if one adopts the notation x̅ for ten's complement (10-x), e.g. 4̅ means 10-4=6.

So the trick this post gives is (essentially) that:

    [x̅] × [y̅] = [x̅+̅y̅][xy]
where […] denotes a single digit, as it simply says that

    (10-x) × (10-y) = 10(10-(x+y)) + xy
In this notation, the example given becomes:

    6 × 8 = 4̅ × 2̅ = 6̅8 = 48.
Note that this also works when there's a carry (write the "carry" digit as a superscript on the left):

    6 × 7 = 4̅ × 3̅ = 7̅¹2 = 3¹2 = 42.
(I think I first saw this convention with the "vinculum" in Swami Bharatikrishna Tirtha's book Vedic Mathematics which is simultaneously a work of fraud and genius: the book contains several such dazzling tricks that are convenient in special cases, which the Swami must have collected/invented and mapped to a small set of mnemonic rules ("sūtra"s), then (dubiously) described as "Vedic" knowledge as part of an anti-colonialist project. Actually looking at it now, it uses the vinculum slightly differently, e.g. uses 31̅ to mean 29 rather than 39. Another book in that genre is The Trachtenberg Speed System Of Basic Mathematics though it doesn't go as far.)


My favorite ancient multiplication method is the Egyptian multiplication (also called Russian peasant method and other names).

Column a is halved in each step. Column b is doubled in each step. Column r is the remainder of a after dividing by 2. b.r is product of b and r. Product is the sum of column b.r

a b r (=a%2) b.r

19 73 1 73

9 146 1 146

4 292 0 0

2 584 0 0

1 1168 1 1168

---------------------------------------

Sum 1168 + 146 + 73 = 1387

---------------------------------------

Interesting observation: Reading the digits in column r from bottom to top gives (10011) in base 2 which is 19 (the multiplier)! That is why the method works.


Arthur Benjamin's book Secrets of Mental Math has similar tricks to this one.

One I like is multiplying 10x+y by 10x+z where y+z = 10, then the answer is 100x(x+1) + yz (such that the two multiplications can be concatenated). So 53*57 = [5*(5+1)][3*7] = 3021.

The article mentions its trick

> saves the student from having to learn the scary outer reaches of the multiplication table — they only have to know how to multiply digits up to 5.

Similarly, another cool trick I like allows quick calculation of all squares up to 125^2 (you could go higher too if you extend it, but through 125^2 is simpler), and you only need to memorize the squares up to 25^2. The trick is to expand (x)*(x) into (x+y)(x-y) + y^2, picking y such that one of the sum/difference factors becomes 50 or 100. Then, you can easily halve the other factor (which will also be even) and shift it two places (if 50), or simply shift it two places (if 100), and then add the square of the small y which has been memorized.

For example, 78^2 = (78-22)(78+22) + 22^2 = 56*100 + 484 = 5600 + 484 = 6084.

Or 74^2 = (74+24)(74-24) + 24^2 = 98*50 + 576 = 4900 + 576 = 5476.

Or 123^2 = (123+23)(123-23) + 23^2 = 146*100 + 529 = 14600 + 529 = 15129.

Since the distance to the nearest multiple of 50 is at most 25, you only need to remember your squares through 25^2 = 625, and the rest of the work is division by two, place shifting, and addition.


Certainly a top shelf algorithm, unlike its namesake.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: