Objective
Learning objectives
- Explain exponential growth as repeated multiplication, not repeated addition
- Read and evaluate exponential notation, including why
2^10 isn't 2*10 - Compute and plot linear vs. exponential growth for the same number of steps
- Predict a future value in a doubling-time scenario
Hook
One person starts a rumor. It doubles every hour — twice as many people know it each hour as the hour before. How many people know it by hour 10? Before calculating anything, commit to a rough guess. If your gut reached for something like "10 or 11" — small, round, comfortable — you've just met the single most common wrong intuition in this entire course, and you're in good company: it's the default guess almost everyone makes on first contact with this question.
See it
The guess of "about 10 or 11" comes from unconsciously treating doubling like steady adding — the rumor gained one new person in the first hour (1 → 2), so it feels natural to expect roughly one new person every hour after that: 1, 2, 3, 4, .... That's linear thinking, and it's exactly the pattern from Phase 01. But doubling isn't "add the same amount every time" — it's "multiply by the same amount every time," and those two patterns look identical for exactly one step before they violently diverge.
They agree at step 1, then never again
At hour 1, the linear guess and the real doubling both land on 2 — which is precisely why the linear guess feels so reasonable at first glance. By hour 10, the linear guess says 11. The real number is 1,024. That's not a rounding difference; it's a completely different category of growth, and the gap between them gets wider, not narrower, with every additional hour.
Name it
Exponential notation writes repeated multiplication compactly: 2^10 (read "2 to the power of 10") means "multiply 2 by itself 10 times," not "2 times 10." The small raised number is the exponent (how many times to multiply), and the number being multiplied is the base. 2^10 = 1024, while 2 * 10 = 20 — same two numbers, completely different operations, wildly different results, which is exactly the confusion this notation exists to prevent once you're used to reading it correctly.
Exponential growth is any quantity that changes by repeated multiplication over equal time steps — doubling every hour, tripling every generation, growing by a fixed percentage every period (which is multiplication by 1 + rate, not addition of rate).
Code it
xs = list(range(11))
linear = [1 + x for x in xs]
exponential = [2**x for x in xs]
for x, lin, exp in zip(xs, linear, exponential):
print(x, lin, exp)
0 1 1
1 2 2
2 3 4
3 4 8
4 5 16
5 6 32
6 7 64
7 8 128
8 9 256
9 10 512
10 11 1024
Look at how long they stay close: through hour 1 they're identical, and even by hour 3 the gap is only 4 (8 vs. 4). It's not until the later hours that the exponential column visibly runs away — by hour 10, it's 1,024 against 11, a 93x difference from two sequences that started in perfect agreement. That slow-then-explosive pattern is the signature of exponential growth, and it's why the linear guess feels so safe right up until it's catastrophically wrong.
import matplotlib.pyplot as plt
plt.plot(xs, linear, marker="o", label="linear (+1/hour)")
plt.plot(xs, exponential, marker="o", label="exponential (x2/hour)")
plt.xlabel("hour")
plt.ylabel("people who know")
plt.legend()
plt.savefig("growth_comparison.png", dpi=150, bbox_inches="tight")
bacteria = [100 * (3 ** h) for h in range(6)]
print(bacteria)
Starting at 100, tripling every hour: 100, then 100×3=300, then 300×3=900, then 900×3=2700, then 2700×3=8100, then 8100×3=24300. Each term is exactly 3 times the one before it — the same repeated-multiplication pattern as the rumor, just with base 3 instead of base 2, and a starting value of 100 instead of 1.