Pushforward compat shims: probability of a map, and map of a smul #
Category: 1-Mathlib (CSD-free). Forward-compat shims.
Mathlib master (2026-08-29) reworked Measure.map's junk value for non-measurable
maps, with two knock-on breaks against the pin (both caught by the Compat canary):
- The pinned tree's named theorem for "pushforward of a probability measure is a
probability measure" (spelled
Measure.isProbabilityMeasure_mapthere) was removed on master in favour of an unconditionalinstanceonμ.map f, with no deprecation alias; the pin has the theorem and not the instance.isProbabilityMeasure_map'states the fact once, proved from the stablemap_apply_of_aemeasurableAPI. Measure.map_smulgained a measurability hypothesis (the unconditional form is false under the new junk value), so pin-shapedrw/simpuses stop firing on master.map_smul'takesMeasurable f— every corpus site has it in hand — and is proved byextfrom the stablemap_apply/smul_applyAPI.
All corpus call sites route through these spellings. When the pin advances past the
master change, the shims collapse to inferInstance / master's Measure.map_smul and
this file can be deleted — noted in specs/validation-hardening-plan.md's canary log.
The pushforward of a probability measure along an a.e.-measurable map is a probability
measure. Compat spelling of the fact that Mathlib master provides as an instance and the
pinned Mathlib as Measure.isProbabilityMeasure_map.
Pushforward of a scaled measure along a measurable map, compat spelling: the pinned
Mathlib's Measure.map_smul is unconditional, master's takes a measurability
hypothesis — this form compiles against both.