NumberPad - Math Notation for iPad
- 13 minsA new notation
A few years ago, when I was reading Journey Through Genius, I encountered equations from Euclid’s Elements written as sentences.
Any cone is a third part of the cylinder which has the same base with it and equal height.
Today, we would write that relationship as \(volume_{cone} = \frac{1}{3} volume_{cylinder} = \frac{1}{3} \pi r^2 h\), but that notation wasn’t invented yet! That notation wasn’t even a notion. I hadn’t considered how math was done before algebraic notation was invented. It seems like \(2 + 2 = 4\) has always existed.
Algebraic notation is much easier to write than the notation Euclid used. We have some algorithms for manipulating the equations line by line (for example, performing the same operation to both sides of an equation in order to simplify it). This means human errors are less common, well, at least in mathematics.
Today, computers perform these rote algebra algorithms more quickly than we can. It is way easier than streaming and decoding cat videos, which is their primary purpose. We don’t have to worry about them making careless mistakes, either (user error notwithstanding). What if we invented a new notation that took the speed and accuracy of computers for granted? NumberPad is an exploration of a new notation that is built for the strengths of an iPad rather than pencil and paper.
Taxi fares
Let’s jump straight into a demo by calculating some taxi fares. Let’s assume that
a taxi charges a rate of $3
per mile and an initial fare of $2
.
This is \(rate * miles + initialFare = total\). How much would it
cost to travel 5 miles?
First, let’s multiply the $3
rate by 5
miles. The green square is a multiplier block. The two inputs
will always multiply to equal the output.
This comes out to $15
. We add that to the initial fare of
$2
to get the total. The blue circle is the adder block. The two inputs, 15
and 2
, always add up
to equal the output, 17
. A future update may contain the complex calculus and differential equation packages necessary to calculate adjustments for smell of the cab and the bad radio station choice factor.
We can add names to the variables to remember what they are.
So far, this is just a handwriting-based calculator. Pretty cool, but MyScript Calculator already does this with algebraic notation. What is the advantage here?
First, we can easily try different values and see how the changes flow through the
equation. What if we traveled 7 miles? We can tap on miles
and change
the value to 7
. The total
value updates automatically.
We can tell which values will change by looking at the dotted lines between the values and the blocks.
Or, what if the per-mile rate was $3.40? We tap on $/mile
to select it, then drag the
number at the bottom to change its value.
The real advantage of NumberPad is that we can change “outputs” and see the
effect on the “inputs”. For example, how many miles can I travel for $30 total?
We tap on total
to select it, then drag to $30
to change its value.
Again, when we drag the number, the values with the dotted lines are the ones that change.
By tapping on the lines, we can make different lines dotted or solid to control
which amounts stay constant or react to changes. For example, we can also ask
“what was the surge rate if I was charged $40 for 10 miles?” by selecting total
and then
tapping the light green line that connects to rate
so that it is dotted.
Below each value, we can see the algebraic equations that NumberPad used to solve these equations:
\[miles = \frac{total - initialFare}{rate}\] \[rate = \frac{total - initialFare}{miles}\]However, these equations emphasize the different operators. It isn’t obvious that they are expressing the same relationship as the first equation (\(rate * miles + initialFare = total\)).
Relationships and exponents
Another example will help show the difference between operations and relationships. Let’s try \(2^5 = 32\).
The orange circle is the exponentiator block. It has a base
of 2
, a power
of
5
, and a total
of 32
.
Let’s ask “2 raised to the what equals 16?” While total
is selected, we tap
on the dark red line to “dot” it; this causes power
to become the dependent
variable (this also “fixes” base
at 2
, as shown by the solid orange line).
Then, we set total
at 16
. We see NumberPad calculated the answer as \(\log_2 16 = 4\).
I remember logarithms being difficult to learn. They were scary! Like hearing someone use the bathroom at your house at night, and you live alone scary. Like using the LA interstate when your car is on “E” scary! Like telling your friends, you thought “Avatar” was just “ok” scary! Exponents were easier, but at the time I didn’t realize they were the same relationship. Logarithms are just reverse exponents in the same way that division is reverse multiplication. NumberPad makes this relationship clear.
We can also change the dependent / “output” variable to base
and
ask, “What other numbers work out nicely with \(x^4 = y\)?” We just tap the
line connected to base
to make it the dependent variable.
This equation was \(\sqrt[4]{81} = 3\). Another operator for the same relationship!
The way that algebraic notation is used in schools leads students to believe
that the =
symbol is a prompt for an answer. It is confusing in algebra to see an
equation like \(4 + x = 8y\) which already has an “answer” after the =
sign.
It is a big jump to learn that the =
symbol actually represents a relationship.
The notation in NumberPad tries to make the relationship obvious.
Continuously compounded interest
We will do one more example that is a little more involved. The equation for continuously compounded interest is \(principal * e^{rate*years} = total\). Ideally we would be able to write that directly, but in this prototype let’s write it one piece at a time.
First, a rate of 3%
multiplied by 5 years
.
Then we take e
and raise it to that result. We can drag from that result to the
dark red node (which is the “power” of the exponentiator) to link it up.
Now we take our principal investment, $1000
and multiply it by the output from
the exponentiator, 1.16
.
At 3%
interest for 5
years, $1,000
will yield $1,162
. Ta da!
What if there were a higher interest rate?
We can also answer a more complicated question like, “how many years would it
take to reach $2,000
?” We just select total
, tap the line connected to
years
to make years
the dependent variable, and then set total
to $2,000
.
Once we write out the equation that sets out the relationship between values, answering these questions is easy and there is little chance of mistakes.
Why?
Math is a creative and powerful subject. If you find the right relationship between things, you can predict or control them! You will be the master of the math magic and turn the lame into toads! Even without a practical application, finding a truth or noticing a pattern in mathematics can be beautiful. As with any creative endeavor, you often have to play with ideas to make them work.
So why is math seen as repetitive and boring? I believe a big reason is that we spend so much time teaching the algorithms to isolate variables. There are tons of rules to memorize and if you break one of those rules (like adding to only one side of an equation, or distributing incorrectly) you don’t find out until days later when you’ve lost points on your homework or an exam. Computers are great at rote algorithms, so let them do the boring part!
There is a great essay, A Mathematician’s Lament by Paul Lockhart, which imagines a music class analogous to today’s math education:
“Music class is where we take out our staff paper, our teacher puts some notes on the board, and we copy them or transpose them into a different key. We have to make sure to get the clefs and key signatures right, and our teacher is very picky about making sure we fill in our quarter-notes completely. One time we had a chromatic scale problem and I did it right, but the teacher gave me no credit because I had the stems pointing the wrong way.”
In this world, students don’t get to hear music or strum an instrument until advanced college classes! I’d like to make an instrument for students to play with math and see its beauty without years of drills beforehand.
There are other experiments in NumberPad, which I’ll explore in future posts. NumberPad is an open source Swift project, so you can download it and try it on your iPad. It is only a prototype though, so it may have trouble with your handwriting or the solver may fail to see a solution.
Let me know @bridgermax if you enjoyed this essay or have any ideas for NumberPad. You can also open a GitHub issue.