ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Mathlib/MeasureTheory/Function/StronglyMeasurable/Lemmas.lean
α : Type u_1
β✝ : Type u_2
γ : Type u_3
m : MeasurableSpace α
μ : Measure α
inst✝¹ : TopologicalSpace β✝
inst✝ : TopologicalSpace γ
f✝ g✝ : α → β✝
β : Type u_4
f : α → β
mα : MeasurableSpace α
μa : Measure α
mβ : MeasurableSpace β
μb : Measure β
hf : MeasurePreserving f μa μb
h₂ : MeasurableEmbedding f
g : β → γ

⊢ AEStronglyMeasurable (g ∘ f) μa ↔ AEStronglyMeasurable g μb
-- Mathlib/Probability/Kernel/Disintegration/Density.lean
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝ : CountablyGenerated γ
κ✝ : Kernel α (γ × β)
ν✝ : Kernel α γ
κ : Kernel α (γ × β)
ν : Kernel α γ
n : ℕ
s : Set β
hs : MeasurableSet s

⊢ Measurable fun p => (κ p.1) (countablePartitionSet n p.2 ×ˢ s) / (ν p.1) (countablePartitionSet n p.2)
-- Mathlib/Probability/Kernel/Disintegration/Density.lean
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝ : CountablyGenerated γ
κ✝ : Kernel α (γ × β)
ν✝ : Kernel α γ
κ : Kernel α (γ × β)
ν : Kernel α γ
n : ℕ
s : Set β
hs : MeasurableSet s

⊢ Measurable ((fun p => (κ p.1) (↑p.2 ×ˢ s) / (ν p.1) ↑p.2) ∘ fun p => (p.1, ⟨countablePartitionSet n p.2, ⋯⟩))
-- Mathlib/Probability/Kernel/Disintegration/Density.lean
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝ : CountablyGenerated γ
κ✝ : Kernel α (γ × β)
ν✝ : Kernel α γ
κ : Kernel α (γ × β)
ν : Kernel α γ
n : ℕ
s : Set β
hs : MeasurableSet s
h1 : Measurable fun p => (κ p.1) (↑p.2 ×ˢ s) / (ν p.1) ↑p.2

⊢ Measurable ((fun p => (κ p.1) (↑p.2 ×ˢ s) / (ν p.1) ↑p.2) ∘ fun p => (p.1, ⟨countablePartitionSet n p.2, ⋯⟩))
-- Mathlib/Probability/Kernel/Disintegration/Density.lean
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝ : CountablyGenerated γ
κ✝ : Kernel α (γ × β)
ν✝ : Kernel α γ
κ : Kernel α (γ × β)
ν : Kernel α γ
n : ℕ
s : Set β
hs : MeasurableSet s
h1 : Measurable fun p => (κ p.1) (↑p.2 ×ˢ s) / (ν p.1) ↑p.2

⊢ Measurable fun p => ⟨countablePartitionSet n p.2, ⋯⟩
-- Mathlib/Probability/Kernel/Disintegration/Density.lean
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝ : CountablyGenerated γ
κ✝ : Kernel α (γ × β)
ν✝ : Kernel α γ
κ : Kernel α (γ × β)
ν : Kernel α γ
n : ℕ
s : Set β
hs : MeasurableSet s
h1 : Measurable fun p => (κ p.1) (↑p.2 ×ˢ s) / (ν p.1) ↑p.2

⊢ Measurable ((fun c => ⟨countablePartitionSet n c, ⋯⟩) ∘ fun p => p.2)
-- Mathlib/Algebra/Order/Group/MinMax.lean
α : Type u_1
inst✝² : Group α
inst✝¹ : LinearOrder α
inst✝ : CovariantClass α α (fun x x_1 => x * x_1) fun x x_1 => x ≤ x_1
a : α

