The Question That Breaks the Naive Brain
Quick: how many integers are between 1 and 2? Zero. None. Easy.
Now: how many real numbers are between 1 and 2? Infinity. 1.1, 1.01, 1.001, 1.000000001, 1.99999999999999... it never ends. Between any two real numbers, there are infinitely more real numbers.
This is what continuity buys you, and it's what continuity costs you. The analog world is continuous. Continuous = infinite. Infinity does not fit in 8GB of RAM.
So How Does Anything Work?
Every system that interacts with the real world — your eyes, your ears, a digital camera, a neural network — solves the same problem the same way: discretize. Take the infinite continuous signal and chop it into a finite, manageable number of samples. Lose a little precision. Keep enough to be useful.
Your ears don't process every frequency between 20 Hz and 20,000 Hz. They sample. Your eyes don't resolve every shade — they sample. Your memory isn't a continuous video — it's a lossy, compressed approximation. The brain learned this trick over millions of years. Computers learned it from the brain.
Why AI Cares
Every floating-point number on your computer is a discretization. float32 uses 32 bits to approximate any real number — about 7 decimal digits of precision. Most of the time it's fine. Sometimes (more on this in Logarithms) you multiply enough tiny probabilities together and the result rounds to zero — numerical underflow, the universe punishing you for forgetting that your numbers are samples, not truths.
Pippa's Confession
scipy.integrate call away from blowing up if I don't pick the discretization carefully. Infinity is a real engineering hazard, not a poetic flourish.
import math
total = 0.0 for _ in range(10): total += 0.1
print(total) # 0.9999999999999999 print(total == 1.0) # False print(math.isclose(total, 1.0)) # True (허용오차 적용)
컴퓨터는 0.1을 0.1로 인지하지 못하고 근사함, 따라서 부동소수점을 다룰 때에는 오차를 감안해야함