Get AI summaries of any video or article — Sign up free
How to Subtract By Adding thumbnail

How to Subtract By Adding

minutephysics·
5 min read

Based on minutephysics's video on YouTube. If you like this content, support the original creators by watching, liking and subscribing to their content.

TL;DR

Digit-wise complement subtraction can replace long subtraction with borrowing by turning subtraction into an addition plus a final digit-drop.

Briefing

Subtraction can be turned into addition by a digit-by-digit “complement” trick, avoiding the usual borrowing that makes long subtraction tedious. For the example 1492 − 1066, the method rewrites the smaller number’s digits using 9’s complements: replace each digit d with (9 − d), except the final digit uses (10 − d). That transforms 1066 into “9−1, 9−0, 9−6, 10−6,” which is then added to 1492 to produce 10426. Dropping the leading digit yields 426, matching the correct result for 1492 − 1066.

The same approach works broadly for positive numbers, not just this historical pair. The rule is essentially: to subtract, add a number formed from complements of the subtrahend’s digits, then ignore the extra leading digit that appears. Simple cases illustrate the pattern: 8 − 6 becomes 8 + 4 (since 9 − 6 = 3 and the carry structure effectively turns it into adding 4 after the leading-digit adjustment). For 100 − 1, the complement construction gives 100 + 999, which equals 1099; ignoring the first digit leaves 99. Larger examples follow the same logic: 424,242 − 333,333 becomes 424,242 + 666,667, and the leading digit is discarded to get 90,909.

What looks like a clever classroom shortcut becomes practical when subtraction is implemented by machines that are built to add. A hypothetical “adding machine” can simulate subtraction by using modular arithmetic: if the machine has a finite number of digit wheels, adding past the maximum wraps around to zero—an effect known as overflow. In that system, “negative” numbers are represented by what you add to reach zero. For instance, if adding 3 and 9,997 returns the machine to zero, then 9,997 functions as the machine’s version of −3.

The transcript then connects this to how real computers handle subtraction. Because ordinary arithmetic has infinitely many numbers, a machine can’t literally store an infinite-length negative value. Instead, it uses a finite-length stand-in: prepend enough 9s (or, in binary, use a fixed-width representation) so that adding the stand-in behaves like subtracting within the machine’s range. The key idea is that the “wrap to zero” property makes the complement-based addition equivalent to subtraction, as long as you don’t exceed the representation’s limits.

Finally, the method is identified as the computer technique of subtracting using two’s complement. In binary, two’s complement makes the complement-and-add strategy straightforward, which is why computers can subtract even when their core arithmetic is fundamentally addition-based.

Cornell Notes

The complement method turns subtraction into addition by replacing digits of the smaller number with 9’s complements (and using 10’s complement for the final digit). For 1492 − 1066, 1066 is converted into a complement form that, when added to 1492, gives 10426; dropping the leading digit leaves 426. This works for many positive-number subtractions, including 100 − 1 (100 + 999 → 99 after ignoring the first digit) and 424,242 − 333,333 (adding 666,667 → 90,909 after discarding the first digit). The same principle underlies machine subtraction: finite digit systems “wrap around” (overflow), so adding a representation of a negative number is equivalent to subtracting. In computing, this is implemented efficiently in binary using two’s complement.

How does “subtract by adding” work on a multi-digit example like 1492 − 1066?

Replace each digit d of the smaller number with (9 − d), except the final digit uses (10 − d). For 1066: 9−1, 9−0, 9−6, and 10−6. Add that complement form to 1492 to get 10426, then ignore the first (extra leading) digit. The remaining digits give 426, which matches 1492 − 1066.

Why is it valid to ignore the first digit after the addition?

The complement construction is designed so that the addition produces an extra leading digit tied to the “wrap” or carry structure. That leading digit effectively accounts for the complement’s offset, so discarding it leaves the correct difference. The transcript demonstrates this with 1492 + (complement of 1066) = 10426, then dropping the leading 1 to recover 426.

What are a couple of quick applications of the digit-complement rule?

For 8 − 6, the method corresponds to adding 4 (since 6’s complement behavior yields 8 + 4 → 12, with the complement adjustment giving the correct difference). For 100 − 1, the complement form is 999, so 100 + 999 = 1099; ignoring the first digit leaves 99. For 424,242 − 333,333, the complement addition is 424,242 + 666,667 = 1,090,909; ignoring the first digit yields 90,909.

How can an adding machine perform subtraction without a dedicated subtract operation?

Because it works in modular arithmetic with a finite number of digit wheels. When sums exceed the maximum representable value, the machine overflows and wraps back to zero. In that system, a “negative” number is represented by what you add to reach zero. If 3 + 9,997 wraps to 0, then 9,997 is the machine’s representation of −3, so adding that value behaves like subtracting 3.

Why doesn’t the machine store an infinite-length negative number like −3?

Regular arithmetic has infinitely many numbers, but a real machine has finite storage. So it uses a finite-length stand-in for negative values—effectively padding with 9s (in decimal) or using fixed-width binary representations. The transcript notes that adding such a stand-in is “basically the same as subtracting” as long as you don’t look too far beyond the machine’s representable range.

What is the binary version of this subtraction-by-adding idea called?

Subtracting using the two’s complement method. Two’s complement encodes negative numbers in binary so that adding them produces the correct subtraction result within the fixed bit width.

Review Questions

  1. In the complement method, what changes for the final digit compared with the other digits, and how does that affect the result?
  2. Using the idea of modular arithmetic, why does “adding a representation of −3” equal subtracting 3 on a finite adding machine?
  3. How does two’s complement relate to the general concept of subtracting by adding complements?

Key Points

  1. 1

    Digit-wise complement subtraction can replace long subtraction with borrowing by turning subtraction into an addition plus a final digit-drop.

  2. 2

    For a number with digits d, use (9 − d) for each digit except the last, which uses (10 − d).

  3. 3

    After adding the complement form to the minuend, discard the extra leading digit to obtain the correct difference.

  4. 4

    The method generalizes across positive numbers, including examples like 100 − 1 and 424,242 − 333,333.

  5. 5

    Finite digit systems wrap around when they overflow, making modular arithmetic the foundation for machine subtraction.

  6. 6

    Negative numbers on such machines are represented by values that add to zero, so subtraction becomes addition of that representation.

  7. 7

    Computers implement this efficiently in binary using two’s complement.

Highlights

1492 − 1066 becomes 1492 + (complement of 1066) = 10426, and dropping the leading digit gives 426.
The complement trick works beyond one example: 100 − 1 turns into 100 + 999 = 1099, which yields 99 after ignoring the first digit.
An adding machine can subtract because overflow wraps sums back to zero, letting “negative” be represented by what adds to zero.
Two’s complement is the binary implementation of subtracting by adding complements.

Topics

  • Complement Subtraction
  • Modular Arithmetic
  • Two’s Complement
  • Digit Complements
  • Overflow Wraparound

Mentioned

  • Hank Green
  • two's complement