⊢ max a 1 / max a⁻¹ 1 = a
-- Mathlib/Algebra/Polynomial/Degree/Definitions.lean
R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Ring R
p q : R[X]
h : p.degree < q.degree

⊢ (p - q).degree = q.degree
-- Mathlib/Algebra/Polynomial/Degree/Definitions.lean
R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Ring R
p q : R[X]
h : p.degree < (-q).degree

⊢ (p - q).degree = q.degree
-- Mathlib/Data/PNat/Interval.lean
a b : ℕ+

⊢ (Ioc a b).card = ↑b - ↑a
-- Mathlib/Data/PNat/Interval.lean
a b : ℕ+

⊢ (Ioc a b).card = (Ioc ↑a ↑b).card
-- Mathlib/Data/PNat/Interval.lean
a b : ℕ+

⊢ (Ioc a b).card = (map (Embedding.subtype fun n => 0 < n) (Ioc a b)).card
-- Mathlib/Analysis/BoundedVariation.lean
α : Type u_1
inst✝¹ : LinearOrder α
E : Type u_2
inst✝ : PseudoEMetricSpace E
f : α → E
s : Set α
hf : LocallyBoundedVariationOn f s
a : α
as : a ∈ s
b : α
bs : b ∈ s
c : α
cs : c ∈ s
bc : b ≤ c

⊢ variationOnFromTo f s a b ≤ variationOnFromTo f s a c
-- Mathlib/Analysis/BoundedVariation.lean
α : Type u_1
inst✝¹ : LinearOrder α
E : Type u_2
inst✝ : PseudoEMetricSpace E
f : α → E
s : Set α
hf : LocallyBoundedVariationOn f s
a : α
as : a ∈ s
b : α
bs : b ∈ s
c : α
cs : c ∈ s
bc : b ≤ c

⊢ variationOnFromTo f s a b ≤ variationOnFromTo f s a b + variationOnFromTo f s b c
-- Mathlib/RingTheory/WittVector/Truncated.lean
p : ℕ
hp : Fact (Nat.Prime p)
n : ℕ
R : Type u_1
inst✝ : CommRing R
f : ℕ → R
i : Fin n

⊢ TruncatedWittVector.coeff i ((truncate n) { coeff := f }) = TruncatedWittVector.coeff i (TruncatedWittVector.mk p fun k => f ↑k)
-- Mathlib/Algebra/BigOperators/Group/Finset.lean
ι : Type u_1
κ : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
s✝ s₁ s₂ : Finset α
a : α
f g : α → β
inst✝ : CommMonoid β
s : Finset ι
t : ι → Finset α
h : (↑s).PairwiseDisjoint t

⊢ ∏ x ∈ s.disjiUnion t h, f x = ∏ i ∈ s, ∏ x ∈ t i, f x
-- Mathlib/Algebra/BigOperators/Group/Finset.lean
ι : Type u_1
κ : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
s✝ s₁ s₂ : Finset α
a : α
f g : α → β
inst✝ : CommMonoid β
s : Finset ι
t : ι → Finset α
h : (↑s).PairwiseDisjoint t

⊢ ∏ x ∈ s.disjiUnion t h, f x = fold (fun x x_1 => x * x_1) (fold (fun x x_1 => x * x_1) 1 (fun i => 1) s) (fun x => f x) (s.disjiUnion t h)
-- Mathlib/Algebra/BigOperators/Group/Finset.lean
ι : Type u_1
κ : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
s✝ s₁ s₂ : Finset α
a : α
f g : α → β
inst✝ : CommMonoid β
s : Finset ι
t : ι → Finset α
h : (↑s).PairwiseDisjoint t

⊢ 1 = Multiset.foldr (fun x x_1 => x * x_1) ⋯ 1 (Multiset.map (fun i => 1) s.val)
-- Mathlib/CategoryTheory/Idempotents/FunctorExtension.lean
C : Type u_1
D : Type u_2
E : Type u_3
inst✝² : Category.{?u.58582, u_1} C
inst✝¹ : Category.{?u.58586, u_2} D
inst✝ : Category.{?u.58590, u_3} E
F : C ⥤ Karoubi D
P : Karoubi C

