Exercise 4.8 (Scott 1981, PRG-19, Lecture IV) â the principle of fixed-point #
induction
Suppose f : đ â đ and a predicate S â |đ| satisfy
(i) â„ â S;
(ii) x â S âč f(x) â S;
(iii) S is closed under sups of increasing sequences.
Then fix(f) â S. Since fix(f) = ââ fâż(â„) (Theorem 4.2(iii)), and fâ°(â„) = â„ â S with the
inductive step fâż(â„) â S âč fâżâșÂč(â„) â S from (i)/(ii), every approximant lies in
S; the
directed union then lies in S by (iii). This is fixed-point induction
(fix_induction).
As Scott suggests, we apply it to S = {x ⣠a(x) = b(x)} (fix_induction_eq): if
a, b : đ â đ
are approximable with a(â„) = b(â„), f â a = a â f and f â b = b â f, then
a(fix f) = b(fix f). (i) is a(â„) = b(â„); (ii) uses the commutation a(f x) = f(a x),
b(f x) = f(b x); (iii) is continuity (a, b preserve directed unions,
toElementMap_iSupDirected).
The induction principle is choice-free (#print axioms â {propext, Quot.sound}); the equality
corollary inherits Classical.choice only through the Element extensionality
used to compare the
two directed unions.
The sup of a monotone Ï-chain, realized as a directed union
(max-directedness).
Equations
Instances For
fâżâșÂč(â„) = f(fâż(â„)).
The approximants fâż(â„) form a monotone chain whose sup is fix(f).
Exercise 4.8 (Scott 1981, PRG-19) â fixed-point induction. If a predicate
P holds at â„,
is preserved by f, and is closed under sups of monotone chains, then it holds at
fix(f).
Exercise 4.8 (Scott 1981, PRG-19) â application to S = {x ⣠a(x) = b(x)}. If a(â„) = b(â„)
and f commutes with both a and b (f â a = a â f, f â b = b â f), then
a and b agree at
the least fixed point: a(fix f) = b(fix f).