analysis.convex.simplicial_complex.basic ⟷ Mathlib.Analysis.Convex.SimplicialComplex.Basic

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)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -133,8 +133,8 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
 #print Geometry.SimplicialComplex.ofErase /-
 /-- Construct a simplicial complex by removing the empty face for you. -/
 @[simps]
Diff
@@ -207,7 +207,7 @@ theorem vertex_mem_convexHull_iff (hx : x ∈ K.vertices) (hs : s ∈ K.faces) :
   have h := K.inter_subset_convex_hull hx hs ⟨by simp, h⟩
   by_contra H
   rwa [← coe_inter, Finset.disjoint_iff_inter_eq_empty.1 (Finset.disjoint_singleton_right.2 H).symm,
-    coe_empty, convexHull_empty] at h 
+    coe_empty, convexHull_empty] at h
 #align geometry.simplicial_complex.vertex_mem_convex_hull_iff Geometry.SimplicialComplex.vertex_mem_convexHull_iff
 -/
 
@@ -248,12 +248,12 @@ theorem facets_subset : K.facets βŠ† K.faces := fun s hs => hs.1
 theorem not_facet_iff_subface (hs : s ∈ K.faces) : s βˆ‰ K.facets ↔ βˆƒ t, t ∈ K.faces ∧ s βŠ‚ t :=
   by
   refine' ⟨fun hs' : ¬(_ ∧ _) => _, _⟩
-  Β· push_neg at hs' 
+  Β· push_neg at hs'
     obtain ⟨t, ht⟩ := hs' hs
     exact ⟨t, ht.1, ⟨ht.2.1, fun hts => ht.2.2 (subset.antisymm ht.2.1 hts)⟩⟩
   · rintro ⟨t, ht⟩ ⟨hs, hs'⟩
     have := hs' ht.1 ht.2.1
-    rw [this] at ht 
+    rw [this] at ht
     exact ht.2.2 (subset.refl t)
 #align geometry.simplicial_complex.not_facet_iff_subface Geometry.SimplicialComplex.not_facet_iff_subface
 -/
