# Thinking About Binary Numbers

I was working with Lauren to teach her how to convert between binary and decimal numbers. I think it’s super interesting to get to visit these ideas with her and see how “fresh eyes” see them for the first time.

Another super interesting thing that I don’t think I’ve thought about before is multiplying binary numbers. She and I touched very briefly on what addition looks like.

In the moment though, I could not wrap my head around what subtraction looks like. Multiplication I tried to think about since it’s “close” to what addition is, I figured I could reason through it.

Keeping a simple example in mind, I tried to multiply `11`

by `11`

- these being
`3`

in decimal. Knowing the answer had to look like `1001`

, I stumbled trying
come up with a reason that “normal multiplication” works.

This may or may not look confusing:

```
(11) * (11) = (11) * (10) + (11) * (1) = (110) + (11) = 1001
```

There was a little voice in the back of my head that said I have seen this before, but where?

It hit me. Abstract Algebra, of course.

Binary numbers are just strings of zeros and ones, which is exactly what the group of integers mod 2 is. Of course I’m using addition mod 2 as the group operation here, but I took a second to think about if I could easily throw multiplication into this.

Now, Abstract Algebra was like 3 months ago, so I don’t remember all of the details of what needs to be satisfied to form a ring. I am pretty convinced this can be one of those “The proof is left to the readers as an exercise” moments. * For completions sake, I think the easiest way to convince yourself of this is that since we have a mapping from binary numbers to the natural numbers, and multiplication is closed with regards to the naturals, then that mapping is an isomorphism and we have closure of multiplication for binary numbers. But again, it’s been a while since I touched this material and I am purely going off of my gut here.

So that’s how I convinced myself that I can multiply binary numbers. I carry out the “normal multiplication algorithm”, multiply mod 2, and remember to carry the 1 when necessary.

I need to start a series of posts or just a really long post where I note a handful of times where you can lift the hood on things and find some math. It’s a pretty neat moment when it happens, if you appreciate that sort of thing.

Thanks for reading this post! Comments, questions, and feedback are always welcome.