⊢ ((F.map P.p).f ≫ (F.obj P.X).p) ≫ (F.map P.p).f = (F.map P.p).f
-- Mathlib/Analysis/Analytic/Basic.lean
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
p : FormalMultilinearSeries 𝕜 E F
x✝ y : E
r R : ℝ≥0
k l : ℕ
x : E

⊢ ‖(p.changeOriginSeries k l) fun x_1 => x‖₊ ≤ ∑' (x_1 : { s // s.card = l }), ‖p (k + l)‖₊ * ‖x‖₊ ^ l
-- Mathlib/Analysis/Analytic/Basic.lean
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
p : FormalMultilinearSeries 𝕜 E F
x✝ y : E
r R : ℝ≥0
k l : ℕ
x : E

⊢ ‖(p.changeOriginSeries k l) fun x_1 => x‖₊ ≤ (∑' (x : { s // s.card = l }), ‖p (k + l)‖₊) * ∏ _i : Fin l, ‖x‖₊
-- Mathlib/MeasureTheory/Decomposition/Lebesgue.lean
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν✝ μ ν : Measure α
inst✝¹ : μ.HaveLebesgueDecomposition ν
inst✝ : SigmaFinite ν
s : Set α
hs : MeasurableSet s

⊢ (μ.restrict s).rnDeriv ν =ᶠ[ae ν] s.indicator (μ.rnDeriv ν)
-- Mathlib/MeasureTheory/Decomposition/Lebesgue.lean
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν✝ μ ν : Measure α
inst✝¹ : μ.HaveLebesgueDecomposition ν
inst✝ : SigmaFinite ν
s : Set α
hs : MeasurableSet s

⊢ μ.restrict s = (μ.restrict s).singularPart ν + ν.withDensity (s.indicator (μ.rnDeriv ν))
-- Mathlib/MeasureTheory/SetSemiring.lean
α : Type u_1
C : Set (Set α)
s t : Set α
hC : IsSetSemiring C
hs : s ∈ C
ht : t ∈ C

⊢ ↑(hC.diffFinset hs ht) ⊆ C
-- Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean
R : Type u
inst✝¹ : CommRing R
W' : Jacobian R
F : Type v
inst✝ : Field F
W : Jacobian F
P : Fin 3 → R

⊢ (eval P) W'.polynomialY = 2 * P y + W'.a₁ * P x * P z + W'.a₃ * P z ^ 3
-- Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean
R : Type u
inst✝¹ : CommRing R
W' : Jacobian R
F : Type v
inst✝ : Field F
W : Jacobian F
P : Fin 3 → R

⊢ (eval P) (C 2 * X y + C W'.a₁ * X x * X z + C W'.a₃ * X z ^ 3) = 2 * P y + W'.a₁ * P x * P z + W'.a₃ * P z ^ 3
-- Mathlib/GroupTheory/PGroup.lean
p : ℕ
G : Type u_1
inst✝ : Group G
hG : IsPGroup p G
hp : Fact (Nat.Prime p)

⊢ Nat.card G = 1 ∨ p ∣ Nat.card G
-- Mathlib/GroupTheory/PGroup.lean
p : ℕ
G : Type u_1
inst✝ : Group G
hG : IsPGroup p G
hp : Fact (Nat.Prime p)
h✝ : Finite G

⊢ Nat.card G = 1 ∨ p ∣ Nat.card G
-- Mathlib/GroupTheory/PGroup.lean
p : ℕ
G : Type u_1
inst✝ : Group G
hG : IsPGroup p G
hp : Fact (Nat.Prime p)
h✝ : Infinite G

⊢ Nat.card G = 1 ∨ p ∣ Nat.card G
-- Mathlib/Order/Filter/Ultrafilter.lean
α : Type u
β : Type v
γ : Type u_1
f✝ : Filter α
s : Set α
a : α
f f' : Filter α

⊢ ⨆ g, ⨆ (_ : ↑g ≤ f), ↑g ≤ f' ↔ f ≤ f'
-- Mathlib/Analysis/Calculus/FDeriv/Basic.lean
𝕜 : Type u_1
inst✝⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedSpace 𝕜 E
F : Type u_3
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace 𝕜 F
G : Type u_4
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
G' : Type u_5
inst✝¹ : NormedAddCommGroup G'
inst✝ : NormedSpace 𝕜 G'
f✝ f₀ f₁ g : E → F
f' f₀' f₁' g' e : E →L[𝕜] F
x : E
s✝ t : Set E
L L₁ L₂ : Filter E
f : E → F
x₀ : E
s : Set E
hs : s ∈ 𝓝 x₀
C : ℝ≥0
hlip : LipschitzOnWith C f s

⊢ ‖fderiv 𝕜 f x₀‖ ≤ ↑C
-- Mathlib/Analysis/Calculus/FDeriv/Basic.lean
𝕜 : Type u_1
inst✝⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedSpace 𝕜 E
F : Type u_3
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace 𝕜 F
G : Type u_4
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
G' : Type u_5
inst✝¹ : NormedAddCommGroup G'
inst✝ : NormedSpace 𝕜 G'
f✝ f₀ f₁ g : E → F
f' f₀' f₁' g' e : E →L[𝕜] F
x : E
s✝ t : Set E
L L₁ L₂ : Filter E
f : E → F
x₀ : E
s : Set E
hs : s ∈ 𝓝 x₀
C : ℝ≥0
hlip : LipschitzOnWith C f s

⊢ ∀ᶠ (x : E) in 𝓝 x₀, ‖f x - f x₀‖ ≤ ↑C * ‖x - x₀‖
-- Mathlib/CategoryTheory/Limits/Shapes/FunctorToTypes.lean
C : Type u
inst✝ : Category.{v, u} C
F G F₁ F₂ : C ⥤ Type w
τ₁ : F ⟶ F₁
τ₂ : F ⟶ F₂
x✝² x✝¹ : C
x✝ : x✝² ⟶ x✝¹
a : F.obj x✝²

⊢ (F.map x✝ ≫ (fun x y => (τ₁.app x y, τ₂.app x y)) x✝¹) a = ((fun x y => (τ₁.app x y, τ₂.app x y)) x✝² ≫ (prod F₁ F₂).map x✝) a
-- Mathlib/CategoryTheory/Limits/Shapes/FunctorToTypes.lean
C : Type u
inst✝ : Category.{v, u} C
F G F₁ F₂ : C ⥤ Type w
τ₁ : F ⟶ F₁
τ₂ : F ⟶ F₂
x✝² x✝¹ : C
x✝ : x✝² ⟶ x✝¹
a : F.obj x✝²

⊢ (F₁.map x✝ (τ₁.app x✝² a), F₂.map x✝ (τ₂.app x✝² a)) = (prod F₁ F₂).map x✝ (τ₁.app x✝² a, τ₂.app x✝² a)
-- Mathlib/Topology/UrysohnsLemma.lean
X : Type u_1
inst✝ : TopologicalSpace X
P : Set X → Prop
c : CU P
x : X
h : x ∉ c.U

⊢ c.lim x = 1
-- Mathlib/Topology/Inseparable.lean
X : Type u_1
Y : Type u_2
Z : Type u_3
α : Type u_4
ι : Type u_5
π : ι → Type u_6
inst✝³ : TopologicalSpace X
inst✝² : TopologicalSpace Y
inst✝¹ : TopologicalSpace Z
inst✝ : (i : ι) → TopologicalSpace (π i)
x y z : X
s : Set X
f g : X → Y
h : x ⤳ y
hd : _root_.Disjoint (𝓝 x) (𝓝 y)

⊢ ¬_root_.Disjoint (𝓝 x) (𝓝 x)
-- Mathlib/Topology/Category/TopCat/Opens.lean
X : TopCat
U : Opens ↑X

⊢ ↑((map U.inclusion).obj U) = ↑⊤
-- Mathlib/SetTheory/Game/PGame.lean
xl xr : Type u
xL : xl → PGame
i : xr
xR : xr → PGame
j : (xR i).RightMoves

⊢ ((xR i).moveRight j).Subsequent (mk xl xr xL xR)
-- Mathlib/Analysis/Calculus/Monotone.lean
f : StieltjesFunction

⊢ ∀ᵐ (x : ℝ), HasDerivAt (↑f) (f.measure.rnDeriv volume x).toReal x
-- Mathlib/Analysis/Calculus/Monotone.lean
f : StieltjesFunction
x : ℝ
hx : Tendsto (fun a => f.measure a / volume a) ((vitaliFamily volume 1).filterAt x) (𝓝 (f.measure.rnDeriv volume x))
h'x : f.measure.rnDeriv volume x < ⊤
h''x : ¬leftLim (↑f) x ≠ ↑f x

⊢ HasDerivAt (↑f) (f.measure.rnDeriv volume x).toReal x
-- Mathlib/Analysis/Calculus/Monotone.lean
f : StieltjesFunction
x : ℝ
hx : Tendsto (fun a => f.measure a / volume a) ((vitaliFamily volume 1).filterAt x) (𝓝 (f.measure.rnDeriv volume x))
h'x : f.measure.rnDeriv volume x < ⊤
h''x : ¬leftLim (↑f) x ≠ ↑f x
L1 : Tendsto (fun y => (↑f y - ↑f x) / (y - x)) (𝓝[>] x) (𝓝 (f.measure.rnDeriv volume x).toReal)

⊢ HasDerivAt (↑f) (f.measure.rnDeriv volume x).toReal x
-- Mathlib/Analysis/Calculus/Monotone.lean
f : StieltjesFunction
x : ℝ
hx : Tendsto (fun a => f.measure a / volume a) ((vitaliFamily volume 1).filterAt x) (𝓝 (f.measure.rnDeriv volume x))
h'x : f.measure.rnDeriv volume x < ⊤
h''x : ¬leftLim (↑f) x ≠ ↑f x
L1 : Tendsto (fun y => (↑f y - ↑f x) / (y - x)) (𝓝[>] x) (𝓝 (f.measure.rnDeriv volume x).toReal)
L2 : Tendsto (fun y => (leftLim (↑f) y - ↑f x) / (y - x)) (𝓝[<] x) (𝓝 (f.measure.rnDeriv volume x).toReal)

⊢ HasDerivAt (↑f) (f.measure.rnDeriv volume x).toReal x
-- Mathlib/Analysis/Calculus/Monotone.lean
f : StieltjesFunction
x : ℝ
hx : Tendsto (fun a => f.measure a / volume a) ((vitaliFamily volume 1).filterAt x) (𝓝 (f.measure.rnDeriv volume x))
h'x : f.measure.rnDeriv volume x < ⊤
h''x : ¬leftLim (↑f) x ≠ ↑f x
L1 : Tendsto (fun y => (↑f y - ↑f x) / (y - x)) (𝓝[>] x) (𝓝 (f.measure.rnDeriv volume x).toReal)
L2 : Tendsto (fun y => (leftLim (↑f) y - ↑f x) / (y - x)) (𝓝[<] x) (𝓝 (f.measure.rnDeriv volume x).toReal)
L3 : Tendsto (fun y => (leftLim (↑f) (y + 1 * (y - x) ^ 2) - ↑f x) / (y - x)) (𝓝[<] x) (𝓝 (f.measure.rnDeriv volume x).toReal)
L4 : Tendsto (fun y => (↑f y - ↑f x) / (y - x)) (𝓝[<] x) (𝓝 (f.measure.rnDeriv volume x).toReal)

⊢ HasDerivAt (↑f) (f.measure.rnDeriv volume x).toReal x
-- Mathlib/Analysis/Calculus/Monotone.lean
f : StieltjesFunction
x : ℝ
hx : Tendsto (fun a => f.measure a / volume a) ((vitaliFamily volume 1).filterAt x) (𝓝 (f.measure.rnDeriv volume x))
h'x : f.measure.rnDeriv volume x < ⊤
h''x : ¬leftLim (↑f) x ≠ ↑f x
L1 : Tendsto (fun y => (↑f y - ↑f x) / (y - x)) (𝓝[>] x) (𝓝 (f.measure.rnDeriv volume x).toReal)
L2 : Tendsto (fun y => (leftLim (↑f) y - ↑f x) / (y - x)) (𝓝[<] x) (𝓝 (f.measure.rnDeriv volume x).toReal)
L3 : Tendsto (fun y => (leftLim (↑f) (y + 1 * (y - x) ^ 2) - ↑f x) / (y - x)) (𝓝[<] x) (𝓝 (f.measure.rnDeriv volume x).toReal)
L4 : Tendsto (fun y => (↑f y - ↑f x) / (y - x)) (𝓝[<] x) (𝓝 (f.measure.rnDeriv volume x).toReal)

⊢ Tendsto (fun b => (↑f b - ↑f x) / (b - x)) (𝓝[<] x) (𝓝 (f.measure.rnDeriv volume x).toReal) ∧ Tendsto (fun b => (↑f b - ↑f x) / (b - x)) (𝓝[>] x) (𝓝 (f.measure.rnDeriv volume x).toReal)
-- Mathlib/Analysis/SpecialFunctions/Integrals.lean
a b : ℝ
n : ℕ

⊢ ∫ (x : ℝ) in a..b, rexp x = rexp b - rexp a
-- Mathlib/Analysis/SpecialFunctions/Integrals.lean
a b : ℝ
n : ℕ

⊢ deriv rexp = rexp
-- Mathlib/Analysis/SpecialFunctions/Integrals.lean
a b : ℝ
n : ℕ

⊢ ∀ x ∈ [[a, b]], DifferentiableAt ℝ rexp x
-- Mathlib/Analysis/SpecialFunctions/Integrals.lean
a b : ℝ
n : ℕ

⊢ ContinuousOn rexp [[a, b]]
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
ts : List α

⊢ ts.permutations ~ ts.permutations'
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
ts : List α
n : ℕ
h : ts.length < n

⊢ ts.permutations ~ ts.permutations'
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : (ts ++ [t]).length < n + 1

⊢ (ts ++ [t]).permutations ~ (ts ++ [t]).permutations'
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n

⊢ (ts ++ [t]).permutations ~ (ts ++ [t]).permutations'
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n
IH₂ : ts.reverse.permutations ~ ts.permutations'

⊢ (ts ++ [t]).permutations ~ (ts ++ [t]).permutations'
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n
IH₂ : ts.reverse.permutations ~ ts.permutations'

⊢ (map (fun x => x ++ [t]) ts.permutations ++ ts.reverse.permutations.bind fun y => (permutationsAux2 t [] [] y id).2) ~ (ts ++ [t]).permutations'
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n
IH₂ : ts.reverse.permutations ~ ts.permutations'

⊢ (ts.permutations'.bind fun y => (permutationsAux2 t [] [] y id).2) ++ map (fun x => x ++ [t]) ts.permutations' ~ ([t] ++ ts).permutations'
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n
IH₂ : ts.reverse.permutations ~ ts.permutations'

⊢ ((ts.permutations'.bind fun y => (permutationsAux2 t [] [] y id).2) ++ ts.permutations'.bind fun x => [x ++ [t]]) ~ ts.permutations'.bind (permutations'Aux t)
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n
IH₂ : ts.reverse.permutations ~ ts.permutations'

⊢ (ts.permutations'.bind fun x => (permutationsAux2 t [] [] x id).2 ++ [x ++ [t]]) ~ ts.permutations'.bind (permutations'Aux t)
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n
IH₂ : ts.reverse.permutations ~ ts.permutations'

⊢ (ts.permutations'.bind fun x => (permutationsAux2 t [] [] x id).2 ++ [x ++ [t]]) = ts.permutations'.bind (permutations'Aux t)
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n
IH₂ : ts.reverse.permutations ~ ts.permutations'

⊢ (fun x => (permutationsAux2 t [] [] x id).2 ++ [x ++ [t]]) = permutations'Aux t
-- Mathlib/Data/List/Perm.lean
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
n : ℕ
IH : ∀ (ts : List α), ts.length < n → ts.permutations ~ ts.permutations'
ts✝ : List α
h✝ : ts✝.length < n + 1
ts : List α
t : α
x✝¹ : ts.length < n + 1 → ts.permutations ~ ts.permutations'
h : ts.length < n
IH₂ : ts.reverse.permutations ~ ts.permutations'
x✝ : List α

⊢ (permutationsAux2 t [] [] x✝ id).2 ++ [x✝ ++ [t]] = permutations'Aux t x✝
-- Mathlib/Data/Sign.lean
α : Type ?u.51176
inst✝¹ : MulZeroOneClass α
inst✝ : HasDistribNeg α
x y : SignType

⊢ { toFun := cast, map_zero' := ⋯ }.toFun (x * y) = { toFun := cast, map_zero' := ⋯ }.toFun x * { toFun := cast, map_zero' := ⋯ }.toFun y
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : α ⧸ s
b c : α
h : Setoid.r b c

⊢ Setoid.r ((fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) b) ((fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) c)
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : α ⧸ s
b c : α
h : Setoid.r b c

⊢ ((fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) b)⁻¹ * (fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) c ∈ s.subgroupOf t
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : α ⧸ s
b c : α
h : Setoid.r b c

⊢ ((f ↑b)⁻¹ * b)⁻¹ * ((f ↑c)⁻¹ * c) ∈ s
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : α ⧸ s
b c : α
h : Setoid.r b c
key : f ↑b = f ↑c

⊢ ((f ↑b)⁻¹ * b)⁻¹ * ((f ↑c)⁻¹ * c) ∈ s
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : (α ⧸ t) × ↥t ⧸ s.subgroupOf t

⊢ α ⧸ s
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk

⊢ LeftInverse (fun a => Quotient.map' (fun b => f a.1 * ↑b) ⋯ a.2) fun a => (Quotient.map' id ⋯ a, Quotient.map' (fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) ⋯ a)
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : α

⊢ (fun a => Quotient.map' (fun b => f a.1 * ↑b) ⋯ a.2) ((fun a => (Quotient.map' id ⋯ a, Quotient.map' (fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) ⋯ a)) (Quotient.mk'' a)) = Quotient.mk'' a
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk

⊢ ∀ (fst : α ⧸ t) (snd : ↥t ⧸ s.subgroupOf t), (fun a => (Quotient.map' id ⋯ a, Quotient.map' (fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) ⋯ a)) ((fun a => Quotient.map' (fun b => f a.1 * ↑b) ⋯ a.2) (fst, snd)) = (fst, snd)
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : α

⊢ ∀ (snd : ↥t ⧸ s.subgroupOf t), (fun a => (Quotient.map' id ⋯ a, Quotient.map' (fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) ⋯ a)) ((fun a => Quotient.map' (fun b => f a.1 * ↑b) ⋯ a.2) (Quotient.mk'' a, snd)) = (Quotient.mk'' a, snd)
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : α
b : ↥t

⊢ (fun a => (Quotient.map' id ⋯ a, Quotient.map' (fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) ⋯ a)) ((fun a => Quotient.map' (fun b => f a.1 * ↑b) ⋯ a.2) (Quotient.mk'' a, Quotient.mk'' b)) = (Quotient.mk'' a, Quotient.mk'' b)
-- Mathlib/GroupTheory/Coset.lean
α : Type u_1
inst✝ : Group α
s t : Subgroup α
h_le : s ≤ t
f : α ⧸ t → α
hf : Function.RightInverse f QuotientGroup.mk
a : α
b : ↥t
key : Quotient.mk'' (f (Quotient.mk'' a) * ↑b) = Quotient.mk'' a

⊢ (fun a => (Quotient.map' id ⋯ a, Quotient.map' (fun g => ⟨(f (Quotient.mk'' g))⁻¹ * g, ⋯⟩) ⋯ a)) ((fun a => Quotient.map' (fun b => f a.1 * ↑b) ⋯ a.2) (Quotient.mk'' a, Quotient.mk'' b)) = (Quotient.mk'' a, Quotient.mk'' b)
-- Mathlib/Order/Interval/Set/UnorderedInterval.lean
α : Type u_1
β : Type u_2
inst✝¹ : LinearOrder α
inst✝ : LinearOrder β
f : α → β
s : Set α
a a₁ a₂ b b₁ b₂ c d x : α

⊢ a ∈ Ι b c → b ∈ Ι a c → a = b
-- Mathlib/Order/Interval/Set/UnorderedInterval.lean
α : Type u_1
β : Type u_2
inst✝¹ : LinearOrder α
inst✝ : LinearOrder β
f : α → β
s : Set α
a a₁ a₂ b b₁ b₂ c d x : α

⊢ b < a ∧ a ≤ c ∨ c < a ∧ a ≤ b → a < b ∧ b ≤ c ∨ c < b ∧ b ≤ a → a = b
-- Mathlib/RingTheory/GradedAlgebra/Radical.lean
ι : Type u_1
σ : Type u_2
A : Type u_3
inst✝⁴ : CommRing A
inst✝³ : LinearOrderedCancelAddCommMonoid ι
inst✝² : SetLike σ A
inst✝¹ : AddSubmonoidClass σ A
𝒜 : ι → σ
inst✝ : GradedRing 𝒜
I : Ideal A
h : IsHomogeneous 𝒜 I

⊢ IsHomogeneous 𝒜 I.radical
-- Mathlib/RingTheory/GradedAlgebra/Radical.lean
ι : Type u_1
σ : Type u_2
A : Type u_3
inst✝⁴ : CommRing A
inst✝³ : LinearOrderedCancelAddCommMonoid ι
inst✝² : SetLike σ A
inst✝¹ : AddSubmonoidClass σ A
𝒜 : ι → σ
inst✝ : GradedRing 𝒜
I : Ideal A
h : IsHomogeneous 𝒜 I

⊢ IsHomogeneous 𝒜 (InfSet.sInf {J | IsHomogeneous 𝒜 J ∧ I ≤ J ∧ J.IsPrime})
-- Mathlib/Algebra/Category/Grp/EpiMono.lean
A B : CommGrp
f : A ⟶ B

⊢ Epi f ↔ Function.Surjective ⇑f
-- Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean
α : Type u_1
inst✝¹ : CommGroup α
inst✝ : DecidableEq α
A B C : Finset α
hA : A.Nonempty
hAB : A ⊆ B
h : ∀ A' ∈ B.powerset.erase ∅, ↑(A * C).card / ↑A.card ≤ ↑(A' * C).card / ↑A'.card
A' : Finset α
hAA' : A' ⊆ A

⊢ (A * C).card * A'.card ≤ (A' * C).card * A.card