Diff
@@ -119,7 +119,17 @@ on `π•œ` means the only choice of `u` is `s ∩ t` (but it's hard to prove). -/
 theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
     Disjoint (convexHull π•œ (s : Set E)) (convexHull π•œ ↑t) ∨
       βˆƒ u ∈ K.faces, convexHull π•œ (s : Set E) ∩ convexHull π•œ ↑t = convexHull π•œ ↑u :=
-  by classical
+  by
+  classical
+  by_contra! h
+  refine'
+    h.2 (s ∩ t)
+      (K.down_closed hs (inter_subset_left _ _) fun hst =>
+        h.1 <| disjoint_iff_inf_le.mpr <| (K.inter_subset_convex_hull hs ht).trans _)
+      _
+  Β· rw [← coe_inter, hst, coe_empty, convexHull_empty]
+    rfl
+  Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 -/
 
@@ -194,6 +204,10 @@ theorem vertex_mem_convexHull_iff (hx : x ∈ K.vertices) (hs : s ∈ K.faces) :
   by
   refine' ⟨fun h => _, fun h => subset_convexHull _ _ h⟩
   classical
+  have h := K.inter_subset_convex_hull hx hs ⟨by simp, h⟩
+  by_contra H
+  rwa [← coe_inter, Finset.disjoint_iff_inter_eq_empty.1 (Finset.disjoint_singleton_right.2 H).symm,
+    coe_empty, convexHull_empty] at h 
 #align geometry.simplicial_complex.vertex_mem_convex_hull_iff Geometry.SimplicialComplex.vertex_mem_convexHull_iff
 -/
 
Diff
@@ -119,17 +119,7 @@ on `π•œ` means the only choice of `u` is `s ∩ t` (but it's hard to prove). -/
 theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
     Disjoint (convexHull π•œ (s : Set E)) (convexHull π•œ ↑t) ∨
       βˆƒ u ∈ K.faces, convexHull π•œ (s : Set E) ∩ convexHull π•œ ↑t = convexHull π•œ ↑u :=
-  by
-  classical
-  by_contra! h
-  refine'
-    h.2 (s ∩ t)
-      (K.down_closed hs (inter_subset_left _ _) fun hst =>
-        h.1 <| disjoint_iff_inf_le.mpr <| (K.inter_subset_convex_hull hs ht).trans _)
-      _
-  Β· rw [← coe_inter, hst, coe_empty, convexHull_empty]
-    rfl
-  Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
+  by classical
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 -/
 
@@ -204,10 +194,6 @@ theorem vertex_mem_convexHull_iff (hx : x ∈ K.vertices) (hs : s ∈ K.faces) :
   by
   refine' ⟨fun h => _, fun h => subset_convexHull _ _ h⟩
   classical
-  have h := K.inter_subset_convex_hull hx hs ⟨by simp, h⟩
-  by_contra H
-  rwa [← coe_inter, Finset.disjoint_iff_inter_eq_empty.1 (Finset.disjoint_singleton_right.2 H).symm,
-    coe_empty, convexHull_empty] at h 
 #align geometry.simplicial_complex.vertex_mem_convex_hull_iff Geometry.SimplicialComplex.vertex_mem_convexHull_iff
 -/
 
Diff
@@ -121,7 +121,7 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
       βˆƒ u ∈ K.faces, convexHull π•œ (s : Set E) ∩ convexHull π•œ ↑t = convexHull π•œ ↑u :=
   by
   classical
-  by_contra' h
+  by_contra! h
   refine'
     h.2 (s ∩ t)
       (K.down_closed hs (inter_subset_left _ _) fun hst =>
Diff
@@ -3,8 +3,8 @@ Copyright (c) 2021 YaΓ«l Dillies, Bhavik Mehta. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: YaΓ«l Dillies, Bhavik Mehta
 -/
-import Mathbin.Analysis.Convex.Hull
-import Mathbin.LinearAlgebra.AffineSpace.Independent
+import Analysis.Convex.Hull
+import LinearAlgebra.AffineSpace.Independent
 
 #align_import analysis.convex.simplicial_complex.basic from "leanprover-community/mathlib"@"9d2f0748e6c50d7a2657c564b1ff2c695b39148d"
 
@@ -133,8 +133,8 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
 #print Geometry.SimplicialComplex.ofErase /-
 /-- Construct a simplicial complex by removing the empty face for you. -/
 @[simps]
Diff
@@ -2,15 +2,12 @@
 Copyright (c) 2021 YaΓ«l Dillies, Bhavik Mehta. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: YaΓ«l Dillies, Bhavik Mehta
-
-! This file was ported from Lean 3 source module analysis.convex.simplicial_complex.basic
-! leanprover-community/mathlib commit 9d2f0748e6c50d7a2657c564b1ff2c695b39148d
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Analysis.Convex.Hull
 import Mathbin.LinearAlgebra.AffineSpace.Independent
 
+#align_import analysis.convex.simplicial_complex.basic from "leanprover-community/mathlib"@"9d2f0748e6c50d7a2657c564b1ff2c695b39148d"
+
 /-!
 # Simplicial complexes
 
@@ -136,8 +133,8 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
 #print Geometry.SimplicialComplex.ofErase /-
 /-- Construct a simplicial complex by removing the empty face for you. -/
 @[simps]
Diff
@@ -106,13 +106,16 @@ protected theorem subset_space (hs : s ∈ K.faces) : (s : Set E) βŠ† K.space :=
 #align geometry.simplicial_complex.subset_space Geometry.SimplicialComplex.subset_space
 -/
 
+#print Geometry.SimplicialComplex.convexHull_inter_convexHull /-
 theorem convexHull_inter_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
     convexHull π•œ ↑s ∩ convexHull π•œ ↑t = convexHull π•œ (s ∩ t : Set E) :=
   (K.inter_subset_convexHull hs ht).antisymm <|
     subset_inter (convexHull_mono <| Set.inter_subset_left _ _) <|
       convexHull_mono <| Set.inter_subset_right _ _
 #align geometry.simplicial_complex.convex_hull_inter_convex_hull Geometry.SimplicialComplex.convexHull_inter_convexHull
+-/
 
+#print Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull /-
 /-- The conclusion is the usual meaning of "glue nicely" in textbooks. It turns out to be quite
 unusable, as it's about faces as sets in space rather than simplices. Further,  additional structure
 on `π•œ` means the only choice of `u` is `s ∩ t` (but it's hard to prove). -/
@@ -131,9 +134,11 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
     rfl
   Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
+-/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
+#print Geometry.SimplicialComplex.ofErase /-
 /-- Construct a simplicial complex by removing the empty face for you. -/
 @[simps]
 def ofErase (faces : Set (Finset E))
@@ -149,6 +154,7 @@ def ofErase (faces : Set (Finset E))
   down_closed s t hs hts ht := ⟨down_closed _ hs.1 _ hts, ht⟩
   inter_subset_convexHull s t hs ht := inter_subset_convex_hull _ hs.1 _ ht.1
 #align geometry.simplicial_complex.of_erase Geometry.SimplicialComplex.ofErase
+-/
 
 #print Geometry.SimplicialComplex.ofSubcomplex /-
 /-- Construct a simplicial complex as a subset of a given simplicial complex. -/
Diff
@@ -132,8 +132,8 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
   Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
 /-- Construct a simplicial complex by removing the empty face for you. -/
 @[simps]
 def ofErase (faces : Set (Finset E))
Diff
@@ -121,15 +121,15 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
       βˆƒ u ∈ K.faces, convexHull π•œ (s : Set E) ∩ convexHull π•œ ↑t = convexHull π•œ ↑u :=
   by
   classical
-    by_contra' h
-    refine'
-      h.2 (s ∩ t)
-        (K.down_closed hs (inter_subset_left _ _) fun hst =>
-          h.1 <| disjoint_iff_inf_le.mpr <| (K.inter_subset_convex_hull hs ht).trans _)
-        _
-    Β· rw [← coe_inter, hst, coe_empty, convexHull_empty]
-      rfl
-    Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
+  by_contra' h
+  refine'
+    h.2 (s ∩ t)
+      (K.down_closed hs (inter_subset_left _ _) fun hst =>
+        h.1 <| disjoint_iff_inf_le.mpr <| (K.inter_subset_convex_hull hs ht).trans _)
+      _
+  Β· rw [← coe_inter, hst, coe_empty, convexHull_empty]
+    rfl
+  Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
@@ -169,7 +169,7 @@ def ofSubcomplex (K : SimplicialComplex π•œ E) (faces : Set (Finset E)) (subset
 #print Geometry.SimplicialComplex.vertices /-
 /-- The vertices of a simplicial complex are its zero dimensional faces. -/
 def vertices (K : SimplicialComplex π•œ E) : Set E :=
-  { x | {x} ∈ K.faces }
+  {x | {x} ∈ K.faces}
 #align geometry.simplicial_complex.vertices Geometry.SimplicialComplex.vertices
 -/
 
@@ -201,11 +201,10 @@ theorem vertex_mem_convexHull_iff (hx : x ∈ K.vertices) (hs : s ∈ K.faces) :
   by
   refine' ⟨fun h => _, fun h => subset_convexHull _ _ h⟩
   classical
-    have h := K.inter_subset_convex_hull hx hs ⟨by simp, h⟩
-    by_contra H
-    rwa [← coe_inter,
-      Finset.disjoint_iff_inter_eq_empty.1 (Finset.disjoint_singleton_right.2 H).symm, coe_empty,
-      convexHull_empty] at h 
+  have h := K.inter_subset_convex_hull hx hs ⟨by simp, h⟩
+  by_contra H
+  rwa [← coe_inter, Finset.disjoint_iff_inter_eq_empty.1 (Finset.disjoint_singleton_right.2 H).symm,
+    coe_empty, convexHull_empty] at h 
 #align geometry.simplicial_complex.vertex_mem_convex_hull_iff Geometry.SimplicialComplex.vertex_mem_convexHull_iff
 -/
 
@@ -227,7 +226,7 @@ theorem face_subset_face_iff (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
 #print Geometry.SimplicialComplex.facets /-
 /-- A facet of a simplicial complex is a maximal face. -/
 def facets (K : SimplicialComplex π•œ E) : Set (Finset E) :=
-  { s ∈ K.faces | βˆ€ ⦃t⦄, t ∈ K.faces β†’ s βŠ† t β†’ s = t }
+  {s ∈ K.faces | βˆ€ ⦃t⦄, t ∈ K.faces β†’ s βŠ† t β†’ s = t}
 #align geometry.simplicial_complex.facets Geometry.SimplicialComplex.facets
 -/
 
@@ -246,7 +245,7 @@ theorem facets_subset : K.facets βŠ† K.faces := fun s hs => hs.1
 theorem not_facet_iff_subface (hs : s ∈ K.faces) : s βˆ‰ K.facets ↔ βˆƒ t, t ∈ K.faces ∧ s βŠ‚ t :=
   by
   refine' ⟨fun hs' : ¬(_ ∧ _) => _, _⟩
-  Β· push_neg  at hs' 
+  Β· push_neg at hs' 
     obtain ⟨t, ht⟩ := hs' hs
     exact ⟨t, ht.1, ⟨ht.2.1, fun hts => ht.2.2 (subset.antisymm ht.2.1 hts)⟩⟩
   · rintro ⟨t, ht⟩ ⟨hs, hs'⟩
Diff
@@ -205,7 +205,7 @@ theorem vertex_mem_convexHull_iff (hx : x ∈ K.vertices) (hs : s ∈ K.faces) :
     by_contra H
     rwa [← coe_inter,
       Finset.disjoint_iff_inter_eq_empty.1 (Finset.disjoint_singleton_right.2 H).symm, coe_empty,
-      convexHull_empty] at h
+      convexHull_empty] at h 
 #align geometry.simplicial_complex.vertex_mem_convex_hull_iff Geometry.SimplicialComplex.vertex_mem_convexHull_iff
 -/
 
@@ -246,12 +246,12 @@ theorem facets_subset : K.facets βŠ† K.faces := fun s hs => hs.1
 theorem not_facet_iff_subface (hs : s ∈ K.faces) : s βˆ‰ K.facets ↔ βˆƒ t, t ∈ K.faces ∧ s βŠ‚ t :=
   by
   refine' ⟨fun hs' : ¬(_ ∧ _) => _, _⟩
-  Β· push_neg  at hs'
+  Β· push_neg  at hs' 
     obtain ⟨t, ht⟩ := hs' hs
     exact ⟨t, ht.1, ⟨ht.2.1, fun hts => ht.2.2 (subset.antisymm ht.2.1 hts)⟩⟩
   · rintro ⟨t, ht⟩ ⟨hs, hs'⟩
     have := hs' ht.1 ht.2.1
-    rw [this] at ht
+    rw [this] at ht 
     exact ht.2.2 (subset.refl t)
 #align geometry.simplicial_complex.not_facet_iff_subface Geometry.SimplicialComplex.not_facet_iff_subface
 -/
Diff
@@ -106,9 +106,6 @@ protected theorem subset_space (hs : s ∈ K.faces) : (s : Set E) βŠ† K.space :=
 #align geometry.simplicial_complex.subset_space Geometry.SimplicialComplex.subset_space
 -/
 
-/- warning: geometry.simplicial_complex.convex_hull_inter_convex_hull -> Geometry.SimplicialComplex.convexHull_inter_convexHull is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.convex_hull_inter_convex_hull Geometry.SimplicialComplex.convexHull_inter_convexHullβ‚“'. -/
 theorem convexHull_inter_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
     convexHull π•œ ↑s ∩ convexHull π•œ ↑t = convexHull π•œ (s ∩ t : Set E) :=
   (K.inter_subset_convexHull hs ht).antisymm <|
@@ -116,9 +113,6 @@ theorem convexHull_inter_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
       convexHull_mono <| Set.inter_subset_right _ _
 #align geometry.simplicial_complex.convex_hull_inter_convex_hull Geometry.SimplicialComplex.convexHull_inter_convexHull
 
-/- warning: geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull -> Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHullβ‚“'. -/
 /-- The conclusion is the usual meaning of "glue nicely" in textbooks. It turns out to be quite
 unusable, as it's about faces as sets in space rather than simplices. Further,  additional structure
 on `π•œ` means the only choice of `u` is `s ∩ t` (but it's hard to prove). -/
@@ -138,9 +132,6 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
     Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 
-/- warning: geometry.simplicial_complex.of_erase -> Geometry.SimplicialComplex.ofErase is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.of_erase Geometry.SimplicialComplex.ofEraseβ‚“'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
 /-- Construct a simplicial complex by removing the empty face for you. -/
Diff
@@ -107,10 +107,7 @@ protected theorem subset_space (hs : s ∈ K.faces) : (s : Set E) βŠ† K.space :=
 -/
 
 /- warning: geometry.simplicial_complex.convex_hull_inter_convex_hull -> Geometry.SimplicialComplex.convexHull_inter_convexHull is a dubious translation:
-lean 3 declaration is
-  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (Ring.toSemiring.{u1} π•œ (OrderedRing.toRing.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] {K : Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3} {s : Finset.{u2} E} {t : Finset.{u2} E}, (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) t (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Eq.{succ u2} (Set.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))))
-but is expected to have type
-  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (OrderedSemiring.toSemiring.{u1} π•œ (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] {K : Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3} {s : Finset.{u2} E} {t : Finset.{u2} E}, (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) t (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Eq.{succ u2} (Set.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E s)) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E t))) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (Finset.toSet.{u2} E s) (Finset.toSet.{u2} E t))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.convex_hull_inter_convex_hull Geometry.SimplicialComplex.convexHull_inter_convexHullβ‚“'. -/
 theorem convexHull_inter_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
     convexHull π•œ ↑s ∩ convexHull π•œ ↑t = convexHull π•œ (s ∩ t : Set E) :=
@@ -120,10 +117,7 @@ theorem convexHull_inter_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
 #align geometry.simplicial_complex.convex_hull_inter_convex_hull Geometry.SimplicialComplex.convexHull_inter_convexHull
 
 /- warning: geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull -> Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull is a dubious translation:
-lean 3 declaration is
-  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (Ring.toSemiring.{u1} π•œ (OrderedRing.toRing.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] {K : Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3} {s : Finset.{u2} E} {t : Finset.{u2} E}, (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) t (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Or (Disjoint.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} E) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} E) (Set.booleanAlgebra.{u2} E))) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))) (Exists.{succ u2} (Finset.{u2} E) (fun (u : Finset.{u2} E) => Exists.{0} (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) u (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) (fun (H : Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) u (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) => Eq.{succ u2} (Set.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) u))))))
-but is expected to have type
-  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (OrderedSemiring.toSemiring.{u1} π•œ (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] {K : Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3} {s : Finset.{u2} E} {t : Finset.{u2} E}, (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) t (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Or (Disjoint.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E)))))) (BoundedOrder.toOrderBot.{u2} (Set.{u2} E) (Preorder.toLE.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E)))))))) (CompleteLattice.toBoundedOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E)))))) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E s)) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E t))) (Exists.{succ u2} (Finset.{u2} E) (fun (u : Finset.{u2} E) => And (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) u (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) (Eq.{succ u2} (Set.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E s)) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E t))) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E u))))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHullβ‚“'. -/
 /-- The conclusion is the usual meaning of "glue nicely" in textbooks. It turns out to be quite
 unusable, as it's about faces as sets in space rather than simplices. Further,  additional structure
