
Math and Analogies - chrisweekly
https://betterexplained.com/articles/math-and-analogies/
======
butisaidsudo
For Roman numerals to make sense you need to remove access to convenient
writing tools. In a world without paper and pens, Arabic numerals are the ones
that seem unwieldy.

I was on a multi-day hiking trip with a friend where we just had a pack of
cards and some spiced rum to keep ourselves entertained in the evening. The
first night we decided to play cribbage, but we didn't have paper or the like
to keep score on.

At first I tried using a stick to scratch out numbers in the dirt. It was
doable, but very awkward. The low light of the camp fire made it hard to see,
and I quickly ran out of undisturbed soil within arms reach.

I then gathered a few twigs to shape into numbers, using the patterns you'd
see on an LED clock. That worked reasonably well, but took more effort than I
liked.

I switched to Roman numerals thinking that the simpler shapes would be easier
to work with. This turned out to be true, but I discovered it had the added
benefit of being really easy to increment numbers.

In most cases, incrementing is incredibly simple. To go from 0 -> 1 -> 2 -> 3,
you simply add a stick each time. To go from 3 -> 4, you pinch together the
bottoms of the 2nd and 3rd sticks. Then you take the first stick away, then
later drop it on the other side of the V. Add another stick, cross some
sticks, etc.

There are a lot of things that seem poorly done at first glance, but make
total sense when you understand the environment they were developed in. I've
heard younger folks wonder why old TV shows are so poorly written. When you've
always been able to watch on demand (or rent episodes on DVD), it's hard to
understand the restrictions on writing when there was no way for your audience
to watch previous episodes if they hadn't seen them when they had aired. And
of course this is true for most software I've ever worked on.

~~~
sovietmudkipz
I like your thought experiment to illustrate why Roman numerals make sense for
the time. I think you're right! It is more practical given the tools than
Arabic numerals.

To respond to the hiking story; I would opt to use binary if I were in the
same situation. I think it's a superior system to use especially out in the
woods. It's hard to read for many folk unexposed to binary but it allows you
to encode lots of base 10 numbers using a few items. For example, a twig
rotated 0 degrees could signify 0, and a twig rotated 90 degrees could be 1. 5
twigs gets you 0 - 31!

To bring it back to the Romans... I realize Binary wasn't commonly used in the
Ancient World and that is something I find a little baffling. Base 2 seems
like it would be more useful in a pre-pen and paper world, especially when you
have to etch something. The closest thing I can find is the Inca Quipu
("talking knots") but even that encodes base 10 numbers into base 4 knots.

If base 2 was widely used by human beings our fingers could have encoded up to
1024 digits.

How did base n > base 2 evolve?

