1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: Metric.eventually_nhds_prod_iff
File: Mathlib/Topology/MetricSpace/Pseudo/Defs.lean

tactic: refine (nhds_basis_ball.prod f.basis_sets).eventually_iff.trans ?_
state_before: α : Type u
β : Type v
X : Type u_1
ι : Type u_2
inst✝ : PseudoMetricSpace α
x y z : α
δ ε ε₁ ε₂ : ℝ
s : Set α
f : Filter ι
x₀ : α
p : α × ι → Prop
⊢ (∀ᶠ (x : α × ι) in 𝓝 x₀ ×ˢ f, p x) ↔
    ∃ ε > 0, ∃ pa, (∀ᶠ (i : ι) in f, pa i) ∧ ∀ {x : α}, dist x x₀ < ε → ∀ {i : ι}, pa i → p (x, i)
state_after: α : Type u
β : Type v
X : Type u_1
ι : Type u_2
inst✝ : PseudoMetricSpace α
x y z : α
δ ε ε₁ ε₂ : ℝ
s : Set α
f : Filter ι
x₀ : α
p : α × ι → Prop
⊢ (∃ i, (0 < i.1 ∧ i.2 ∈ f) ∧ ∀ ⦃x : α × ι⦄, x ∈ ball x₀ i.1 ×ˢ id i.2 → p x) ↔
    ∃ ε > 0, ∃ pa, (∀ᶠ (i : ι) in f, pa i) ∧ ∀ {x : α}, dist x x₀ < ε → ∀ {i : ι}, pa i → p (x, i)

tactic: simp only [Prod.exists, forall_prod_set, id, mem_ball, and_assoc, exists_and_left, and_imp]
state_before: α : Type u
β : Type v
X : Type u_1
ι : Type u_2
inst✝ : PseudoMetricSpace α
x y z : α
δ ε ε₁ ε₂ : ℝ
s : Set α
f : Filter ι
x₀ : α
p : α × ι → Prop
⊢ (∃ i, (0 < i.1 ∧ i.2 ∈ f) ∧ ∀ ⦃x : α × ι⦄, x ∈ ball x₀ i.1 ×ˢ id i.2 → p x) ↔
    ∃ ε > 0, ∃ pa, (∀ᶠ (i : ι) in f, pa i) ∧ ∀ {x : α}, dist x x₀ < ε → ∀ {i : ι}, pa i → p (x, i)
state_after: α : Type u
β : Type v
X : Type u_1
ι : Type u_2
inst✝ : PseudoMetricSpace α
x y z : α
δ ε ε₁ ε₂ : ℝ
s : Set α
f : Filter ι
x₀ : α
p : α × ι → Prop
⊢ (∃ a, 0 < a ∧ ∃ x ∈ f, ∀ (x_1 : α), dist x_1 x₀ < a → ∀ y ∈ x, p (x_1, y)) ↔
    ∃ ε > 0, ∃ pa, (∀ᶠ (i : ι) in f, pa i) ∧ ∀ {x : α}, dist x x₀ < ε → ∀ {i : ι}, pa i → p (x, i)

tactic: rfl
state_before: α : Type u
β : Type v
X : Type u_1
ι : Type u_2
inst✝ : PseudoMetricSpace α
x y z : α
δ ε ε₁ ε₂ : ℝ
s : Set α
f : Filter ι
x₀ : α
p : α × ι → Prop
⊢ (∃ a, 0 < a ∧ ∃ x ∈ f, ∀ (x_1 : α), dist x_1 x₀ < a → ∀ y ∈ x, p (x_1, y)) ↔
    ∃ ε > 0, ∃ pa, (∀ᶠ (i : ι) in f, pa i) ∧ ∀ {x : α}, dist x x₀ < ε → ∀ {i : ι}, pa i → p (x, i)
state_after: no goals
Theorem: exists_int_gt
File: Mathlib/Algebra/Order/Archimedean.lean

tactic: rwa [Int.cast_natCast]
state_before: α : Type u_1
M : Type u_2
inst✝¹ : StrictOrderedRing α
inst✝ : Archimedean α
x : α
n : ℕ
h : x < ↑n
⊢ x < ↑↑n
state_after: no goals
Theorem: Path.map_coe
File: Mathlib/Topology/Connected/PathConnected.lean