@@ -145,10 +139,7 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 
 /- warning: geometry.simplicial_complex.of_erase -> Geometry.SimplicialComplex.ofErase is a dubious translation:
-lean 3 declaration is
-  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (Ring.toSemiring.{u1} π•œ (OrderedRing.toRing.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] (faces : Set.{u2} (Finset.{u2} E)), (forall (s : Finset.{u2} E), (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s faces) -> (AffineIndependent.{u1, u2, u2, u2} π•œ E E (OrderedRing.toRing.{u1} π•œ _inst_1) _inst_2 _inst_3 (addGroupIsAddTorsor.{u2} E (AddCommGroup.toAddGroup.{u2} E _inst_2)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) E (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) E (CoeTCβ‚“.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) E (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) E (coeSubtype.{succ u2} E (fun (x : E) => Membership.Mem.{u2, u2} E (Set.{u2} E) (Set.hasMem.{u2} E) x ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s))))))))) -> (forall (s : Finset.{u2} E), (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s faces) -> (forall (t : Finset.{u2} E), (HasSubset.Subset.{u2} (Finset.{u2} E) (Finset.hasSubset.{u2} E) t s) -> (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) t faces))) -> (forall (s : Finset.{u2} E), (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s faces) -> (forall (t : Finset.{u2} E), (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) t faces) -> (HasSubset.Subset.{u2} (Set.{u2} E) (Set.hasSubset.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t)))))) -> (Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3)
-but is expected to have type
-  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (OrderedSemiring.toSemiring.{u1} π•œ (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] (faces : Set.{u2} (Finset.{u2} E)), (forall (s : Finset.{u2} E), (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s faces) -> (AffineIndependent.{u1, u2, u2, u2} π•œ E E (OrderedRing.toRing.{u1} π•œ _inst_1) _inst_2 _inst_3 (addGroupIsAddTorsor.{u2} E (AddCommGroup.toAddGroup.{u2} E _inst_2)) (Subtype.{succ u2} E (fun (x : E) => Membership.mem.{u2, u2} E (Finset.{u2} E) (Finset.instMembershipFinset.{u2} E) x s)) (Subtype.val.{succ u2} E (fun (x : E) => Membership.mem.{u2, u2} E (Finset.{u2} E) (Finset.instMembershipFinset.{u2} E) x s)))) -> (forall (s : Finset.{u2} E), (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s faces) -> (forall (t : Finset.{u2} E), (HasSubset.Subset.{u2} (Finset.{u2} E) (Finset.instHasSubsetFinset.{u2} E) t s) -> (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) t faces))) -> (forall (s : Finset.{u2} E), (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s faces) -> (forall (t : Finset.{u2} E), (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) t faces) -> (HasSubset.Subset.{u2} (Set.{u2} E) (Set.instHasSubsetSet.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E s)) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E t))) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (Finset.toSet.{u2} E s) (Finset.toSet.{u2} E t)))))) -> (Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3)
+<too large>
 Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.of_erase Geometry.SimplicialComplex.ofEraseβ‚“'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
