The clauses of eraseEmpty and map on lists of centres #
The recursion BlowUpSequence.eraseEmpty (Hironaka.Manifold.FiniteSuccession.Functor.EraseEmpty)
deletes the empty steps of a list of centres and carries the tails back along the analytic
isomorphisms Bl_โ
M โ M; here are its clauses: the equations on nil and cons
(eraseEmpty_nil, eraseEmpty_cons_of_ne_empty, eraseEmpty_cons_empty); the transport map
keeps the length and the (non-)emptiness of the centres (length_map, noEmptyCenters_map_iff);
the cleaned list has no empty centre (noEmptyCenters_eraseEmpty); the deletion is the identity
exactly on lists without empty centres (eraseEmpty_eq_self_iff) and is idempotent
(eraseEmpty_eraseEmpty); a functor's outputs are fixed by it (eraseEmpty_seq, the convention
of [Kol07, 32]). A functor is its assignment of lists (AnalyticBlowUpSequenceAssignment.ext).
A functor is its assignment of lists of centres (the other field is a proof).
The equations of eraseEmpty #
Lengths and empty centres #
No empty centre in nil.
The first centre of the succession cons hY R is empty iff Y = โ
(isEmptyAt_iff
with cosupport_idealSheaf).
The later centres of cons hY R are those of R.
cons hY rest has no empty centre iff Y โ โ
and rest has none.
The transport along an analytic isomorphism keeps the (non-)emptiness of every centre.
[Kol07, 32]: deleting empty blow-ups from an output of a functor changes nothing.