tactic: ext t
state_before: X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
x y z : X
ι : Type u_3
γ✝ γ : Path x y
f : X → Y
h : Continuous f
⊢ ⇑(γ.map h) = f ∘ ⇑γ
state_after: case h
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
x y z : X
ι : Type u_3
γ✝ γ : Path x y
f : X → Y
h : Continuous f
t : ↑I
⊢ (γ.map h) t = (f ∘ ⇑γ) t

tactic: rfl
state_before: case h
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
x y z : X
ι : Type u_3
γ✝ γ : Path x y
f : X → Y
h : Continuous f
t : ↑I
⊢ (γ.map h) t = (f ∘ ⇑γ) t
state_after: no goals
Theorem: ConvexIndependent.comp_embedding
File: Mathlib/Analysis/Convex/Independent.lean

tactic: intro s x hx
state_before: 𝕜 : Type u_1
E : Type u_2
ι : Type u_3
inst✝² : OrderedSemiring 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s t : Set E
ι' : Type u_4
f : ι' ↪ ι
p : ι → E
hc : ConvexIndependent 𝕜 p
⊢ ConvexIndependent 𝕜 (p ∘ ⇑f)
state_after: 𝕜 : Type u_1
E : Type u_2
ι : Type u_3
inst✝² : OrderedSemiring 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s✝ t : Set E
ι' : Type u_4
f : ι' ↪ ι
p : ι → E
hc : ConvexIndependent 𝕜 p
s : Set ι'
x : ι'
hx : (p ∘ ⇑f) x ∈ (convexHull 𝕜) (p ∘ ⇑f '' s)
⊢ x ∈ s

tactic: rw [← f.injective.mem_set_image]
state_before: 𝕜 : Type u_1
E : Type u_2
ι : Type u_3
inst✝² : OrderedSemiring 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s✝ t : Set E
ι' : Type u_4
f : ι' ↪ ι
p : ι → E
hc : ConvexIndependent 𝕜 p
s : Set ι'
x : ι'
hx : (p ∘ ⇑f) x ∈ (convexHull 𝕜) (p ∘ ⇑f '' s)
⊢ x ∈ s
state_after: 𝕜 : Type u_1
E : Type u_2
ι : Type u_3
inst✝² : OrderedSemiring 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s✝ t : Set E
ι' : Type u_4
f : ι' ↪ ι
p : ι → E
hc : ConvexIndependent 𝕜 p
s : Set ι'
x : ι'
hx : (p ∘ ⇑f) x ∈ (convexHull 𝕜) (p ∘ ⇑f '' s)
⊢ f x ∈ ⇑f '' s

tactic: exact hc _ _ (by rwa [Set.image_image])
state_before: 𝕜 : Type u_1
E : Type u_2
ι : Type u_3
inst✝² : OrderedSemiring 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s✝ t : Set E
ι' : Type u_4
f : ι' ↪ ι
p : ι → E
hc : ConvexIndependent 𝕜 p
s : Set ι'
x : ι'
hx : (p ∘ ⇑f) x ∈ (convexHull 𝕜) (p ∘ ⇑f '' s)
⊢ f x ∈ ⇑f '' s
state_after: no goals

tactic: rwa [Set.image_image]
state_before: 𝕜 : Type u_1
E : Type u_2
ι : Type u_3
inst✝² : OrderedSemiring 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s✝ t : Set E
ι' : Type u_4
f : ι' ↪ ι
p : ι → E
hc : ConvexIndependent 𝕜 p
s : Set ι'
x : ι'
hx : (p ∘ ⇑f) x ∈ (convexHull 𝕜) (p ∘ ⇑f '' s)
⊢ p (f x) ∈ (convexHull 𝕜) (p '' (⇑f '' s))
state_after: no goals
Theorem: Complex.cosh_mul_I
File: Mathlib/Data/Complex/Exponential.lean

tactic: rw [← mul_right_inj' (two_ne_zero' ℂ), two_cosh, two_cos, neg_mul_eq_neg_mul]
state_before: x y : ℂ
⊢ cosh (x * I) = cos x
state_after: no goals
Theorem: Finmap.mem_singleton
File: Mathlib/Data/Finmap.lean

tactic: simp only [singleton]
state_before: α : Type u
β : α → Type v
x y : α
b : β y
⊢ x ∈ singleton y b ↔ x = y
state_after: α : Type u
β : α → Type v
x y : α
b : β y
⊢ x ∈ ⟦AList.singleton y b⟧ ↔ x = y

