Inflation is a sustained increase in the general price level. The quantity theory of money (MV = PQ) says prices rise when money supply grows faster than output. Demand-pull inflation comes from too much spending. Cost-push comes from rising input costs. The Fisher effect links nominal interest rates to inflation expectations.
Quantity theory of money: MV = PQ
The equation of exchange: Money supply (M) times velocity (V, how often each dollar is spent) equals the price level (P) times real output (Q). If V and Q are roughly constant, then increasing M proportionally increases P. "Inflation is always and everywhere a monetary phenomenon" (Friedman).
Scheme
; Quantity theory of money: MV = PQ; If V and Q constant, doubling M doubles P
(define V 5) ; velocity (constant)
(define Q 100) ; real output (constant)
(define (price-level M) (/ (* M V) Q))
(display "MV = PQ, with V=5, Q=100") (newline) (newline)
(for-each
(lambda (M)
(display " M=$") (display M)
(display " -> P=") (display (exact->inexact (price-level M)))
(newline))
'(1002004008001600))
(newline)
(display "Double the money, double the prices.")
(newline)
(display "Real output unchanged. Only prices adjust.")
Python
# Quantity theory: MV = PQ
V = 5# velocity
Q = 100# real outputfor M in [100, 200, 400, 800, 1600]:
P = (M * V) / Q
print("M=$" + str(M) + " -> P=" + str(round(P, 1)))
print("")
print("Double M => double P (with V, Q constant)")
Demand-pull vs cost-push
Demand-pull: too much money chasing too few goods. Government stimulus, credit expansion, or consumer confidence boosts spending beyond capacity. Cost-push: rising input costs (oil shocks, wage spirals) force firms to raise prices even without excess demand. Both produce inflation, but the policy response differs.
Irving Fisher's insight: the nominal interest rate equals the real interest rate plus expected inflation. If inflation is expected to be 5%, lenders demand 5% more to preserve real returns. The real rate is set by the supply and demand for loanable funds; the nominal rate adjusts one-for-one with inflation expectations.
Scheme
; Fisher equation: i = r + expected inflation; i = nominal rate, r = real rate
(define real-rate 0.03) ; 3% real
(display "Fisher effect: nominal = real + expected inflation")
(newline) (newline)
(for-each
(lambda (pi)
(let ((nominal (+ real-rate pi)))
(display " Expected inflation=")
(display (exact->inexact (* pi 100))) (display "%")
(display " -> Nominal rate=")
(display (exact->inexact (* nominal 100))) (display "%")
(newline)))
'(0.00.020.050.100.20))
(newline)
(display "Real purchasing power preserved regardless of inflation")
(newline)
(display "(if expectations are correct)")
Hyperinflation
When governments print money to cover deficits, inflation can spiral. Velocity increases as people spend money immediately, reinforcing the price rise. Historical examples: Weimar Germany (1923, prices doubled every few days), Zimbabwe (2008, monthly inflation of 79.6 billion percent), Venezuela (2018, annual rate above one million percent).