measure_theory.latticeMathlib.MeasureTheory.Order.Lattice

This file has been ported!

Changes since the initial port

The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -3,7 +3,7 @@ Copyright (c) 2021 Rémy Degenne. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Rémy Degenne
 -/
-import MeasureTheory.Measure.AeMeasurable
+import MeasureTheory.Measure.AEMeasurable
 
 #align_import measure_theory.lattice from "leanprover-community/mathlib"@"781cb2eed038c4caf53bdbd8d20a95e5822d77df"
 
Diff
@@ -284,7 +284,7 @@ theorem Finset.measurable_sup' {ι : Type _} {s : Finset ι} (hs : s.Nonempty) {
 theorem Finset.measurable_range_sup' {f : ℕ → δ → α} {n : ℕ} (hf : ∀ k ≤ n, Measurable (f k)) :
     Measurable ((range (n + 1)).sup' nonempty_range_succ f) :=
   by
-  simp_rw [← Nat.lt_succ_iff] at hf 
+  simp_rw [← Nat.lt_succ_iff] at hf
   refine' Finset.measurable_sup' _ _
   simpa [Finset.mem_range]
 #align finset.measurable_range_sup' Finset.measurable_range_sup'
Diff
@@ -3,7 +3,7 @@ Copyright (c) 2021 Rémy Degenne. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Rémy Degenne
 -/
-import Mathbin.MeasureTheory.Measure.AeMeasurable
+import MeasureTheory.Measure.AeMeasurable
 
 #align_import measure_theory.lattice from "leanprover-community/mathlib"@"781cb2eed038c4caf53bdbd8d20a95e5822d77df"
 
Diff
@@ -2,14 +2,11 @@
 Copyright (c) 2021 Rémy Degenne. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Rémy Degenne
-
-! This file was ported from Lean 3 source module measure_theory.lattice
-! leanprover-community/mathlib commit 781cb2eed038c4caf53bdbd8d20a95e5822d77df
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.MeasureTheory.Measure.AeMeasurable
 
+#align_import measure_theory.lattice from "leanprover-community/mathlib"@"781cb2eed038c4caf53bdbd8d20a95e5822d77df"
+
 /-!
 # Typeclasses for measurability of lattice operations
 
Diff
@@ -100,8 +100,6 @@ end OrderDual
 
 variable {α : Type _} {m : MeasurableSpace α} {μ : Measure α} {f g : α → M}
 
-include m
-
 section Sup
 
 variable [Sup M]
@@ -176,16 +174,12 @@ theorem AEMeasurable.sup (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
 #align ae_measurable.sup AEMeasurable.sup
 -/
 
-omit m
-
 #print MeasurableSup₂.toMeasurableSup /-
 instance (priority := 100) MeasurableSup₂.toMeasurableSup : MeasurableSup M :=
   ⟨fun c => measurable_const.sup measurable_id, fun c => measurable_id.sup measurable_const⟩
 #align has_measurable_sup₂.to_has_measurable_sup MeasurableSup₂.toMeasurableSup
 -/
 
-include m
-
 end MeasurableSup₂
 
 end Sup
@@ -264,16 +258,12 @@ theorem AEMeasurable.inf (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
 #align ae_measurable.inf AEMeasurable.inf
 -/
 
-omit m
-
 #print MeasurableInf₂.to_hasMeasurableInf /-
 instance (priority := 100) MeasurableInf₂.to_hasMeasurableInf : MeasurableInf M :=
   ⟨fun c => measurable_const.inf measurable_id, fun c => measurable_id.inf measurable_const⟩
 #align has_measurable_inf₂.to_has_measurable_inf MeasurableInf₂.to_hasMeasurableInf
 -/
 
-include m
-
 end MeasurableInf₂
 
 end Inf
@@ -284,12 +274,15 @@ open Finset
 
 variable {δ : Type _} [MeasurableSpace δ] [SemilatticeSup α] [MeasurableSup₂ α]
 
+#print Finset.measurable_sup' /-
 @[measurability]
 theorem Finset.measurable_sup' {ι : Type _} {s : Finset ι} (hs : s.Nonempty) {f : ι → δ → α}
     (hf : ∀ n ∈ s, Measurable (f n)) : Measurable (s.sup' hs f) :=
   Finset.sup'_induction hs _ (fun f hf g hg => hf.sup hg) fun n hn => hf n hn
 #align finset.measurable_sup' Finset.measurable_sup'
+-/
 
+#print Finset.measurable_range_sup' /-
 @[measurability]
 theorem Finset.measurable_range_sup' {f : ℕ → δ → α} {n : ℕ} (hf : ∀ k ≤ n, Measurable (f k)) :
     Measurable ((range (n + 1)).sup' nonempty_range_succ f) :=
@@ -298,7 +291,9 @@ theorem Finset.measurable_range_sup' {f : ℕ → δ → α} {n : ℕ} (hf : ∀
   refine' Finset.measurable_sup' _ _
   simpa [Finset.mem_range]
 #align finset.measurable_range_sup' Finset.measurable_range_sup'
+-/
 
+#print Finset.measurable_range_sup'' /-
 @[measurability]
 theorem Finset.measurable_range_sup'' {f : ℕ → δ → α} {n : ℕ} (hf : ∀ k ≤ n, Measurable (f k)) :
     Measurable fun x => (range (n + 1)).sup' nonempty_range_succ fun k => f k x :=
@@ -307,6 +302,7 @@ theorem Finset.measurable_range_sup'' {f : ℕ → δ → α} {n : ℕ} (hf : 
   ext x
   simp
 #align finset.measurable_range_sup'' Finset.measurable_range_sup''
+-/
 
 end SemilatticeSup
 
Diff
@@ -294,7 +294,7 @@ theorem Finset.measurable_sup' {ι : Type _} {s : Finset ι} (hs : s.Nonempty) {
 theorem Finset.measurable_range_sup' {f : ℕ → δ → α} {n : ℕ} (hf : ∀ k ≤ n, Measurable (f k)) :
     Measurable ((range (n + 1)).sup' nonempty_range_succ f) :=
   by
-  simp_rw [← Nat.lt_succ_iff] at hf
+  simp_rw [← Nat.lt_succ_iff] at hf 
   refine' Finset.measurable_sup' _ _
   simpa [Finset.mem_range]
 #align finset.measurable_range_sup' Finset.measurable_range_sup'
Diff
@@ -284,24 +284,12 @@ open Finset
 
 variable {δ : Type _} [MeasurableSpace δ] [SemilatticeSup α] [MeasurableSup₂ α]
 
-/- warning: finset.measurable_sup' -> Finset.measurable_sup' is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toHasSup.{u1} α _inst_3)] {ι : Type.{u3}} {s : Finset.{u3} ι} (hs : Finset.Nonempty.{u3} ι s) {f : ι -> δ -> α}, (forall (n : ι), (Membership.Mem.{u3, u3} ι (Finset.{u3} ι) (Finset.hasMem.{u3} ι) n s) -> (Measurable.{u2, u1} δ α _inst_2 m (f n))) -> (Measurable.{u2, u1} δ α _inst_2 m (Finset.sup'.{max u2 u1, u3} (δ -> α) ι (Pi.semilatticeSup.{u2, u1} δ (fun (ᾰ : δ) => α) (fun (i : δ) => _inst_3)) s hs f))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toSup.{u1} α _inst_3)] {ι : Type.{u3}} {s : Finset.{u3} ι} (hs : Finset.Nonempty.{u3} ι s) {f : ι -> δ -> α}, (forall (n : ι), (Membership.mem.{u3, u3} ι (Finset.{u3} ι) (Finset.instMembershipFinset.{u3} ι) n s) -> (Measurable.{u2, u1} δ α _inst_2 m (f n))) -> (Measurable.{u2, u1} δ α _inst_2 m (Finset.sup'.{max u1 u2, u3} (δ -> α) ι (Pi.semilatticeSup.{u2, u1} δ (fun (ᾰ : δ) => α) (fun (i : δ) => _inst_3)) s hs f))
-Case conversion may be inaccurate. Consider using '#align finset.measurable_sup' Finset.measurable_sup'ₓ'. -/
 @[measurability]
 theorem Finset.measurable_sup' {ι : Type _} {s : Finset ι} (hs : s.Nonempty) {f : ι → δ → α}
     (hf : ∀ n ∈ s, Measurable (f n)) : Measurable (s.sup' hs f) :=
   Finset.sup'_induction hs _ (fun f hf g hg => hf.sup hg) fun n hn => hf n hn
 #align finset.measurable_sup' Finset.measurable_sup'
 
-/- warning: finset.measurable_range_sup' -> Finset.measurable_range_sup' is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toHasSup.{u1} α _inst_3)] {f : Nat -> δ -> α} {n : Nat}, (forall (k : Nat), (LE.le.{0} Nat Nat.hasLe k n) -> (Measurable.{u2, u1} δ α _inst_2 m (f k))) -> (Measurable.{u2, u1} δ α _inst_2 m (Finset.sup'.{max u2 u1, 0} (δ -> α) Nat (Pi.semilatticeSup.{u2, u1} δ (fun (ᾰ : δ) => α) (fun (i : δ) => _inst_3)) (Finset.range (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Finset.nonempty_range_succ n) f))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toSup.{u1} α _inst_3)] {f : Nat -> δ -> α} {n : Nat}, (forall (k : Nat), (LE.le.{0} Nat instLENat k n) -> (Measurable.{u2, u1} δ α _inst_2 m (f k))) -> (Measurable.{u2, u1} δ α _inst_2 m (Finset.sup'.{max u1 u2, 0} (δ -> α) Nat (Pi.semilatticeSup.{u2, u1} δ (fun (ᾰ : δ) => α) (fun (i : δ) => _inst_3)) (Finset.range (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Finset.nonempty_range_succ n) f))
-Case conversion may be inaccurate. Consider using '#align finset.measurable_range_sup' Finset.measurable_range_sup'ₓ'. -/
 @[measurability]
 theorem Finset.measurable_range_sup' {f : ℕ → δ → α} {n : ℕ} (hf : ∀ k ≤ n, Measurable (f k)) :
     Measurable ((range (n + 1)).sup' nonempty_range_succ f) :=
@@ -311,12 +299,6 @@ theorem Finset.measurable_range_sup' {f : ℕ → δ → α} {n : ℕ} (hf : ∀
   simpa [Finset.mem_range]
 #align finset.measurable_range_sup' Finset.measurable_range_sup'
 
-/- warning: finset.measurable_range_sup'' -> Finset.measurable_range_sup'' is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toHasSup.{u1} α _inst_3)] {f : Nat -> δ -> α} {n : Nat}, (forall (k : Nat), (LE.le.{0} Nat Nat.hasLe k n) -> (Measurable.{u2, u1} δ α _inst_2 m (f k))) -> (Measurable.{u2, u1} δ α _inst_2 m (fun (x : δ) => Finset.sup'.{u1, 0} α Nat _inst_3 (Finset.range (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Finset.nonempty_range_succ n) (fun (k : Nat) => f k x)))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toSup.{u1} α _inst_3)] {f : Nat -> δ -> α} {n : Nat}, (forall (k : Nat), (LE.le.{0} Nat instLENat k n) -> (Measurable.{u2, u1} δ α _inst_2 m (f k))) -> (Measurable.{u2, u1} δ α _inst_2 m (fun (x : δ) => Finset.sup'.{u1, 0} α Nat _inst_3 (Finset.range (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Finset.nonempty_range_succ n) (fun (k : Nat) => f k x)))
-Case conversion may be inaccurate. Consider using '#align finset.measurable_range_sup'' Finset.measurable_range_sup''ₓ'. -/
 @[measurability]
 theorem Finset.measurable_range_sup'' {f : ℕ → δ → α} {n : ℕ} (hf : ∀ k ≤ n, Measurable (f k)) :
     Measurable fun x => (range (n + 1)).sup' nonempty_range_succ fun k => f k x :=
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Rémy Degenne
 
 ! This file was ported from Lean 3 source module measure_theory.lattice
-! leanprover-community/mathlib commit a95b442734d137aef46c1871e147089877fd0f62
+! leanprover-community/mathlib commit 781cb2eed038c4caf53bdbd8d20a95e5822d77df
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -13,6 +13,9 @@ import Mathbin.MeasureTheory.Measure.AeMeasurable
 /-!
 # Typeclasses for measurability of lattice operations
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 In this file we define classes `has_measurable_sup` and `has_measurable_inf` and prove dot-style
 lemmas (`measurable.sup`, `ae_measurable.sup` etc). For binary operations we define two typeclasses:
 
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Rémy Degenne
 
 ! This file was ported from Lean 3 source module measure_theory.lattice
-! leanprover-community/mathlib commit 781cb2eed038c4caf53bdbd8d20a95e5822d77df
+! leanprover-community/mathlib commit a95b442734d137aef46c1871e147089877fd0f62
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -13,9 +13,6 @@ import Mathbin.MeasureTheory.Measure.AeMeasurable
 /-!
 # Typeclasses for measurability of lattice operations
 
-> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
-> Any changes to this file require a corresponding PR to mathlib4.
-
 In this file we define classes `has_measurable_sup` and `has_measurable_inf` and prove dot-style
 lemmas (`measurable.sup`, `ae_measurable.sup` etc). For binary operations we define two typeclasses:
 
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Rémy Degenne
 
 ! This file was ported from Lean 3 source module measure_theory.lattice
-! leanprover-community/mathlib commit a95b442734d137aef46c1871e147089877fd0f62
+! leanprover-community/mathlib commit 781cb2eed038c4caf53bdbd8d20a95e5822d77df
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -13,6 +13,9 @@ import Mathbin.MeasureTheory.Measure.AeMeasurable
 /-!
 # Typeclasses for measurability of lattice operations
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 In this file we define classes `has_measurable_sup` and `has_measurable_inf` and prove dot-style
 lemmas (`measurable.sup`, `ae_measurable.sup` etc). For binary operations we define two typeclasses:
 
Diff
@@ -35,54 +35,62 @@ measurable function, lattice operation
 
 open MeasureTheory
 
+#print MeasurableSup /-
 /-- We say that a type `has_measurable_sup` if `((⊔) c)` and `(⊔ c)` are measurable functions.
 For a typeclass assuming measurability of `uncurry (⊔)` see `has_measurable_sup₂`. -/
-class HasMeasurableSup (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
+class MeasurableSup (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
   measurable_const_sup : ∀ c : M, Measurable ((· ⊔ ·) c)
   measurable_sup_const : ∀ c : M, Measurable (· ⊔ c)
-#align has_measurable_sup HasMeasurableSup
+#align has_measurable_sup MeasurableSup
+-/
 
+#print MeasurableSup₂ /-
 /-- We say that a type `has_measurable_sup₂` if `uncurry (⊔)` is a measurable functions.
 For a typeclass assuming measurability of `((⊔) c)` and `(⊔ c)` see `has_measurable_sup`. -/
-class HasMeasurableSup₂ (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
+class MeasurableSup₂ (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
   measurable_sup : Measurable fun p : M × M => p.1 ⊔ p.2
-#align has_measurable_sup₂ HasMeasurableSup₂
+#align has_measurable_sup₂ MeasurableSup₂
+-/
 
-export HasMeasurableSup₂ (measurable_sup)
+export MeasurableSup₂ (measurable_sup)
 
-export HasMeasurableSup (measurable_const_sup measurable_sup_const)
+export MeasurableSup (measurable_const_sup measurable_sup_const)
 
+#print MeasurableInf /-
 /-- We say that a type `has_measurable_inf` if `((⊓) c)` and `(⊓ c)` are measurable functions.
 For a typeclass assuming measurability of `uncurry (⊓)` see `has_measurable_inf₂`. -/
-class HasMeasurableInf (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
+class MeasurableInf (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
   measurable_const_inf : ∀ c : M, Measurable ((· ⊓ ·) c)
   measurable_inf_const : ∀ c : M, Measurable (· ⊓ c)
-#align has_measurable_inf HasMeasurableInf
+#align has_measurable_inf MeasurableInf
+-/
 
+#print MeasurableInf₂ /-
 /-- We say that a type `has_measurable_inf₂` if `uncurry (⊔)` is a measurable functions.
 For a typeclass assuming measurability of `((⊔) c)` and `(⊔ c)` see `has_measurable_inf`. -/
-class HasMeasurableInf₂ (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
+class MeasurableInf₂ (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
   measurable_inf : Measurable fun p : M × M => p.1 ⊓ p.2
-#align has_measurable_inf₂ HasMeasurableInf₂
+#align has_measurable_inf₂ MeasurableInf₂
+-/
 
-export HasMeasurableInf₂ (measurable_inf)
+export MeasurableInf₂ (measurable_inf)
 
-export HasMeasurableInf (measurable_const_inf measurable_inf_const)
+export MeasurableInf (measurable_const_inf measurable_inf_const)
 
 variable {M : Type _} [MeasurableSpace M]
 
 section OrderDual
 
-instance (priority := 100) [Inf M] [HasMeasurableInf M] : HasMeasurableSup Mᵒᵈ :=
+instance (priority := 100) [Inf M] [MeasurableInf M] : MeasurableSup Mᵒᵈ :=
   ⟨@measurable_const_inf M _ _ _, @measurable_inf_const M _ _ _⟩
 
-instance (priority := 100) [Sup M] [HasMeasurableSup M] : HasMeasurableInf Mᵒᵈ :=
+instance (priority := 100) [Sup M] [MeasurableSup M] : MeasurableInf Mᵒᵈ :=
   ⟨@measurable_const_sup M _ _ _, @measurable_sup_const M _ _ _⟩
 
-instance (priority := 100) [Inf M] [HasMeasurableInf₂ M] : HasMeasurableSup₂ Mᵒᵈ :=
+instance (priority := 100) [Inf M] [MeasurableInf₂ M] : MeasurableSup₂ Mᵒᵈ :=
   ⟨@measurable_inf M _ _ _⟩
 
-instance (priority := 100) [Sup M] [HasMeasurableSup₂ M] : HasMeasurableInf₂ Mᵒᵈ :=
+instance (priority := 100) [Sup M] [MeasurableSup₂ M] : MeasurableInf₂ Mᵒᵈ :=
   ⟨@measurable_sup M _ _ _⟩
 
 end OrderDual
@@ -97,63 +105,81 @@ variable [Sup M]
 
 section MeasurableSup
 
-variable [HasMeasurableSup M]
+variable [MeasurableSup M]
 
+#print Measurable.const_sup /-
 @[measurability]
 theorem Measurable.const_sup (hf : Measurable f) (c : M) : Measurable fun x => c ⊔ f x :=
   (measurable_const_sup c).comp hf
 #align measurable.const_sup Measurable.const_sup
+-/
 
+#print AEMeasurable.const_sup /-
 @[measurability]
 theorem AEMeasurable.const_sup (hf : AEMeasurable f μ) (c : M) :
     AEMeasurable (fun x => c ⊔ f x) μ :=
-  (HasMeasurableSup.measurable_const_sup c).comp_aemeasurable hf
+  (MeasurableSup.measurable_const_sup c).comp_aemeasurable hf
 #align ae_measurable.const_sup AEMeasurable.const_sup
+-/
 
+#print Measurable.sup_const /-
 @[measurability]
 theorem Measurable.sup_const (hf : Measurable f) (c : M) : Measurable fun x => f x ⊔ c :=
   (measurable_sup_const c).comp hf
 #align measurable.sup_const Measurable.sup_const
+-/
 
+#print AEMeasurable.sup_const /-
 @[measurability]
 theorem AEMeasurable.sup_const (hf : AEMeasurable f μ) (c : M) :
     AEMeasurable (fun x => f x ⊔ c) μ :=
   (measurable_sup_const c).comp_aemeasurable hf
 #align ae_measurable.sup_const AEMeasurable.sup_const
+-/
 
 end MeasurableSup
 
 section MeasurableSup₂
 
-variable [HasMeasurableSup₂ M]
+variable [MeasurableSup₂ M]
 
+#print Measurable.sup' /-
 @[measurability]
 theorem Measurable.sup' (hf : Measurable f) (hg : Measurable g) : Measurable (f ⊔ g) :=
   measurable_sup.comp (hf.prod_mk hg)
 #align measurable.sup' Measurable.sup'
+-/
 
+#print Measurable.sup /-
 @[measurability]
 theorem Measurable.sup (hf : Measurable f) (hg : Measurable g) : Measurable fun a => f a ⊔ g a :=
   measurable_sup.comp (hf.prod_mk hg)
 #align measurable.sup Measurable.sup
+-/
 
+#print AEMeasurable.sup' /-
 @[measurability]
 theorem AEMeasurable.sup' (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
     AEMeasurable (f ⊔ g) μ :=
   measurable_sup.comp_aemeasurable (hf.prod_mk hg)
 #align ae_measurable.sup' AEMeasurable.sup'
+-/
 
+#print AEMeasurable.sup /-
 @[measurability]
 theorem AEMeasurable.sup (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
     AEMeasurable (fun a => f a ⊔ g a) μ :=
   measurable_sup.comp_aemeasurable (hf.prod_mk hg)
 #align ae_measurable.sup AEMeasurable.sup
+-/
 
 omit m
 
-instance (priority := 100) HasMeasurableSup₂.to_hasMeasurableSup : HasMeasurableSup M :=
+#print MeasurableSup₂.toMeasurableSup /-
+instance (priority := 100) MeasurableSup₂.toMeasurableSup : MeasurableSup M :=
   ⟨fun c => measurable_const.sup measurable_id, fun c => measurable_id.sup measurable_const⟩
-#align has_measurable_sup₂.to_has_measurable_sup HasMeasurableSup₂.to_hasMeasurableSup
+#align has_measurable_sup₂.to_has_measurable_sup MeasurableSup₂.toMeasurableSup
+-/
 
 include m
 
@@ -167,63 +193,81 @@ variable [Inf M]
 
 section MeasurableInf
 
-variable [HasMeasurableInf M]
+variable [MeasurableInf M]
 
+#print Measurable.const_inf /-
 @[measurability]
 theorem Measurable.const_inf (hf : Measurable f) (c : M) : Measurable fun x => c ⊓ f x :=
   (measurable_const_inf c).comp hf
 #align measurable.const_inf Measurable.const_inf
+-/
 
+#print AEMeasurable.const_inf /-
 @[measurability]
 theorem AEMeasurable.const_inf (hf : AEMeasurable f μ) (c : M) :
     AEMeasurable (fun x => c ⊓ f x) μ :=
-  (HasMeasurableInf.measurable_const_inf c).comp_aemeasurable hf
+  (MeasurableInf.measurable_const_inf c).comp_aemeasurable hf
 #align ae_measurable.const_inf AEMeasurable.const_inf
+-/
 
+#print Measurable.inf_const /-
 @[measurability]
 theorem Measurable.inf_const (hf : Measurable f) (c : M) : Measurable fun x => f x ⊓ c :=
   (measurable_inf_const c).comp hf
 #align measurable.inf_const Measurable.inf_const
+-/
 
+#print AEMeasurable.inf_const /-
 @[measurability]
 theorem AEMeasurable.inf_const (hf : AEMeasurable f μ) (c : M) :
     AEMeasurable (fun x => f x ⊓ c) μ :=
   (measurable_inf_const c).comp_aemeasurable hf
 #align ae_measurable.inf_const AEMeasurable.inf_const
+-/
 
 end MeasurableInf
 
 section MeasurableInf₂
 
-variable [HasMeasurableInf₂ M]
+variable [MeasurableInf₂ M]
 
+#print Measurable.inf' /-
 @[measurability]
 theorem Measurable.inf' (hf : Measurable f) (hg : Measurable g) : Measurable (f ⊓ g) :=
   measurable_inf.comp (hf.prod_mk hg)
 #align measurable.inf' Measurable.inf'
+-/
 
+#print Measurable.inf /-
 @[measurability]
 theorem Measurable.inf (hf : Measurable f) (hg : Measurable g) : Measurable fun a => f a ⊓ g a :=
   measurable_inf.comp (hf.prod_mk hg)
 #align measurable.inf Measurable.inf
+-/
 
+#print AEMeasurable.inf' /-
 @[measurability]
 theorem AEMeasurable.inf' (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
     AEMeasurable (f ⊓ g) μ :=
   measurable_inf.comp_aemeasurable (hf.prod_mk hg)
 #align ae_measurable.inf' AEMeasurable.inf'
+-/
 
+#print AEMeasurable.inf /-
 @[measurability]
 theorem AEMeasurable.inf (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
     AEMeasurable (fun a => f a ⊓ g a) μ :=
   measurable_inf.comp_aemeasurable (hf.prod_mk hg)
 #align ae_measurable.inf AEMeasurable.inf
+-/
 
 omit m
 
-instance (priority := 100) HasMeasurableInf₂.to_hasMeasurableInf : HasMeasurableInf M :=
+#print MeasurableInf₂.to_hasMeasurableInf /-
+instance (priority := 100) MeasurableInf₂.to_hasMeasurableInf : MeasurableInf M :=
   ⟨fun c => measurable_const.inf measurable_id, fun c => measurable_id.inf measurable_const⟩
-#align has_measurable_inf₂.to_has_measurable_inf HasMeasurableInf₂.to_hasMeasurableInf
+#align has_measurable_inf₂.to_has_measurable_inf MeasurableInf₂.to_hasMeasurableInf
+-/
 
 include m
 
@@ -235,14 +279,26 @@ section SemilatticeSup
 
 open Finset
 
-variable {δ : Type _} [MeasurableSpace δ] [SemilatticeSup α] [HasMeasurableSup₂ α]
+variable {δ : Type _} [MeasurableSpace δ] [SemilatticeSup α] [MeasurableSup₂ α]
 
+/- warning: finset.measurable_sup' -> Finset.measurable_sup' is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toHasSup.{u1} α _inst_3)] {ι : Type.{u3}} {s : Finset.{u3} ι} (hs : Finset.Nonempty.{u3} ι s) {f : ι -> δ -> α}, (forall (n : ι), (Membership.Mem.{u3, u3} ι (Finset.{u3} ι) (Finset.hasMem.{u3} ι) n s) -> (Measurable.{u2, u1} δ α _inst_2 m (f n))) -> (Measurable.{u2, u1} δ α _inst_2 m (Finset.sup'.{max u2 u1, u3} (δ -> α) ι (Pi.semilatticeSup.{u2, u1} δ (fun (ᾰ : δ) => α) (fun (i : δ) => _inst_3)) s hs f))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toSup.{u1} α _inst_3)] {ι : Type.{u3}} {s : Finset.{u3} ι} (hs : Finset.Nonempty.{u3} ι s) {f : ι -> δ -> α}, (forall (n : ι), (Membership.mem.{u3, u3} ι (Finset.{u3} ι) (Finset.instMembershipFinset.{u3} ι) n s) -> (Measurable.{u2, u1} δ α _inst_2 m (f n))) -> (Measurable.{u2, u1} δ α _inst_2 m (Finset.sup'.{max u1 u2, u3} (δ -> α) ι (Pi.semilatticeSup.{u2, u1} δ (fun (ᾰ : δ) => α) (fun (i : δ) => _inst_3)) s hs f))
+Case conversion may be inaccurate. Consider using '#align finset.measurable_sup' Finset.measurable_sup'ₓ'. -/
 @[measurability]
 theorem Finset.measurable_sup' {ι : Type _} {s : Finset ι} (hs : s.Nonempty) {f : ι → δ → α}
     (hf : ∀ n ∈ s, Measurable (f n)) : Measurable (s.sup' hs f) :=
   Finset.sup'_induction hs _ (fun f hf g hg => hf.sup hg) fun n hn => hf n hn
 #align finset.measurable_sup' Finset.measurable_sup'
 
+/- warning: finset.measurable_range_sup' -> Finset.measurable_range_sup' is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toHasSup.{u1} α _inst_3)] {f : Nat -> δ -> α} {n : Nat}, (forall (k : Nat), (LE.le.{0} Nat Nat.hasLe k n) -> (Measurable.{u2, u1} δ α _inst_2 m (f k))) -> (Measurable.{u2, u1} δ α _inst_2 m (Finset.sup'.{max u2 u1, 0} (δ -> α) Nat (Pi.semilatticeSup.{u2, u1} δ (fun (ᾰ : δ) => α) (fun (i : δ) => _inst_3)) (Finset.range (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Finset.nonempty_range_succ n) f))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toSup.{u1} α _inst_3)] {f : Nat -> δ -> α} {n : Nat}, (forall (k : Nat), (LE.le.{0} Nat instLENat k n) -> (Measurable.{u2, u1} δ α _inst_2 m (f k))) -> (Measurable.{u2, u1} δ α _inst_2 m (Finset.sup'.{max u1 u2, 0} (δ -> α) Nat (Pi.semilatticeSup.{u2, u1} δ (fun (ᾰ : δ) => α) (fun (i : δ) => _inst_3)) (Finset.range (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Finset.nonempty_range_succ n) f))
+Case conversion may be inaccurate. Consider using '#align finset.measurable_range_sup' Finset.measurable_range_sup'ₓ'. -/
 @[measurability]
 theorem Finset.measurable_range_sup' {f : ℕ → δ → α} {n : ℕ} (hf : ∀ k ≤ n, Measurable (f k)) :
     Measurable ((range (n + 1)).sup' nonempty_range_succ f) :=
@@ -252,6 +308,12 @@ theorem Finset.measurable_range_sup' {f : ℕ → δ → α} {n : ℕ} (hf : ∀
   simpa [Finset.mem_range]
 #align finset.measurable_range_sup' Finset.measurable_range_sup'
 
+/- warning: finset.measurable_range_sup'' -> Finset.measurable_range_sup'' is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toHasSup.{u1} α _inst_3)] {f : Nat -> δ -> α} {n : Nat}, (forall (k : Nat), (LE.le.{0} Nat Nat.hasLe k n) -> (Measurable.{u2, u1} δ α _inst_2 m (f k))) -> (Measurable.{u2, u1} δ α _inst_2 m (fun (x : δ) => Finset.sup'.{u1, 0} α Nat _inst_3 (Finset.range (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (Finset.nonempty_range_succ n) (fun (k : Nat) => f k x)))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {δ : Type.{u2}} [_inst_2 : MeasurableSpace.{u2} δ] [_inst_3 : SemilatticeSup.{u1} α] [_inst_4 : MeasurableSup₂.{u1} α m (SemilatticeSup.toSup.{u1} α _inst_3)] {f : Nat -> δ -> α} {n : Nat}, (forall (k : Nat), (LE.le.{0} Nat instLENat k n) -> (Measurable.{u2, u1} δ α _inst_2 m (f k))) -> (Measurable.{u2, u1} δ α _inst_2 m (fun (x : δ) => Finset.sup'.{u1, 0} α Nat _inst_3 (Finset.range (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (Finset.nonempty_range_succ n) (fun (k : Nat) => f k x)))
+Case conversion may be inaccurate. Consider using '#align finset.measurable_range_sup'' Finset.measurable_range_sup''ₓ'. -/
 @[measurability]
 theorem Finset.measurable_range_sup'' {f : ℕ → δ → α} {n : ℕ} (hf : ∀ k ≤ n, Measurable (f k)) :
     Measurable fun x => (range (n + 1)).sup' nonempty_range_succ fun k => f k x :=
Diff
@@ -105,9 +105,10 @@ theorem Measurable.const_sup (hf : Measurable f) (c : M) : Measurable fun x => c
 #align measurable.const_sup Measurable.const_sup
 
 @[measurability]
-theorem AeMeasurable.constSup (hf : AeMeasurable f μ) (c : M) : AeMeasurable (fun x => c ⊔ f x) μ :=
-  (HasMeasurableSup.measurable_const_sup c).compAeMeasurable hf
-#align ae_measurable.const_sup AeMeasurable.constSup
+theorem AEMeasurable.const_sup (hf : AEMeasurable f μ) (c : M) :
+    AEMeasurable (fun x => c ⊔ f x) μ :=
+  (HasMeasurableSup.measurable_const_sup c).comp_aemeasurable hf
+#align ae_measurable.const_sup AEMeasurable.const_sup
 
 @[measurability]
 theorem Measurable.sup_const (hf : Measurable f) (c : M) : Measurable fun x => f x ⊔ c :=
@@ -115,9 +116,10 @@ theorem Measurable.sup_const (hf : Measurable f) (c : M) : Measurable fun x => f
 #align measurable.sup_const Measurable.sup_const
 
 @[measurability]
-theorem AeMeasurable.supConst (hf : AeMeasurable f μ) (c : M) : AeMeasurable (fun x => f x ⊔ c) μ :=
-  (measurable_sup_const c).compAeMeasurable hf
-#align ae_measurable.sup_const AeMeasurable.supConst
+theorem AEMeasurable.sup_const (hf : AEMeasurable f μ) (c : M) :
+    AEMeasurable (fun x => f x ⊔ c) μ :=
+  (measurable_sup_const c).comp_aemeasurable hf
+#align ae_measurable.sup_const AEMeasurable.sup_const
 
 end MeasurableSup
 
@@ -136,16 +138,16 @@ theorem Measurable.sup (hf : Measurable f) (hg : Measurable g) : Measurable fun
 #align measurable.sup Measurable.sup
 
 @[measurability]
-theorem AeMeasurable.sup' (hf : AeMeasurable f μ) (hg : AeMeasurable g μ) :
-    AeMeasurable (f ⊔ g) μ :=
-  measurable_sup.compAeMeasurable (hf.prod_mk hg)
-#align ae_measurable.sup' AeMeasurable.sup'
+theorem AEMeasurable.sup' (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
+    AEMeasurable (f ⊔ g) μ :=
+  measurable_sup.comp_aemeasurable (hf.prod_mk hg)
+#align ae_measurable.sup' AEMeasurable.sup'
 
 @[measurability]
-theorem AeMeasurable.sup (hf : AeMeasurable f μ) (hg : AeMeasurable g μ) :
-    AeMeasurable (fun a => f a ⊔ g a) μ :=
-  measurable_sup.compAeMeasurable (hf.prod_mk hg)
-#align ae_measurable.sup AeMeasurable.sup
+theorem AEMeasurable.sup (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
+    AEMeasurable (fun a => f a ⊔ g a) μ :=
+  measurable_sup.comp_aemeasurable (hf.prod_mk hg)
+#align ae_measurable.sup AEMeasurable.sup
 
 omit m
 
@@ -173,9 +175,10 @@ theorem Measurable.const_inf (hf : Measurable f) (c : M) : Measurable fun x => c
 #align measurable.const_inf Measurable.const_inf
 
 @[measurability]
-theorem AeMeasurable.constInf (hf : AeMeasurable f μ) (c : M) : AeMeasurable (fun x => c ⊓ f x) μ :=
-  (HasMeasurableInf.measurable_const_inf c).compAeMeasurable hf
-#align ae_measurable.const_inf AeMeasurable.constInf
+theorem AEMeasurable.const_inf (hf : AEMeasurable f μ) (c : M) :
+    AEMeasurable (fun x => c ⊓ f x) μ :=
+  (HasMeasurableInf.measurable_const_inf c).comp_aemeasurable hf
+#align ae_measurable.const_inf AEMeasurable.const_inf
 
 @[measurability]
 theorem Measurable.inf_const (hf : Measurable f) (c : M) : Measurable fun x => f x ⊓ c :=
@@ -183,9 +186,10 @@ theorem Measurable.inf_const (hf : Measurable f) (c : M) : Measurable fun x => f
 #align measurable.inf_const Measurable.inf_const
 
 @[measurability]
-theorem AeMeasurable.infConst (hf : AeMeasurable f μ) (c : M) : AeMeasurable (fun x => f x ⊓ c) μ :=
-  (measurable_inf_const c).compAeMeasurable hf
-#align ae_measurable.inf_const AeMeasurable.infConst
+theorem AEMeasurable.inf_const (hf : AEMeasurable f μ) (c : M) :
+    AEMeasurable (fun x => f x ⊓ c) μ :=
+  (measurable_inf_const c).comp_aemeasurable hf
+#align ae_measurable.inf_const AEMeasurable.inf_const
 
 end MeasurableInf
 
@@ -204,16 +208,16 @@ theorem Measurable.inf (hf : Measurable f) (hg : Measurable g) : Measurable fun
 #align measurable.inf Measurable.inf
 
 @[measurability]
-theorem AeMeasurable.inf' (hf : AeMeasurable f μ) (hg : AeMeasurable g μ) :
-    AeMeasurable (f ⊓ g) μ :=
-  measurable_inf.compAeMeasurable (hf.prod_mk hg)
-#align ae_measurable.inf' AeMeasurable.inf'
+theorem AEMeasurable.inf' (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
+    AEMeasurable (f ⊓ g) μ :=
+  measurable_inf.comp_aemeasurable (hf.prod_mk hg)
+#align ae_measurable.inf' AEMeasurable.inf'
 
 @[measurability]
-theorem AeMeasurable.inf (hf : AeMeasurable f μ) (hg : AeMeasurable g μ) :
-    AeMeasurable (fun a => f a ⊓ g a) μ :=
-  measurable_inf.compAeMeasurable (hf.prod_mk hg)
-#align ae_measurable.inf AeMeasurable.inf
+theorem AEMeasurable.inf (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) :
+    AEMeasurable (fun a => f a ⊓ g a) μ :=
+  measurable_inf.comp_aemeasurable (hf.prod_mk hg)
+#align ae_measurable.inf AEMeasurable.inf
 
 omit m
 
Diff
@@ -37,14 +37,14 @@ open MeasureTheory
 
 /-- We say that a type `has_measurable_sup` if `((⊔) c)` and `(⊔ c)` are measurable functions.
 For a typeclass assuming measurability of `uncurry (⊔)` see `has_measurable_sup₂`. -/
-class HasMeasurableSup (M : Type _) [MeasurableSpace M] [HasSup M] : Prop where
+class HasMeasurableSup (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
   measurable_const_sup : ∀ c : M, Measurable ((· ⊔ ·) c)
   measurable_sup_const : ∀ c : M, Measurable (· ⊔ c)
 #align has_measurable_sup HasMeasurableSup
 
 /-- We say that a type `has_measurable_sup₂` if `uncurry (⊔)` is a measurable functions.
 For a typeclass assuming measurability of `((⊔) c)` and `(⊔ c)` see `has_measurable_sup`. -/
-class HasMeasurableSup₂ (M : Type _) [MeasurableSpace M] [HasSup M] : Prop where
+class HasMeasurableSup₂ (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
   measurable_sup : Measurable fun p : M × M => p.1 ⊔ p.2
 #align has_measurable_sup₂ HasMeasurableSup₂
 
@@ -54,14 +54,14 @@ export HasMeasurableSup (measurable_const_sup measurable_sup_const)
 
 /-- We say that a type `has_measurable_inf` if `((⊓) c)` and `(⊓ c)` are measurable functions.
 For a typeclass assuming measurability of `uncurry (⊓)` see `has_measurable_inf₂`. -/
-class HasMeasurableInf (M : Type _) [MeasurableSpace M] [HasInf M] : Prop where
+class HasMeasurableInf (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
   measurable_const_inf : ∀ c : M, Measurable ((· ⊓ ·) c)
   measurable_inf_const : ∀ c : M, Measurable (· ⊓ c)
 #align has_measurable_inf HasMeasurableInf
 
 /-- We say that a type `has_measurable_inf₂` if `uncurry (⊔)` is a measurable functions.
 For a typeclass assuming measurability of `((⊔) c)` and `(⊔ c)` see `has_measurable_inf`. -/
-class HasMeasurableInf₂ (M : Type _) [MeasurableSpace M] [HasInf M] : Prop where
+class HasMeasurableInf₂ (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
   measurable_inf : Measurable fun p : M × M => p.1 ⊓ p.2
 #align has_measurable_inf₂ HasMeasurableInf₂
 
@@ -73,16 +73,16 @@ variable {M : Type _} [MeasurableSpace M]
 
 section OrderDual
 
-instance (priority := 100) [HasInf M] [HasMeasurableInf M] : HasMeasurableSup Mᵒᵈ :=
+instance (priority := 100) [Inf M] [HasMeasurableInf M] : HasMeasurableSup Mᵒᵈ :=
   ⟨@measurable_const_inf M _ _ _, @measurable_inf_const M _ _ _⟩
 
-instance (priority := 100) [HasSup M] [HasMeasurableSup M] : HasMeasurableInf Mᵒᵈ :=
+instance (priority := 100) [Sup M] [HasMeasurableSup M] : HasMeasurableInf Mᵒᵈ :=
   ⟨@measurable_const_sup M _ _ _, @measurable_sup_const M _ _ _⟩
 
-instance (priority := 100) [HasInf M] [HasMeasurableInf₂ M] : HasMeasurableSup₂ Mᵒᵈ :=
+instance (priority := 100) [Inf M] [HasMeasurableInf₂ M] : HasMeasurableSup₂ Mᵒᵈ :=
   ⟨@measurable_inf M _ _ _⟩
 
-instance (priority := 100) [HasSup M] [HasMeasurableSup₂ M] : HasMeasurableInf₂ Mᵒᵈ :=
+instance (priority := 100) [Sup M] [HasMeasurableSup₂ M] : HasMeasurableInf₂ Mᵒᵈ :=
   ⟨@measurable_sup M _ _ _⟩
 
 end OrderDual
@@ -93,7 +93,7 @@ include m
 
 section Sup
 
-variable [HasSup M]
+variable [Sup M]
 
 section MeasurableSup
 
@@ -161,7 +161,7 @@ end Sup
 
 section Inf
 
-variable [HasInf M]
+variable [Inf M]
 
 section MeasurableInf
 

Changes in mathlib4

mathlib3
mathlib4
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -34,7 +34,7 @@ open MeasureTheory
 
 /-- We say that a type has `MeasurableSup` if `(c ⊔ ·)` and `(· ⊔ c)` are measurable functions.
 For a typeclass assuming measurability of `uncurry (· ⊔ ·)` see `MeasurableSup₂`. -/
-class MeasurableSup (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
+class MeasurableSup (M : Type*) [MeasurableSpace M] [Sup M] : Prop where
   measurable_const_sup : ∀ c : M, Measurable (c ⊔ ·)
   measurable_sup_const : ∀ c : M, Measurable (· ⊔ c)
 #align has_measurable_sup MeasurableSup
@@ -43,7 +43,7 @@ class MeasurableSup (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
 
 /-- We say that a type has `MeasurableSup₂` if `uncurry (· ⊔ ·)` is a measurable functions.
 For a typeclass assuming measurability of `(c ⊔ ·)` and `(· ⊔ c)` see `MeasurableSup`. -/
-class MeasurableSup₂ (M : Type _) [MeasurableSpace M] [Sup M] : Prop where
+class MeasurableSup₂ (M : Type*) [MeasurableSpace M] [Sup M] : Prop where
   measurable_sup : Measurable fun p : M × M => p.1 ⊔ p.2
 #align has_measurable_sup₂ MeasurableSup₂
 #align has_measurable_sup₂.measurable_sup MeasurableSup₂.measurable_sup
@@ -54,7 +54,7 @@ export MeasurableSup (measurable_const_sup measurable_sup_const)
 
 /-- We say that a type has `MeasurableInf` if `(c ⊓ ·)` and `(· ⊓ c)` are measurable functions.
 For a typeclass assuming measurability of `uncurry (· ⊓ ·)` see `MeasurableInf₂`. -/
-class MeasurableInf (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
+class MeasurableInf (M : Type*) [MeasurableSpace M] [Inf M] : Prop where
   measurable_const_inf : ∀ c : M, Measurable (c ⊓ ·)
   measurable_inf_const : ∀ c : M, Measurable (· ⊓ c)
 #align has_measurable_inf MeasurableInf
@@ -63,7 +63,7 @@ class MeasurableInf (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
 
 /-- We say that a type has `MeasurableInf₂` if `uncurry (· ⊓ ·)` is a measurable functions.
 For a typeclass assuming measurability of `(c ⊓ ·)` and `(· ⊓ c)` see `MeasurableInf`. -/
-class MeasurableInf₂ (M : Type _) [MeasurableSpace M] [Inf M] : Prop where
+class MeasurableInf₂ (M : Type*) [MeasurableSpace M] [Inf M] : Prop where
   measurable_inf : Measurable fun p : M × M => p.1 ⊓ p.2
 #align has_measurable_inf₂ MeasurableInf₂
 #align has_measurable_inf₂.measurable_inf MeasurableInf₂.measurable_inf
@@ -72,7 +72,7 @@ export MeasurableInf₂ (measurable_inf)
 
 export MeasurableInf (measurable_const_inf measurable_inf_const)
 
-variable {M : Type _} [MeasurableSpace M]
+variable {M : Type*} [MeasurableSpace M]
 
 section OrderDual
 
@@ -98,7 +98,7 @@ instance (priority := 100) OrderDual.instMeasurableInf₂ [Sup M] [MeasurableSup
 
 end OrderDual
 
-variable {α : Type _} {m : MeasurableSpace α} {μ : Measure α} {f g : α → M}
+variable {α : Type*} {m : MeasurableSpace α} {μ : Measure α} {f g : α → M}
 
 section Sup
 
@@ -236,10 +236,10 @@ section SemilatticeSup
 
 open Finset
 
-variable {δ : Type _} [MeasurableSpace δ] [SemilatticeSup α] [MeasurableSup₂ α]
+variable {δ : Type*} [MeasurableSpace δ] [SemilatticeSup α] [MeasurableSup₂ α]
 
 @[measurability]
-theorem Finset.measurable_sup' {ι : Type _} {s : Finset ι} (hs : s.Nonempty) {f : ι → δ → α}
+theorem Finset.measurable_sup' {ι : Type*} {s : Finset ι} (hs : s.Nonempty) {f : ι → δ → α}
     (hf : ∀ n ∈ s, Measurable (f n)) : Measurable (s.sup' hs f) :=
   Finset.sup'_induction hs _ (fun _f hf _g hg => hf.sup hg) fun n hn => hf n hn
 #align finset.measurable_sup' Finset.measurable_sup'
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,14 +2,11 @@
 Copyright (c) 2021 Rémy Degenne. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Rémy Degenne
-
-! This file was ported from Lean 3 source module measure_theory.lattice
-! leanprover-community/mathlib commit a95b442734d137aef46c1871e147089877fd0f62
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.MeasureTheory.Measure.AEMeasurable
 
+#align_import measure_theory.lattice from "leanprover-community/mathlib"@"a95b442734d137aef46c1871e147089877fd0f62"
+
 /-!
 # Typeclasses for measurability of lattice operations
 
feat: port MeasureTheory.Lattice (#3824)

Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: MonadMaverick <MonadMaverick@pm.me>

Dependencies 10 + 610

611 files ported (98.4%)
272326 lines ported (98.1%)
Show graph

The unported dependencies are

The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file