tactic: erw [mem_cons, mem_nil_iff, or_false_iff]
state_before: α : Type u
β : α → Type v
x y : α
b : β y
⊢ x ∈ ⟦AList.singleton y b⟧ ↔ x = y
state_after: no goals
Theorem: Subgroup.map_eq_map_iff
File: Mathlib/Algebra/Group/Subgroup/Basic.lean

tactic: simp only [le_antisymm_iff, map_le_map_iff']
state_before: G : Type u_1
G' : Type u_2
G'' : Type u_3
inst✝⁴ : Group G
inst✝³ : Group G'
inst✝² : Group G''
A : Type u_4
inst✝¹ : AddGroup A
N : Type u_5
inst✝ : Group N
f✝ f : G →* N
H K : Subgroup G
⊢ map f H = map f K ↔ H ⊔ f.ker = K ⊔ f.ker
state_after: no goals
Theorem: CategoryTheory.MorphismProperty.isoClosure_le_iff
File: Mathlib/CategoryTheory/MorphismProperty/Basic.lean

tactic: constructor
state_before: C : Type u
inst✝¹ : Category.{v, u} C
D : Type u_1
inst✝ : Category.{?u.15883, u_1} D
P Q : MorphismProperty C
hQ : Q.RespectsIso
⊢ P.isoClosure ≤ Q ↔ P ≤ Q
state_after: case mp
C : Type u
inst✝¹ : Category.{v, u} C
D : Type u_1
inst✝ : Category.{?u.15883, u_1} D
P Q : MorphismProperty C
hQ : Q.RespectsIso
⊢ P.isoClosure ≤ Q → P ≤ Q

case mpr
C : Type u
inst✝¹ : Category.{v, u} C
D : Type u_1
inst✝ : Category.{?u.15883, u_1} D
P Q : MorphismProperty C
hQ : Q.RespectsIso
⊢ P ≤ Q → P.isoClosure ≤ Q

tactic: exact P.le_isoClosure.trans
state_before: case mp
C : Type u
inst✝¹ : Category.{v, u} C
D : Type u_1
inst✝ : Category.{?u.15883, u_1} D
P Q : MorphismProperty C
hQ : Q.RespectsIso
⊢ P.isoClosure ≤ Q → P ≤ Q
state_after: no goals

tactic: intro h
state_before: case mpr
C : Type u
inst✝¹ : Category.{v, u} C
D : Type u_1
inst✝ : Category.{?u.15883, u_1} D
P Q : MorphismProperty C
hQ : Q.RespectsIso
⊢ P ≤ Q → P.isoClosure ≤ Q
state_after: case mpr
C : Type u
inst✝¹ : Category.{v, u} C
D : Type u_1
inst✝ : Category.{?u.15883, u_1} D
P Q : MorphismProperty C
hQ : Q.RespectsIso
h : P ≤ Q
⊢ P.isoClosure ≤ Q

tactic: exact (monotone_isoClosure h).trans (by rw [hQ.isoClosure_eq])
state_before: case mpr
C : Type u
inst✝¹ : Category.{v, u} C
D : Type u_1
inst✝ : Category.{?u.15883, u_1} D
P Q : MorphismProperty C
hQ : Q.RespectsIso
h : P ≤ Q
⊢ P.isoClosure ≤ Q
state_after: no goals

tactic: rw [hQ.isoClosure_eq]
state_before: C : Type u
inst✝¹ : Category.{v, u} C
D : Type u_1
inst✝ : Category.{?u.15883, u_1} D
P Q : MorphismProperty C
hQ : Q.RespectsIso
h : P ≤ Q
⊢ Q.isoClosure ≤ Q
state_after: no goals
Theorem: AlgebraicTopology.DoldKan.Q_f_0_eq
File: Mathlib/AlgebraicTopology/DoldKan/Projections.lean

tactic: simp only [HomologicalComplex.sub_f_apply, HomologicalComplex.id_f, Q, P_f_0_eq, sub_self]
state_before: C : Type u_1
inst✝¹ : Category.{u_2, u_1} C
inst✝ : Preadditive C
X : SimplicialObject C
q : ℕ
⊢ (Q q).f 0 = 0
state_after: no goals
Theorem: Finset.sup_comm
File: Mathlib/Data/Finset/Lattice.lean

tactic: simpa using forall₂_swap
state_before: F : Type u_1
α : Type u_2
β : Type u_3
γ : Type u_4
ι : Type u_5
κ : Type u_6
inst✝¹ : SemilatticeSup α
inst✝ : OrderBot α
s✝ s₁ s₂ : Finset β
f✝ g : β → α
a✝ : α
s : Finset β
t : Finset γ
f : β → γ → α
a : α
⊢ (s.sup fun b => t.sup (f b)) ≤ a ↔ (t.sup fun c => s.sup fun b => f b c) ≤ a
state_after: no goals
Theorem: Nat.Primrec'.cons
File: Mathlib/Computability/Primrec.lean

tactic: simp [*]
state_before: n m : ℕ
f : Vector ℕ n → ℕ
g : Vector ℕ n → Vector ℕ m
hf : Primrec' f
hg : Vec g
i : Fin m.succ
⊢ Primrec' fun v => ((fun v => f v ::ᵥ g v) v).get 0
state_after: no goals

tactic: simp [hg i]
state_before: n m : ℕ
f : Vector ℕ n → ℕ
g : Vector ℕ n → Vector ℕ m
hf : Primrec' f
hg : Vec g
i✝ : Fin m.succ
i : Fin m
⊢ Primrec' fun v => ((fun v => f v ::ᵥ g v) v).get i.succ
state_after: no goals
Theorem: TensorProduct.gradedMul_one
File: Mathlib/LinearAlgebra/TensorProduct/Graded/External.lean

tactic: simpa only [RingHom.map_one, one_smul] using gradedMul_algebraMap 𝒜 ℬ x 1
state_before: R : Type u_1
ι : Type u_2
A : Type u_3
B : Type u_4
inst✝¹¹ : CommSemiring ι
inst✝¹⁰ : Module ι (Additive ℤˣ)
inst✝⁹ : DecidableEq ι
𝒜 : ι → Type u_5
ℬ : ι → Type u_6
inst✝⁸ : CommRing R
inst✝⁷ : (i : ι) → AddCommGroup (𝒜 i)
inst✝⁶ : (i : ι) → AddCommGroup (ℬ i)
inst✝⁵ : (i : ι) → Module R (𝒜 i)
inst✝⁴ : (i : ι) → Module R (ℬ i)
inst✝³ : DirectSum.GRing 𝒜
inst✝² : DirectSum.GRing ℬ
inst✝¹ : DirectSum.GAlgebra R 𝒜
inst✝ : DirectSum.GAlgebra R ℬ
x : (⨁ (i : ι), 𝒜 i) ⊗[R] ⨁ (i : ι), ℬ i
⊢ ((gradedMul R 𝒜 ℬ) x) 1 = x
state_after: no goals
Theorem: Finset.exists_cycleOn
File: Mathlib/GroupTheory/Perm/Cycle/Basic.lean

tactic: refine ⟨s.toList.formPerm, ?_, fun x hx => by
  simpa using List.mem_of_formPerm_apply_ne (Perm.mem_support.1 hx)⟩
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
s : Finset α
⊢ ∃ f, f.IsCycleOn ↑s ∧ f.support ⊆ s
state_after: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
s : Finset α
⊢ s.toList.formPerm.IsCycleOn ↑s

tactic: convert s.nodup_toList.isCycleOn_formPerm
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
s : Finset α
⊢ s.toList.formPerm.IsCycleOn ↑s
state_after: case h.e'_3
ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
s : Finset α
⊢ ↑s = {a | a ∈ s.toList}

tactic: simp
state_before: case h.e'_3
ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
s : Finset α
⊢ ↑s = {a | a ∈ s.toList}
state_after: no goals

tactic: simpa using List.mem_of_formPerm_apply_ne (Perm.mem_support.1 hx)
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
s : Finset α
x : α
hx : x ∈ s.toList.formPerm.support
⊢ x ∈ s
state_after: no goals
Theorem: CategoryTheory.OverPresheafAux.counitForward_val_snd
File: Mathlib/CategoryTheory/Comma/Presheaf.lean

tactic: simp [← CostructuredArrow.eq_mk]
state_before: C : Type u
inst✝ : Category.{v, u} C
A : Cᵒᵖ ⥤ Type v
F : (CostructuredArrow yoneda A)ᵒᵖ ⥤ Type v
X : C
s : CostructuredArrow yoneda A
x : F.obj { unop := s }
⊢ { unop := s } = { unop := CostructuredArrow.mk (YonedaCollection.fst (counitForward F s x).val) }
state_after: no goals
Theorem: Polynomial.coe_monomial
File: Mathlib/RingTheory/PowerSeries/Basic.lean

tactic: ext
state_before: σ : Type u_1
R : Type u_2
inst✝ : CommSemiring R
φ ψ : R[X]
n : ℕ
a : R
⊢ ↑((monomial n) a) = (PowerSeries.monomial R n) a
state_after: case h
σ : Type u_1
R : Type u_2
inst✝ : CommSemiring R
φ ψ : R[X]
n : ℕ
a : R
n✝ : ℕ
⊢ (PowerSeries.coeff R n✝) ↑((monomial n) a) = (PowerSeries.coeff R n✝) ((PowerSeries.monomial R n) a)

tactic: simp [coeff_coe, PowerSeries.coeff_monomial, Polynomial.coeff_monomial, eq_comm]
state_before: case h
σ : Type u_1
R : Type u_2
inst✝ : CommSemiring R
φ ψ : R[X]
n : ℕ
a : R
n✝ : ℕ
⊢ (PowerSeries.coeff R n✝) ↑((monomial n) a) = (PowerSeries.coeff R n✝) ((PowerSeries.monomial R n) a)
state_after: no goals
Theorem: NormedAddGroupHom.norm_comp_le_of_le'
File: Mathlib/Analysis/Normed/Group/Hom.lean

tactic: rw [h]
state_before: V : Type u_1
V₁ : Type u_2
V₂ : Type u_3
V₃ : Type u_4
inst✝³ : SeminormedAddCommGroup V
inst✝² : SeminormedAddCommGroup V₁
inst✝¹ : SeminormedAddCommGroup V₂
inst✝ : SeminormedAddCommGroup V₃
f g✝ : NormedAddGroupHom V₁ V₂
g : NormedAddGroupHom V₂ V₃
C₁ C₂ C₃ : ℝ
h : C₃ = C₂ * C₁
hg : ‖g‖ ≤ C₂
hf : ‖f‖ ≤ C₁
⊢ ‖g.comp f‖ ≤ C₃
state_after: V : Type u_1
V₁ : Type u_2
V₂ : Type u_3
V₃ : Type u_4
inst✝³ : SeminormedAddCommGroup V
inst✝² : SeminormedAddCommGroup V₁
inst✝¹ : SeminormedAddCommGroup V₂
inst✝ : SeminormedAddCommGroup V₃
f g✝ : NormedAddGroupHom V₁ V₂
g : NormedAddGroupHom V₂ V₃
C₁ C₂ C₃ : ℝ
h : C₃ = C₂ * C₁
hg : ‖g‖ ≤ C₂
hf : ‖f‖ ≤ C₁
⊢ ‖g.comp f‖ ≤ C₂ * C₁

tactic: exact norm_comp_le_of_le hg hf
state_before: V : Type u_1
V₁ : Type u_2
V₂ : Type u_3
V₃ : Type u_4
inst✝³ : SeminormedAddCommGroup V
inst✝² : SeminormedAddCommGroup V₁
inst✝¹ : SeminormedAddCommGroup V₂
inst✝ : SeminormedAddCommGroup V₃
f g✝ : NormedAddGroupHom V₁ V₂
g : NormedAddGroupHom V₂ V₃
C₁ C₂ C₃ : ℝ
h : C₃ = C₂ * C₁
hg : ‖g‖ ≤ C₂
hf : ‖f‖ ≤ C₁
⊢ ‖g.comp f‖ ≤ C₂ * C₁
state_after: no goals
Theorem: ProbabilityTheory.kernel.IndepSets.iUnion
File: Mathlib/Probability/Independence/Kernel.lean

tactic: intro t1 t2 ht1 ht2
state_before: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
hyp : ∀ (n : ι), IndepSets (s n) s' κ μ
⊢ IndepSets (⋃ n, s n) s' κ μ
state_after: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
hyp : ∀ (n : ι), IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht1 : t1 ∈ ⋃ n, s n
ht2 : t2 ∈ s'
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2

tactic: rw [Set.mem_iUnion] at ht1
state_before: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
hyp : ∀ (n : ι), IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht1 : t1 ∈ ⋃ n, s n
ht2 : t2 ∈ s'
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2
state_after: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
hyp : ∀ (n : ι), IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht1 : ∃ i, t1 ∈ s i
ht2 : t2 ∈ s'
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2

tactic: cases' ht1 with n ht1
state_before: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
hyp : ∀ (n : ι), IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht1 : ∃ i, t1 ∈ s i
ht2 : t2 ∈ s'
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2
state_after: case intro
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
hyp : ∀ (n : ι), IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht2 : t2 ∈ s'
n : ι
ht1 : t1 ∈ s n
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2

tactic: exact hyp n t1 t2 ht1 ht2
state_before: case intro
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
hyp : ∀ (n : ι), IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht2 : t2 ∈ s'
n : ι
ht1 : t1 ∈ s n
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2
state_after: no goals
Theorem: MeasureTheory.LocallyIntegrable.integrable_of_isBigO_atTop
File: Mathlib/MeasureTheory/Integral/Asymptotics.lean

tactic: refine integrable_iff_integrableAtFilter_atTop.mpr ⟨ho.integrableAtFilter ?_ hg, hf⟩
state_before: α : Type u_1
E : Type u_2
F : Type u_3
inst✝⁸ : MeasurableSpace α
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedAddCommGroup F
f : α → E
g : α → F
a b : α
μ : Measure α
l : Filter α
inst✝⁵ : TopologicalSpace α
inst✝⁴ : SecondCountableTopology α
inst✝³ : LinearOrder α
inst✝² : CompactIccSpace α
g' : α → F
inst✝¹ : atTop.IsMeasurablyGenerated
inst✝ : OrderBot α
hf : LocallyIntegrable f μ
ho : f =O[atTop] g
hg : IntegrableAtFilter g atTop μ
⊢ Integrable f μ
state_after: α : Type u_1
E : Type u_2
F : Type u_3
inst✝⁸ : MeasurableSpace α
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedAddCommGroup F
f : α → E
g : α → F
a b : α
μ : Measure α
l : Filter α
inst✝⁵ : TopologicalSpace α
inst✝⁴ : SecondCountableTopology α
inst✝³ : LinearOrder α
inst✝² : CompactIccSpace α
g' : α → F
inst✝¹ : atTop.IsMeasurablyGenerated
inst✝ : OrderBot α
hf : LocallyIntegrable f μ
ho : f =O[atTop] g
hg : IntegrableAtFilter g atTop μ
⊢ StronglyMeasurableAtFilter f atTop μ

tactic: exact hf.aestronglyMeasurable.stronglyMeasurableAtFilter
state_before: α : Type u_1
E : Type u_2
F : Type u_3
inst✝⁸ : MeasurableSpace α
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedAddCommGroup F
f : α → E
g : α → F
a b : α
μ : Measure α
l : Filter α
inst✝⁵ : TopologicalSpace α
inst✝⁴ : SecondCountableTopology α
inst✝³ : LinearOrder α
inst✝² : CompactIccSpace α
g' : α → F
inst✝¹ : atTop.IsMeasurablyGenerated
inst✝ : OrderBot α
hf : LocallyIntegrable f μ
ho : f =O[atTop] g
hg : IntegrableAtFilter g atTop μ
⊢ StronglyMeasurableAtFilter f atTop μ
state_after: no goals
Theorem: Multiset.card_bind
File: Mathlib/Data/Multiset/Bind.lean

tactic: simp [bind]
state_before: α : Type u_1
β : Type v
γ : Type u_2
δ : Type u_3
a : α
s t : Multiset α
f g : α → Multiset β
⊢ card (s.bind f) = (map (⇑card ∘ f) s).sum
state_after: no goals
Theorem: Filter.HasBasis.equicontinuousAt_iff_right
File: Mathlib/Topology/UniformSpace/Equicontinuity.lean

tactic: rw [equicontinuousAt_iff_continuousAt, ContinuousAt,
  (UniformFun.hasBasis_nhds_of_basis ι α _ hα).tendsto_right_iff]
state_before: ι : Type u_1
κ : Type u_2
X : Type u_3
X' : Type u_4
Y : Type u_5
Z : Type u_6
α : Type u_7
α' : Type u_8
β : Type u_9
β' : Type u_10
γ : Type u_11
𝓕 : Type u_12
tX : TopologicalSpace X
tY : TopologicalSpace Y
tZ : TopologicalSpace Z
uα : UniformSpace α
uβ : UniformSpace β
uγ : UniformSpace γ
p : κ → Prop
s : κ → Set (α × α)
F : ι → X → α
x₀ : X
hα : (𝓤 α).HasBasis p s
⊢ EquicontinuousAt F x₀ ↔ ∀ (k : κ), p k → ∀ᶠ (x : X) in 𝓝 x₀, ∀ (i : ι), (F i x₀, F i x) ∈ s k
state_after: ι : Type u_1
κ : Type u_2
X : Type u_3
X' : Type u_4
Y : Type u_5
Z : Type u_6
α : Type u_7
α' : Type u_8
β : Type u_9
β' : Type u_10
γ : Type u_11
𝓕 : Type u_12
tX : TopologicalSpace X
tY : TopologicalSpace Y
tZ : TopologicalSpace Z
uα : UniformSpace α
uβ : UniformSpace β
uγ : UniformSpace γ
p : κ → Prop
s : κ → Set (α × α)
F : ι → X → α
x₀ : X
hα : (𝓤 α).HasBasis p s
⊢ (∀ (i : κ),
      p i →
        ∀ᶠ (x : X) in 𝓝 x₀,
          (⇑UniformFun.ofFun ∘ swap F) x ∈ {g | ((⇑UniformFun.ofFun ∘ swap F) x₀, g) ∈ UniformFun.gen ι α (s i)}) ↔
    ∀ (k : κ), p k → ∀ᶠ (x : X) in 𝓝 x₀, ∀ (i : ι), (F i x₀, F i x) ∈ s k

tactic: rfl
state_before: ι : Type u_1
κ : Type u_2
X : Type u_3
X' : Type u_4
Y : Type u_5
Z : Type u_6
α : Type u_7
α' : Type u_8
β : Type u_9
β' : Type u_10
γ : Type u_11
𝓕 : Type u_12
tX : TopologicalSpace X
tY : TopologicalSpace Y
tZ : TopologicalSpace Z
uα : UniformSpace α
uβ : UniformSpace β
uγ : UniformSpace γ
p : κ → Prop
s : κ → Set (α × α)
F : ι → X → α
x₀ : X
hα : (𝓤 α).HasBasis p s
⊢ (∀ (i : κ),
      p i →
        ∀ᶠ (x : X) in 𝓝 x₀,
          (⇑UniformFun.ofFun ∘ swap F) x ∈ {g | ((⇑UniformFun.ofFun ∘ swap F) x₀, g) ∈ UniformFun.gen ι α (s i)}) ↔
    ∀ (k : κ), p k → ∀ᶠ (x : X) in 𝓝 x₀, ∀ (i : ι), (F i x₀, F i x) ∈ s k
state_after: no goals
Theorem: Seminorm.closedBall_zero_eq_preimage_closedBall
File: Mathlib/Analysis/Seminorm.lean

tactic: rw [closedBall_zero_eq, preimage_metric_closedBall]
state_before: R : Type u_1
R' : Type u_2
𝕜 : Type u_3
𝕜₂ : Type u_4
𝕜₃ : Type u_5
𝕝 : Type u_6
E : Type u_7
E₂ : Type u_8
E₃ : Type u_9
F : Type u_10
G : Type u_11
ι : Type u_12
inst✝⁶ : SeminormedRing 𝕜
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : SeminormedRing 𝕜₂
inst✝² : AddCommGroup E₂
inst✝¹ : Module 𝕜₂ E₂
σ₁₂ : 𝕜 →+* 𝕜₂
inst✝ : RingHomIsometric σ₁₂
p : Seminorm 𝕜 E
r : ℝ
⊢ p.closedBall 0 r = ⇑p ⁻¹' Metric.closedBall 0 r
state_after: no goals
Theorem: Path.ext
File: Mathlib/Topology/Connected/PathConnected.lean

tactic: rintro ⟨⟨x, h11⟩, h12, h13⟩ ⟨⟨x, h21⟩, h22, h23⟩ rfl
state_before: X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
x y z : X
ι : Type u_3
⊢ ∀ {γ₁ γ₂ : Path x y}, ⇑γ₁ = ⇑γ₂ → γ₁ = γ₂
state_after: case mk.mk.mk.mk
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
x✝ y z : X
ι : Type u_3
x : ↑I → X
h11 : Continuous x
h12 : { toFun := x, continuous_toFun := h11 }.toFun 0 = x✝
h13 : { toFun := x, continuous_toFun := h11 }.toFun 1 = y
h21 : Continuous ⇑{ toFun := x, continuous_toFun := h11, source' := h12, target' := h13 }
h22 :
  { toFun := ⇑{ toFun := x, continuous_toFun := h11, source' := h12, target' := h13 }, continuous_toFun := h21 }.toFun
      0 =
    x✝
h23 :
  { toFun := ⇑{ toFun := x, continuous_toFun := h11, source' := h12, target' := h13 }, continuous_toFun := h21 }.toFun
      1 =
    y
⊢ { toFun := x, continuous_toFun := h11, source' := h12, target' := h13 } =
    { toFun := ⇑{ toFun := x, continuous_toFun := h11, source' := h12, target' := h13 }, continuous_toFun := h21,
      source' := h22, target' := h23 }

tactic: rfl
state_before: case mk.mk.mk.mk
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
x✝ y z : X
ι : Type u_3
x : ↑I → X
h11 : Continuous x
h12 : { toFun := x, continuous_toFun := h11 }.toFun 0 = x✝
h13 : { toFun := x, continuous_toFun := h11 }.toFun 1 = y
h21 : Continuous ⇑{ toFun := x, continuous_toFun := h11, source' := h12, target' := h13 }
h22 :
  { toFun := ⇑{ toFun := x, continuous_toFun := h11, source' := h12, target' := h13 }, continuous_toFun := h21 }.toFun
      0 =
    x✝
h23 :
  { toFun := ⇑{ toFun := x, continuous_toFun := h11, source' := h12, target' := h13 }, continuous_toFun := h21 }.toFun
      1 =
    y
⊢ { toFun := x, continuous_toFun := h11, source' := h12, target' := h13 } =
    { toFun := ⇑{ toFun := x, continuous_toFun := h11, source' := h12, target' := h13 }, continuous_toFun := h21,
      source' := h22, target' := h23 }
state_after: no goals
Theorem: lie_neg
File: Mathlib/Algebra/Lie/Basic.lean

tactic: rw [← sub_eq_zero, sub_neg_eq_add, ← lie_add]
state_before: R : Type u
L : Type v
M : Type w
N : Type w₁
inst✝¹⁰ : CommRing R
inst✝⁹ : LieRing L
inst✝⁸ : LieAlgebra R L
inst✝⁷ : AddCommGroup M
inst✝⁶ : Module R M
inst✝⁵ : LieRingModule L M
inst✝⁴ : LieModule R L M
inst✝³ : AddCommGroup N
inst✝² : Module R N
inst✝¹ : LieRingModule L N
inst✝ : LieModule R L N
t : R
x y z : L
m n : M
⊢ ⁅x, -m⁆ = -⁅x, m⁆
state_after: R : Type u
L : Type v
M : Type w
N : Type w₁
inst✝¹⁰ : CommRing R
inst✝⁹ : LieRing L
inst✝⁸ : LieAlgebra R L
inst✝⁷ : AddCommGroup M
inst✝⁶ : Module R M
inst✝⁵ : LieRingModule L M
inst✝⁴ : LieModule R L M
inst✝³ : AddCommGroup N
inst✝² : Module R N
inst✝¹ : LieRingModule L N
inst✝ : LieModule R L N
t : R
x y z : L
m n : M
⊢ ⁅x, -m + m⁆ = 0

tactic: simp
state_before: R : Type u
L : Type v
M : Type w
N : Type w₁
inst✝¹⁰ : CommRing R
inst✝⁹ : LieRing L
inst✝⁸ : LieAlgebra R L
inst✝⁷ : AddCommGroup M
inst✝⁶ : Module R M
inst✝⁵ : LieRingModule L M
inst✝⁴ : LieModule R L M
inst✝³ : AddCommGroup N
inst✝² : Module R N
inst✝¹ : LieRingModule L N
inst✝ : LieModule R L N
t : R
x y z : L
m n : M
⊢ ⁅x, -m + m⁆ = 0
state_after: no goals
Theorem: reflection_mem_subspace_orthogonalComplement_eq_neg
File: Mathlib/Analysis/InnerProductSpace/Projection.lean

tactic: simp [reflection_apply, orthogonalProjection_mem_subspace_orthogonalComplement_eq_zero hv]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁵ : _root_.RCLike 𝕜
inst✝⁴ : NormedAddCommGroup E
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace 𝕜 E
inst✝¹ : InnerProductSpace ℝ F
K : Submodule 𝕜 E
inst✝ : HasOrthogonalProjection K
v : E
hv : v ∈ Kᗮ
⊢ (reflection K) v = -v
state_after: no goals