Diff
@@ -90,13 +90,13 @@ def space (K : SimplicialComplex π•œ E) : Set E :=
 
 #print Geometry.SimplicialComplex.mem_space_iff /-
 theorem mem_space_iff : x ∈ K.space ↔ βˆƒ s ∈ K.faces, x ∈ convexHull π•œ (s : Set E) :=
-  mem_unionα΅’β‚‚
+  mem_iUnionβ‚‚
 #align geometry.simplicial_complex.mem_space_iff Geometry.SimplicialComplex.mem_space_iff
 -/
 
 #print Geometry.SimplicialComplex.convexHull_subset_space /-
 theorem convexHull_subset_space (hs : s ∈ K.faces) : convexHull π•œ ↑s βŠ† K.space :=
-  subset_bunionα΅’_of_mem hs
+  subset_biUnion_of_mem hs
 #align geometry.simplicial_complex.convex_hull_subset_space Geometry.SimplicialComplex.convexHull_subset_space
 -/
 
@@ -209,7 +209,7 @@ theorem vertices_eq : K.vertices = ⋃ k ∈ K.faces, (k : Set E) :=
 
 #print Geometry.SimplicialComplex.vertices_subset_space /-
 theorem vertices_subset_space : K.vertices βŠ† K.space :=
-  vertices_eq.Subset.trans <| unionα΅’β‚‚_mono fun x hx => subset_convexHull π•œ x
+  vertices_eq.Subset.trans <| iUnionβ‚‚_mono fun x hx => subset_convexHull π•œ x
 #align geometry.simplicial_complex.vertices_subset_space Geometry.SimplicialComplex.vertices_subset_space
 -/
 
@@ -325,7 +325,7 @@ theorem faces_bot : (βŠ₯ : SimplicialComplex π•œ E).faces = βˆ… :=
 
 #print Geometry.SimplicialComplex.space_bot /-
 theorem space_bot : (βŠ₯ : SimplicialComplex π•œ E).space = βˆ… :=
-  Set.bunionα΅’_empty _
+  Set.biUnion_empty _
 #align geometry.simplicial_complex.space_bot Geometry.SimplicialComplex.space_bot
 -/
 
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: YaΓ«l Dillies, Bhavik Mehta
 
 ! This file was ported from Lean 3 source module analysis.convex.simplicial_complex.basic
-! leanprover-community/mathlib commit 70fd9563a21e7b963887c9360bd29b2393e6225a
+! leanprover-community/mathlib commit 9d2f0748e6c50d7a2657c564b1ff2c695b39148d
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -14,6 +14,9 @@ import Mathbin.LinearAlgebra.AffineSpace.Independent
 /-!
 # Simplicial complexes
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 In this file, we define simplicial complexes in `π•œ`-modules. A simplicial complex is a collection
 of simplices closed by inclusion (of vertices) and intersection (of underlying sets).
 