~~~
firethief
Natural binary takes a lot of work to increment, but there's Gray code:
[https://en.wikipedia.org/wiki/Gray_code](https://en.wikipedia.org/wiki/Gray_code)

~~~
schoen
Gray code takes a lot of work to _learn_. It's not very likely that people
would have discovered it as a way of counting on their fingers (or with other
objects) prior to the development of other number systems. If they had, it
would have been extremely hard to teach, learn, or verify that someone was
using it properly, without other number concepts to use as a reference!

------
jacobolus
Here’s what I wrote elsewhere about this:

Why was 1997 easier for us to read than MCMDCVII?

Duh... because we all have decades of experience working with the former
representation and almost no experience at all working with the latter one.

If you wrote a number using arbitrary different symbols and (say) base 14
instead of base 10, but still a positional number system, we would still find
it incredibly difficult to interpret written numbers, because we wouldn’t be
used to it.

Indeed we find exactly this happens when people who are not experienced
programmers try to read hexadecimal numbers written using digits
0123456789ABCDE, and that’s even in a case where we are deeply familiar with
all of the symbols and their order, and in a very straightforward power-of-2
base.

Romans or medieval Europeans had absolutely no problem reading numbers written
like the latter example. Indeed, this is a much more straight-forward and
intuitive representation, and is very easy to interpret for anyone used to
working with a counting board, since it is a direct translation of the
positions of counters on the counting board to symbols written on paper. [Edit
to add: Note that Roman numerals were not a system for practical arithmetic –
people didn’t use writing for this, instead calculating by moving counters
around on a counting board — but only a written record of input data and
calculated outputs.]

I really hate how much people bash on Roman numerals without any significant
experience working with them, and without any discussion or even
acknowledgement of the historical or practical context.

I would recommend anyone interested in this topic start by reading Netz’s
paper “Counter Culture” about Greece 2500 years ago,
[http://worrydream.com/refs/Netz%20-%20Counter%20Culture%20-%...](http://worrydream.com/refs/Netz%20-%20Counter%20Culture%20-%20Towards%20a%20History%20of%20Greek%20Numeracy.pdf)

~~~
bena
Because MCMXCVII is actually 1997.

MCMDCVII is just wrong. D is 500, X is ten.

~~~
Reisen
Kind of a nice proof of his point! We're not used to the numbers, people would
be far less likely to make the mistake with 1997.

------
qwerty456127
Betterexplained is a game changer. Understanding math was nearly impossible
when I was a schoolboy, teachers could never (and hardly ever tried) explain
anything the way that would make any sense other than "just write it down,
memorize and use to substitute values". And now with resources like
betterexplained I get everything for what I have wasted years with no success
in just seconds. This ought to replace the way people are taught at schools
and in colleges, the old way should be damn outlawed (;,;)

~~~
dTal
The problem is that we let experts design curricula. Experts don't see a
problem with the old way, because that's how _they_ learned it, and look at
them - they're experts!

It's the same reason a top-down effort to use tau instead of pi can't get
momentum. People who struggle with math find it a game-changer, but
mathematicians just shrug and say they don't see the point.

I expect a similar dynamic explains why open source software has such terrible
user interfaces, and why legalese is so impenetrable: the people with the
power to change it, don't see the problem.

~~~
qwerty456127
Indeed. Experts in teaching should design curricula and write textbooks, not
experts in the subjects (of course experts in the subjects should be asked to
check everything is valid but not how to teach).

Nevertheless it has been a long time since I've last seen an open source
program with a terrible user interface. I'm writing this in Chrome (which is
open source too and its GUI is quite ok) on KDE5 Plasma (which gives me
aesthetical and ergonomical orgasm all the way I use it although I always
hated how old versions of KDE looked and felt) on Manjaro while making notes
in the Atom editor (which is ridiculously resource-inefficient yet perfect
aesthetically and very intuitive and comfortable to use) and managing files in
Krusader (which isn't as feature-reach as Total Commander yet looks a way more
eye-candy and is almost equally convenient).

Also legalese is so impenetrable only in English (and, probably, some other)
language speaking countries, legal English indeed seems a language distinct
from what ordinary people speak but in many countries laws are readable as
easily as anything else.

------
skadamat
The first 20 mins of Bret's talk
([https://www.youtube.com/watch?v=agOdP2Bmieg](https://www.youtube.com/watch?v=agOdP2Bmieg))
discusses representations quite well in a very similar context / framing.

The challenge with roman numerals was definitely computing with them and
really "thinking with them". Abacuses helped, but it was still a poor UX in
many ways and it took lots of training & practice to get familiar.

Algebraic notation also requires training & practice but has a much quicker
learning curve. Almost every literate adult uses equations in some form or
another on a weekly basis. Both the medium (pencil & paper) as well as the
representation (algebraic notation) were critical to this (as well as other
things like education system / literacy, etc).

The benefits & disadvantages of different representations is massively
understudied and misunderstood. Data visualization, semiotics, and some other
fields focus a bit on this but still fall short in many ways.

~~~
Koshkin
> _Algebraic notation ... has a much quicker learning curve_

Not true - many people still struggle with algebraic notation.

------
netgusto
Video giving some intuition about e^(i•PI)=-1
[https://www.youtube.com/watch?v=F_0yfvm0UoU](https://www.youtube.com/watch?v=F_0yfvm0UoU)

~~~
thaumasiotes
The intuition is as simple as it gets; r·e^{iθ} is the complex number with
radius r and angle θ. pi is just the angle that puts you on the negative half
of the real number line.

For why that identity holds, you do simple algebra on the non-simple Taylor
series of those three functions (e^x, sin x, cos x). It is, to say the least,
much less intuitive.

~~~
chrisweekly
The linked article mentions how helpful it is to have the right analogy (e.g.
a number line, which you reference in your explanation of its intuitivenes).
That's the main point: given the right analogy, things that otherwise seem
arbitrary or nonsensical become clear and even intuitive. :)

------
garmaine
This was amazing. I have a far better understanding of complex numbers now.
Where can I find more of this?

~~~
abecedarius
For intuition on complex numbers, you could try playing with
[http://wry.me/math-toys](http://wry.me/math-toys) — though it’s in a hacky
state I haven’t had the energy to fix. There are much better complex-function
plotters, but I was aiming for a more tangible UI.

------
nabla9
Douglas Hofstadter's Einstein lecture (Feb 4, 2018) explains how Einstein used
analogy from thermodynamics to figure out that light was quantized.

[https://www.youtube.com/watch?v=NXdQfPrU64g](https://www.youtube.com/watch?v=NXdQfPrU64g)

submitted few days ago:
[https://news.ycombinator.com/item?id=18523667](https://news.ycombinator.com/item?id=18523667)

~~~
winchling
It's an interesting fact that argument by analogy is a fallacy unless one
details what precisely is analogous to what, what the exceptions are, etc.

And yet...

All ideas begin life as analogies, which are gradually refined by detailing
what precisely is analogous to what, what the exceptions are, etc.

~~~
nabla9
The process of thinking has no strict rules. Anything goes. Even random
search.

All the requirements for consistency and good form of argumentation apply only
to the "final product". When you finally present your new result it should be
as solid as possible.

~~~
winchling
True!

------
mesarvagya
I was fascinated by Lambda calculus where you could think a number as the
times of application of function. That is:

Symbol 0 = λs.λz.z

Symbol 1 = λs.λz.s(z)

Symbol 2 = λs.λz.s(s(z))

and so on.

Then we can find n+1 of a given number n as: Succ n = λn.λs.λz.s(ns(z))

To even think number as function, it's astonishing. Salute to Alonzo Church.

~~~
Gajurgensen
Learning about Church and Scott encoding was much more interesting than I
thought it would be. I was expecting it to be tedious and banal, but I came
out of it feeling like I had some sort of revelation. Imagining naturals,
lists, trees, etc. as function application was mind-bending at first, but it
eventually clicks into place. Lambda calculus is so incredible in its
combination of simple semantics, expressiveness, and
abstraction/compositionality.

To go a step further, think about how you would implement a predecessor
function on the Church encoding of the naturals. It is much more complicated
than one might expect, and perfectly motivates the introduction of Scott
encodings and the fixed-point function.

~~~
chewxy
Scott encoding even has a weirder implications (if you're not used to it) if
you think about it

    
    
        0 ≡ λf.λx.x
        1 ≡ λf.λx.x (λf.λx.x)
        2 ≡ λf.λx.x (λf.λx.x (λf.λx.x))
    

Or if you allow meta variables in your expression:

    
    
        0 ≡ λf.λx.x
        1 ≡ λf.λx.x 0
        2 ≡ λf.λx.x 1
    

This implies 2 contains 1, 1 contains 0. Bam. Scott encoding also encodes some
parts of set theory.

Following from this, of course, all ADTs can be encoded following the Scott
encoding scheme.

------
jamez1
Highly recommend this book for anyone interested in this line of thinking:

How mathematicians think William P. Byers

------
Tycho
Any good analogies for eigenvectors and eigenvalues?

~~~
quickthrower2
Sailing? If you are moving in a certain direction, with he sail a certain way
the wind blowing won't change it. Although it may change your speed.