Diff
@@ -52,6 +52,7 @@ variable (π•œ E : Type _) {ΞΉ : Type _} [OrderedRing π•œ] [AddCommGroup E] [Mo
 
 namespace Geometry
 
+#print Geometry.SimplicialComplex /-
 -- TODO: update to new binder order? not sure what binder order is correct for `down_closed`.
 /-- A simplicial complex in a `π•œ`-module is a collection of simplices which glue nicely together.
 Note that the textbook meaning of "glue nicely" is given in
@@ -67,6 +68,7 @@ structure SimplicialComplex where
     βˆ€ {s t},
       s ∈ faces β†’ t ∈ faces β†’ convexHull π•œ ↑s ∩ convexHull π•œ ↑t βŠ† convexHull π•œ (s ∩ t : Set E)
 #align geometry.simplicial_complex Geometry.SimplicialComplex
+-/
 
 namespace SimplicialComplex
 
@@ -76,23 +78,37 @@ variable {π•œ E} {K : SimplicialComplex π•œ E} {s t : Finset E} {x : E}
 instance : Membership (Finset E) (SimplicialComplex π•œ E) :=
   ⟨fun s K => s ∈ K.faces⟩
 
+#print Geometry.SimplicialComplex.space /-
 /-- The underlying space of a simplicial complex is the union of its faces. -/
 def space (K : SimplicialComplex π•œ E) : Set E :=
   ⋃ s ∈ K.faces, convexHull π•œ (s : Set E)
 #align geometry.simplicial_complex.space Geometry.SimplicialComplex.space
+-/
 
+#print Geometry.SimplicialComplex.mem_space_iff /-
 theorem mem_space_iff : x ∈ K.space ↔ βˆƒ s ∈ K.faces, x ∈ convexHull π•œ (s : Set E) :=
   mem_unionα΅’β‚‚
 #align geometry.simplicial_complex.mem_space_iff Geometry.SimplicialComplex.mem_space_iff
+-/
 
+#print Geometry.SimplicialComplex.convexHull_subset_space /-
 theorem convexHull_subset_space (hs : s ∈ K.faces) : convexHull π•œ ↑s βŠ† K.space :=
   subset_bunionα΅’_of_mem hs
 #align geometry.simplicial_complex.convex_hull_subset_space Geometry.SimplicialComplex.convexHull_subset_space
+-/
 
+#print Geometry.SimplicialComplex.subset_space /-
 protected theorem subset_space (hs : s ∈ K.faces) : (s : Set E) βŠ† K.space :=
   (subset_convexHull π•œ _).trans <| convexHull_subset_space hs
 #align geometry.simplicial_complex.subset_space Geometry.SimplicialComplex.subset_space
+-/
 
+/- warning: geometry.simplicial_complex.convex_hull_inter_convex_hull -> Geometry.SimplicialComplex.convexHull_inter_convexHull is a dubious translation:
+lean 3 declaration is
+  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (Ring.toSemiring.{u1} π•œ (OrderedRing.toRing.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] {K : Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3} {s : Finset.{u2} E} {t : Finset.{u2} E}, (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) t (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Eq.{succ u2} (Set.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))))
+but is expected to have type
+  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (OrderedSemiring.toSemiring.{u1} π•œ (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] {K : Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3} {s : Finset.{u2} E} {t : Finset.{u2} E}, (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) t (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Eq.{succ u2} (Set.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E s)) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E t))) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (Finset.toSet.{u2} E s) (Finset.toSet.{u2} E t))))
+Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.convex_hull_inter_convex_hull Geometry.SimplicialComplex.convexHull_inter_convexHullβ‚“'. -/
 theorem convexHull_inter_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
     convexHull π•œ ↑s ∩ convexHull π•œ ↑t = convexHull π•œ (s ∩ t : Set E) :=
   (K.inter_subset_convexHull hs ht).antisymm <|
@@ -100,6 +116,12 @@ theorem convexHull_inter_convexHull (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
       convexHull_mono <| Set.inter_subset_right _ _
 #align geometry.simplicial_complex.convex_hull_inter_convex_hull Geometry.SimplicialComplex.convexHull_inter_convexHull
 
+/- warning: geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull -> Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull is a dubious translation:
+lean 3 declaration is
+  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (Ring.toSemiring.{u1} π•œ (OrderedRing.toRing.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] {K : Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3} {s : Finset.{u2} E} {t : Finset.{u2} E}, (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) t (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Or (Disjoint.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} E) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} E) (Set.booleanAlgebra.{u2} E))) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))) (Exists.{succ u2} (Finset.{u2} E) (fun (u : Finset.{u2} E) => Exists.{0} (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) u (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) (fun (H : Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) u (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) => Eq.{succ u2} (Set.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) u))))))
+but is expected to have type
+  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (OrderedSemiring.toSemiring.{u1} π•œ (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] {K : Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3} {s : Finset.{u2} E} {t : Finset.{u2} E}, (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) t (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) -> (Or (Disjoint.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E)))))) (BoundedOrder.toOrderBot.{u2} (Set.{u2} E) (Preorder.toLE.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E)))))))) (CompleteLattice.toBoundedOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E)))))) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E s)) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E t))) (Exists.{succ u2} (Finset.{u2} E) (fun (u : Finset.{u2} E) => And (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) u (Geometry.SimplicialComplex.faces.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3 K)) (Eq.{succ u2} (Set.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E s)) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E t))) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E u))))))
+Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHullβ‚“'. -/
 /-- The conclusion is the usual meaning of "glue nicely" in textbooks. It turns out to be quite
 unusable, as it's about faces as sets in space rather than simplices. Further,  additional structure
 on `π•œ` means the only choice of `u` is `s ∩ t` (but it's hard to prove). -/
@@ -119,6 +141,12 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
     Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 
+/- warning: geometry.simplicial_complex.of_erase -> Geometry.SimplicialComplex.ofErase is a dubious translation:
+lean 3 declaration is
+  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (Ring.toSemiring.{u1} π•œ (OrderedRing.toRing.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] (faces : Set.{u2} (Finset.{u2} E)), (forall (s : Finset.{u2} E), (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s faces) -> (AffineIndependent.{u1, u2, u2, u2} π•œ E E (OrderedRing.toRing.{u1} π•œ _inst_1) _inst_2 _inst_3 (addGroupIsAddTorsor.{u2} E (AddCommGroup.toAddGroup.{u2} E _inst_2)) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) E (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) E (CoeTCβ‚“.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) E (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Set.{u2} E) Type.{u2} (Set.hasCoeToSort.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) E (coeSubtype.{succ u2} E (fun (x : E) => Membership.Mem.{u2, u2} E (Set.{u2} E) (Set.hasMem.{u2} E) x ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s))))))))) -> (forall (s : Finset.{u2} E), (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s faces) -> (forall (t : Finset.{u2} E), (HasSubset.Subset.{u2} (Finset.{u2} E) (Finset.hasSubset.{u2} E) t s) -> (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) t faces))) -> (forall (s : Finset.{u2} E), (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) s faces) -> (forall (t : Finset.{u2} E), (Membership.Mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.hasMem.{u2} (Finset.{u2} E)) t faces) -> (HasSubset.Subset.{u2} (Set.{u2} E) (Set.hasSubset.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s)) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t))) (coeFn.{succ u2, succ u2} (ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (fun (_x : ClosureOperator.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) => (Set.{u2} E) -> (Set.{u2} E)) (ClosureOperator.hasCoeToFun.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.completeBooleanAlgebra.{u2} E)))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3) (Inter.inter.{u2} (Set.{u2} E) (Set.hasInter.{u2} E) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) s) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (Finset.{u2} E) (Set.{u2} E) (HasLiftT.mk.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (CoeTCβ‚“.coe.{succ u2, succ u2} (Finset.{u2} E) (Set.{u2} E) (Finset.Set.hasCoeT.{u2} E))) t)))))) -> (Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3)
+but is expected to have type
+  forall {π•œ : Type.{u1}} {E : Type.{u2}} [_inst_1 : OrderedRing.{u1} π•œ] [_inst_2 : AddCommGroup.{u2} E] [_inst_3 : Module.{u1, u2} π•œ E (OrderedSemiring.toSemiring.{u1} π•œ (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2)] (faces : Set.{u2} (Finset.{u2} E)), (forall (s : Finset.{u2} E), (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s faces) -> (AffineIndependent.{u1, u2, u2, u2} π•œ E E (OrderedRing.toRing.{u1} π•œ _inst_1) _inst_2 _inst_3 (addGroupIsAddTorsor.{u2} E (AddCommGroup.toAddGroup.{u2} E _inst_2)) (Subtype.{succ u2} E (fun (x : E) => Membership.mem.{u2, u2} E (Finset.{u2} E) (Finset.instMembershipFinset.{u2} E) x s)) (Subtype.val.{succ u2} E (fun (x : E) => Membership.mem.{u2, u2} E (Finset.{u2} E) (Finset.instMembershipFinset.{u2} E) x s)))) -> (forall (s : Finset.{u2} E), (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s faces) -> (forall (t : Finset.{u2} E), (HasSubset.Subset.{u2} (Finset.{u2} E) (Finset.instHasSubsetFinset.{u2} E) t s) -> (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) t faces))) -> (forall (s : Finset.{u2} E), (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) s faces) -> (forall (t : Finset.{u2} E), (Membership.mem.{u2, u2} (Finset.{u2} E) (Set.{u2} (Finset.{u2} E)) (Set.instMembershipSet.{u2} (Finset.{u2} E)) t faces) -> (HasSubset.Subset.{u2} (Set.{u2} E) (Set.instHasSubsetSet.{u2} E) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E s)) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Finset.toSet.{u2} E t))) (OrderHom.toFun.{u2, u2} (Set.{u2} E) (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (ClosureOperator.toOrderHom.{u2} (Set.{u2} E) (PartialOrder.toPreorder.{u2} (Set.{u2} E) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} E) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} E) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} E) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} E) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} E) (Set.instCompleteBooleanAlgebraSet.{u2} E))))))) (convexHull.{u1, u2} π•œ E (OrderedRing.toOrderedSemiring.{u1} π•œ _inst_1) (AddCommGroup.toAddCommMonoid.{u2} E _inst_2) _inst_3)) (Inter.inter.{u2} (Set.{u2} E) (Set.instInterSet.{u2} E) (Finset.toSet.{u2} E s) (Finset.toSet.{u2} E t)))))) -> (Geometry.SimplicialComplex.{u1, u2} π•œ E _inst_1 _inst_2 _inst_3)
+Case conversion may be inaccurate. Consider using '#align geometry.simplicial_complex.of_erase Geometry.SimplicialComplex.ofEraseβ‚“'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
 /-- Construct a simplicial complex by removing the empty face for you. -/
@@ -137,6 +165,7 @@ def ofErase (faces : Set (Finset E))
   inter_subset_convexHull s t hs ht := inter_subset_convex_hull _ hs.1 _ ht.1
 #align geometry.simplicial_complex.of_erase Geometry.SimplicialComplex.ofErase
 
+#print Geometry.SimplicialComplex.ofSubcomplex /-
 /-- Construct a simplicial complex as a subset of a given simplicial complex. -/
 @[simps]
 def ofSubcomplex (K : SimplicialComplex π•œ E) (faces : Set (Finset E)) (subset : faces βŠ† K.faces)
@@ -147,19 +176,25 @@ def ofSubcomplex (K : SimplicialComplex π•œ E) (faces : Set (Finset E)) (subset
     down_closed := fun s t hs hts _ => down_closed hs hts
     inter_subset_convexHull := fun s t hs ht => K.inter_subset_convexHull (subset hs) (subset ht) }
 #align geometry.simplicial_complex.of_subcomplex Geometry.SimplicialComplex.ofSubcomplex
+-/
 
 /-! ### Vertices -/
 
 
+#print Geometry.SimplicialComplex.vertices /-
 /-- The vertices of a simplicial complex are its zero dimensional faces. -/
 def vertices (K : SimplicialComplex π•œ E) : Set E :=
   { x | {x} ∈ K.faces }
 #align geometry.simplicial_complex.vertices Geometry.SimplicialComplex.vertices
+-/
 
+#print Geometry.SimplicialComplex.mem_vertices /-
 theorem mem_vertices : x ∈ K.vertices ↔ {x} ∈ K.faces :=
   Iff.rfl
 #align geometry.simplicial_complex.mem_vertices Geometry.SimplicialComplex.mem_vertices
+-/
 
+#print Geometry.SimplicialComplex.vertices_eq /-
 theorem vertices_eq : K.vertices = ⋃ k ∈ K.faces, (k : Set E) :=
   by
   ext x
@@ -167,11 +202,15 @@ theorem vertices_eq : K.vertices = ⋃ k ∈ K.faces, (k : Set E) :=
   obtain ⟨s, hs, hx⟩ := mem_Unionβ‚‚.1 h
   exact K.down_closed hs (Finset.singleton_subset_iff.2 <| mem_coe.1 hx) (singleton_ne_empty _)
 #align geometry.simplicial_complex.vertices_eq Geometry.SimplicialComplex.vertices_eq
+-/
 
+#print Geometry.SimplicialComplex.vertices_subset_space /-
 theorem vertices_subset_space : K.vertices βŠ† K.space :=
   vertices_eq.Subset.trans <| unionα΅’β‚‚_mono fun x hx => subset_convexHull π•œ x
 #align geometry.simplicial_complex.vertices_subset_space Geometry.SimplicialComplex.vertices_subset_space
+-/
 
+#print Geometry.SimplicialComplex.vertex_mem_convexHull_iff /-
 theorem vertex_mem_convexHull_iff (hx : x ∈ K.vertices) (hs : s ∈ K.faces) :
     x ∈ convexHull π•œ (s : Set E) ↔ x ∈ s :=
   by
@@ -183,7 +222,9 @@ theorem vertex_mem_convexHull_iff (hx : x ∈ K.vertices) (hs : s ∈ K.faces) :
       Finset.disjoint_iff_inter_eq_empty.1 (Finset.disjoint_singleton_right.2 H).symm, coe_empty,
       convexHull_empty] at h
 #align geometry.simplicial_complex.vertex_mem_convex_hull_iff Geometry.SimplicialComplex.vertex_mem_convexHull_iff
+-/
 
+#print Geometry.SimplicialComplex.face_subset_face_iff /-
 /-- A face is a subset of another one iff its vertices are.  -/
 theorem face_subset_face_iff (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
     convexHull π•œ (s : Set E) βŠ† convexHull π•œ ↑t ↔ s βŠ† t :=
@@ -193,22 +234,30 @@ theorem face_subset_face_iff (hs : s ∈ K.faces) (ht : t ∈ K.faces) :
       (h (subset_convexHull π•œ (↑s) hxs)),
     convexHull_mono⟩
 #align geometry.simplicial_complex.face_subset_face_iff Geometry.SimplicialComplex.face_subset_face_iff
+-/
 
 /-! ### Facets -/
 
 
+#print Geometry.SimplicialComplex.facets /-
 /-- A facet of a simplicial complex is a maximal face. -/
 def facets (K : SimplicialComplex π•œ E) : Set (Finset E) :=
   { s ∈ K.faces | βˆ€ ⦃t⦄, t ∈ K.faces β†’ s βŠ† t β†’ s = t }
 #align geometry.simplicial_complex.facets Geometry.SimplicialComplex.facets
+-/
 
+#print Geometry.SimplicialComplex.mem_facets /-
 theorem mem_facets : s ∈ K.facets ↔ s ∈ K.faces ∧ βˆ€ t ∈ K.faces, s βŠ† t β†’ s = t :=
   mem_sep_iff
 #align geometry.simplicial_complex.mem_facets Geometry.SimplicialComplex.mem_facets
+-/
 
+#print Geometry.SimplicialComplex.facets_subset /-
 theorem facets_subset : K.facets βŠ† K.faces := fun s hs => hs.1
 #align geometry.simplicial_complex.facets_subset Geometry.SimplicialComplex.facets_subset
+-/
 
+#print Geometry.SimplicialComplex.not_facet_iff_subface /-
 theorem not_facet_iff_subface (hs : s ∈ K.faces) : s βˆ‰ K.facets ↔ βˆƒ t, t ∈ K.faces ∧ s βŠ‚ t :=
   by
   refine' ⟨fun hs' : ¬(_ ∧ _) => _, _⟩
@@ -220,6 +269,7 @@ theorem not_facet_iff_subface (hs : s ∈ K.faces) : s βˆ‰ K.facets ↔ βˆƒ t, t
     rw [this] at ht
     exact ht.2.2 (subset.refl t)
 #align geometry.simplicial_complex.not_facet_iff_subface Geometry.SimplicialComplex.not_facet_iff_subface
+-/
 
 /-!
 ### The semilattice of simplicial complexes
@@ -264,17 +314,23 @@ instance : Inhabited (SimplicialComplex π•œ E) :=
 
 variable {π•œ E}
 
+#print Geometry.SimplicialComplex.faces_bot /-
 theorem faces_bot : (βŠ₯ : SimplicialComplex π•œ E).faces = βˆ… :=
   rfl
 #align geometry.simplicial_complex.faces_bot Geometry.SimplicialComplex.faces_bot
+-/
 
+#print Geometry.SimplicialComplex.space_bot /-
 theorem space_bot : (βŠ₯ : SimplicialComplex π•œ E).space = βˆ… :=
   Set.bunionα΅’_empty _
 #align geometry.simplicial_complex.space_bot Geometry.SimplicialComplex.space_bot
+-/
 
+#print Geometry.SimplicialComplex.facets_bot /-
 theorem facets_bot : (βŠ₯ : SimplicialComplex π•œ E).facets = βˆ… :=
   eq_empty_of_subset_empty facets_subset
 #align geometry.simplicial_complex.facets_bot Geometry.SimplicialComplex.facets_bot
+-/
 
 end SimplicialComplex
 
Diff
@@ -119,8 +119,8 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
     Β· rw [coe_inter, convex_hull_inter_convex_hull hs ht]
 #align geometry.simplicial_complex.disjoint_or_exists_inter_eq_convex_hull Geometry.SimplicialComplex.disjoint_or_exists_inter_eq_convexHull
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t Β«expr βŠ† Β» s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (s t «expr ∈ » faces) -/
 /-- Construct a simplicial complex by removing the empty face for you. -/
 @[simps]
 def ofErase (faces : Set (Finset E))
Diff
@@ -232,7 +232,7 @@ theorem not_facet_iff_subface (hs : s ∈ K.faces) : s βˆ‰ K.facets ↔ βˆƒ t, t
 variable (π•œ E)
 
 /-- The complex consisting of only the faces present in both of its arguments. -/
-instance : HasInf (SimplicialComplex π•œ E) :=
+instance : Inf (SimplicialComplex π•œ E) :=
   ⟨fun K L =>
     { faces := K.faces ∩ L.faces
       not_empty_mem := fun h => K.not_empty_mem (Set.inter_subset_left _ _ h)

Changes in mathlib4

mathlib3
mathlib4
chore(*): use βˆƒ x ∈ s, _ instead of βˆƒ (x) (_ : x ∈ s), _ (#9184)

Search for [βˆ€βˆƒ].*(_ and manually replace some occurrences with more readable versions. In case of βˆ€, the new expressions are defeq to the old ones. In case of βˆƒ, they differ by exists_prop.

In some rare cases, golf proofs that needed fixing.

Diff
@@ -79,8 +79,8 @@ def space (K : SimplicialComplex π•œ E) : Set E :=
 #align geometry.simplicial_complex.space Geometry.SimplicialComplex.space
 
 -- Porting note: Expanded `βˆƒ s ∈ K.faces` to get the type to match more closely with Lean 3
-theorem mem_space_iff : x ∈ K.space ↔ βˆƒ (s : _) (_ : s ∈ K.faces), x ∈ convexHull π•œ (s : Set E) :=
-  mem_iUnionβ‚‚
+theorem mem_space_iff : x ∈ K.space ↔ βˆƒ s ∈ K.faces, x ∈ convexHull π•œ (s : Set E) := by
+  simp [space]
 #align geometry.simplicial_complex.mem_space_iff Geometry.SimplicialComplex.mem_space_iff
 
 -- Porting note: Original proof was `:= subset_biUnion_of_mem hs`
@@ -118,8 +118,8 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
 /-- Construct a simplicial complex by removing the empty face for you. -/
 @[simps]
 def ofErase (faces : Set (Finset E)) (indep : βˆ€ s ∈ faces, AffineIndependent π•œ ((↑) : s β†’ E))
-    (down_closed : βˆ€ s ∈ faces, βˆ€ (t) (_ : t βŠ† s), t ∈ faces)
-    (inter_subset_convexHull : βˆ€ (s) (_ : s ∈ faces) (t) (_ : t ∈ faces),
+    (down_closed : βˆ€ s ∈ faces, βˆ€ t βŠ† s, t ∈ faces)
+    (inter_subset_convexHull : βˆ€α΅‰ (s ∈ faces) (t ∈ faces),
       convexHull π•œ ↑s ∩ convexHull π•œ ↑t βŠ† convexHull π•œ (s ∩ t : Set E)) :
     SimplicialComplex π•œ E where
   faces := faces \ {βˆ…}
chore: rename by_contra' to by_contra! (#8797)

To fit with the "please try harder" convention of ! tactics.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -107,7 +107,7 @@ theorem disjoint_or_exists_inter_eq_convexHull (hs : s ∈ K.faces) (ht : t ∈
     Disjoint (convexHull π•œ (s : Set E)) (convexHull π•œ ↑t) ∨
       βˆƒ u ∈ K.faces, convexHull π•œ (s : Set E) ∩ convexHull π•œ ↑t = convexHull π•œ ↑u := by
   classical
-  by_contra' h
+  by_contra! h
   refine' h.2 (s ∩ t) (K.down_closed hs (inter_subset_left _ _) fun hst => h.1 <|
     disjoint_iff_inf_le.mpr <| (K.inter_subset_convexHull hs ht).trans _) _
   Β· rw [← coe_inter, hst, coe_empty, convexHull_empty]
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
@@ -45,7 +45,7 @@ Simplicial complexes can be generalized to affine spaces once `ConvexHull` has b
 
 open Finset Set
 
-variable (π•œ E : Type _) {ΞΉ : Type _} [OrderedRing π•œ] [AddCommGroup E] [Module π•œ E]
+variable (π•œ E : Type*) {ΞΉ : Type*} [OrderedRing π•œ] [AddCommGroup E] [Module π•œ E]
 
 namespace Geometry
 
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,15 +2,12 @@
 Copyright (c) 2021 YaΓ«l Dillies, Bhavik Mehta. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: YaΓ«l Dillies, Bhavik Mehta
-
-! This file was ported from Lean 3 source module analysis.convex.simplicial_complex.basic
-! leanprover-community/mathlib commit 70fd9563a21e7b963887c9360bd29b2393e6225a
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Analysis.Convex.Hull
 import Mathlib.LinearAlgebra.AffineSpace.Independent
 
+#align_import analysis.convex.simplicial_complex.basic from "leanprover-community/mathlib"@"70fd9563a21e7b963887c9360bd29b2393e6225a"
+
 /-!
 # Simplicial complexes
 
chore: Rename to sSup/iSup (#3938)

As discussed on Zulip

Renames

  • supβ‚› β†’ sSup
  • infβ‚› β†’ sInf
  • supα΅’ β†’ iSup
  • infα΅’ β†’ iInf
  • bsupβ‚› β†’ bsSup
  • binfβ‚› β†’ bsInf
  • bsupα΅’ β†’ biSup
  • binfα΅’ β†’ biInf
  • csupβ‚› β†’ csSup
  • cinfβ‚› β†’ csInf
  • csupα΅’ β†’ ciSup
  • cinfα΅’ β†’ ciInf
  • unionβ‚› β†’ sUnion
  • interβ‚› β†’ sInter
  • unionα΅’ β†’ iUnion
  • interα΅’ β†’ iInter
  • bunionβ‚› β†’ bsUnion
  • binterβ‚› β†’ bsInter
  • bunionα΅’ β†’ biUnion
  • binterα΅’ β†’ biInter

Co-authored-by: Parcly Taxel <reddeloostw@gmail.com>

Diff
@@ -83,12 +83,12 @@ def space (K : SimplicialComplex π•œ E) : Set E :=
 
 -- Porting note: Expanded `βˆƒ s ∈ K.faces` to get the type to match more closely with Lean 3
 theorem mem_space_iff : x ∈ K.space ↔ βˆƒ (s : _) (_ : s ∈ K.faces), x ∈ convexHull π•œ (s : Set E) :=
-  mem_unionα΅’β‚‚
+  mem_iUnionβ‚‚
 #align geometry.simplicial_complex.mem_space_iff Geometry.SimplicialComplex.mem_space_iff
 
--- Porting note: Original proof was `:= subset_bunionα΅’_of_mem hs`
+-- Porting note: Original proof was `:= subset_biUnion_of_mem hs`
 theorem convexHull_subset_space (hs : s ∈ K.faces) : convexHull π•œ ↑s βŠ† K.space := by
-  convert subset_bunionα΅’_of_mem hs
+  convert subset_biUnion_of_mem hs
   rfl
 #align geometry.simplicial_complex.convex_hull_subset_space Geometry.SimplicialComplex.convexHull_subset_space
 
@@ -156,13 +156,13 @@ theorem mem_vertices : x ∈ K.vertices ↔ {x} ∈ K.faces := Iff.rfl
 
 theorem vertices_eq : K.vertices = ⋃ k ∈ K.faces, (k : Set E) := by
   ext x
-  refine' ⟨fun h => mem_bunionᡒ h <| mem_coe.2 <| mem_singleton_self x, fun h => _⟩
-  obtain ⟨s, hs, hx⟩ := mem_unionα΅’β‚‚.1 h
+  refine' ⟨fun h => mem_biUnion h <| mem_coe.2 <| mem_singleton_self x, fun h => _⟩
+  obtain ⟨s, hs, hx⟩ := mem_iUnionβ‚‚.1 h
   exact K.down_closed hs (Finset.singleton_subset_iff.2 <| mem_coe.1 hx) (singleton_ne_empty _)
 #align geometry.simplicial_complex.vertices_eq Geometry.SimplicialComplex.vertices_eq
 
 theorem vertices_subset_space : K.vertices βŠ† K.space :=
-  vertices_eq.subset.trans <| unionα΅’β‚‚_mono fun x _ => subset_convexHull π•œ (x : Set E)
+  vertices_eq.subset.trans <| iUnionβ‚‚_mono fun x _ => subset_convexHull π•œ (x : Set E)
 #align geometry.simplicial_complex.vertices_subset_space Geometry.SimplicialComplex.vertices_subset_space
 
 theorem vertex_mem_convexHull_iff (hx : x ∈ K.vertices) (hs : s ∈ K.faces) :
@@ -256,7 +256,7 @@ theorem faces_bot : (βŠ₯ : SimplicialComplex π•œ E).faces = βˆ… := rfl
 #align geometry.simplicial_complex.faces_bot Geometry.SimplicialComplex.faces_bot
 
 theorem space_bot : (βŠ₯ : SimplicialComplex π•œ E).space = βˆ… :=
-  Set.bunionα΅’_empty _
+  Set.biUnion_empty _
 #align geometry.simplicial_complex.space_bot Geometry.SimplicialComplex.space_bot
 
 theorem facets_bot : (βŠ₯ : SimplicialComplex π•œ E).facets = βˆ… :=
feat: port Analysis.Convex.SimplicialComplex.Basic (#3643)

Dependencies 9 + 443

444 files ported (98.0%)
185280 lines ported (98.2%)
Show graph

The unported dependencies are