1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: Bornology.isVonNBounded_sUnion
File: Mathlib/Analysis/LocallyConvex/Bounded.lean

tactic: rw [sUnion_eq_biUnion, isVonNBounded_biUnion hS]
state_before: 𝕜 : Type u_1
𝕜' : Type u_2
E : Type u_3
E' : Type u_4
F : Type u_5
ι : Type u_6
inst✝³ : SeminormedRing 𝕜
inst✝² : SMul 𝕜 E
inst✝¹ : Zero E
inst✝ : TopologicalSpace E
S : Set (Set E)
hS : S.Finite
⊢ IsVonNBounded 𝕜 (⋃₀ S) ↔ ∀ s ∈ S, IsVonNBounded 𝕜 s
state_after: no goals
Theorem: Matrix.diagonal_zero
File: Mathlib/Data/Matrix/Basic.lean

tactic: ext
state_before: l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
m' : o → Type u_5
n' : o → Type u_6
R : Type u_7
S : Type u_8
α : Type v
β : Type w
γ : Type u_9
inst✝¹ : DecidableEq n
inst✝ : Zero α
⊢ (diagonal fun x => 0) = 0
state_after: case a
l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
m' : o → Type u_5
n' : o → Type u_6
R : Type u_7
S : Type u_8
α : Type v
β : Type w
γ : Type u_9
inst✝¹ : DecidableEq n
inst✝ : Zero α
i✝ j✝ : n
⊢ diagonal (fun x => 0) i✝ j✝ = 0 i✝ j✝

tactic: simp [diagonal]
state_before: case a
l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
m' : o → Type u_5
n' : o → Type u_6
R : Type u_7
S : Type u_8
α : Type v
β : Type w
γ : Type u_9
inst✝¹ : DecidableEq n
inst✝ : Zero α
i✝ j✝ : n
⊢ diagonal (fun x => 0) i✝ j✝ = 0 i✝ j✝
state_after: no goals
Theorem: Valuation.IsEquiv.val_eq
File: Mathlib/RingTheory/Valuation/Basic.lean

tactic: simpa only [le_antisymm_iff] using and_congr (h r s) (h s r)
state_before: K : Type u_1
F : Type u_2
R : Type u_3
inst✝⁴ : DivisionRing K
Γ₀ : Type u_4
Γ'₀ : Type u_5
Γ''₀ : Type u_6
inst✝³ : LinearOrderedCommMonoidWithZero Γ''₀
inst✝² : Ring R
inst✝¹ : LinearOrderedCommMonoidWithZero Γ₀
inst✝ : LinearOrderedCommMonoidWithZero Γ'₀
v v₁ : Valuation R Γ₀
v₂ : Valuation R Γ'₀
v₃ : Valuation R Γ''₀
h : v₁.IsEquiv v₂
r s : R
⊢ v₁ r = v₁ s ↔ v₂ r = v₂ s
state_after: no goals
Theorem: borel_eq_generateFrom_Ioc
File: Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean

tactic: simpa only [exists_prop, mem_univ, true_and_iff] using
  (@dense_univ α _).borel_eq_generateFrom_Ioc_mem_aux (fun _ _ => mem_univ _) fun _ _ _ _ =>
    mem_univ _
state_before: α✝ : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
ι : Sort y
s t u : Set α✝
inst✝⁹ : TopologicalSpace α✝
inst✝⁸ : MeasurableSpace α✝
inst✝⁷ : OpensMeasurableSpace α✝
inst✝⁶ : MeasurableSpace δ
inst✝⁵ : LinearOrder α✝
inst✝⁴ : OrderClosedTopology α✝
a b x : α✝
α : Type u_5
inst✝³ : TopologicalSpace α
inst✝² : SecondCountableTopology α
inst✝¹ : LinearOrder α
inst✝ : OrderTopology α
⊢ borel α = MeasurableSpace.generateFrom {S | ∃ l u, l < u ∧ Ioc l u = S}
state_after: no goals
Theorem: MeasureTheory.FiniteMeasure.tendsto_iff_forall_toWeakDualBCNN_tendsto
File: Mathlib/MeasureTheory/Measure/FiniteMeasure.lean

tactic: rw [tendsto_iff_weak_star_tendsto, tendsto_iff_forall_eval_tendsto_topDualPairing]
state_before: Ω : Type u_1
inst✝⁶ : MeasurableSpace Ω
R : Type u_2
inst✝⁵ : SMul R ℝ≥0
inst✝⁴ : SMul R ℝ≥0∞
inst✝³ : IsScalarTower R ℝ≥0 ℝ≥0∞
inst✝² : IsScalarTower R ℝ≥0∞ ℝ≥0∞
inst✝¹ : TopologicalSpace Ω
inst✝ : OpensMeasurableSpace Ω
γ : Type u_3
F : Filter γ
μs : γ → FiniteMeasure Ω
μ : FiniteMeasure Ω
⊢ Tendsto μs F (𝓝 μ) ↔ ∀ (f : Ω →ᵇ ℝ≥0), Tendsto (fun i => (μs i).toWeakDualBCNN f) F (𝓝 (μ.toWeakDualBCNN f))
state_after: Ω : Type u_1
inst✝⁶ : MeasurableSpace Ω
R : Type u_2
inst✝⁵ : SMul R ℝ≥0
inst✝⁴ : SMul R ℝ≥0∞
inst✝³ : IsScalarTower R ℝ≥0 ℝ≥0∞
inst✝² : IsScalarTower R ℝ≥0∞ ℝ≥0∞
inst✝¹ : TopologicalSpace Ω
inst✝ : OpensMeasurableSpace Ω
γ : Type u_3
F : Filter γ
μs : γ → FiniteMeasure Ω
μ : FiniteMeasure Ω
⊢ (∀ (y : Ω →ᵇ ℝ≥0),
      Tendsto (fun i => ((topDualPairing ℝ≥0 (Ω →ᵇ ℝ≥0)) (μs i).toWeakDualBCNN) y) F
        (𝓝 (((topDualPairing ℝ≥0 (Ω →ᵇ ℝ≥0)) μ.toWeakDualBCNN) y))) ↔
    ∀ (f : Ω →ᵇ ℝ≥0), Tendsto (fun i => (μs i).toWeakDualBCNN f) F (𝓝 (μ.toWeakDualBCNN f))

tactic: rfl
state_before: Ω : Type u_1
inst✝⁶ : MeasurableSpace Ω
R : Type u_2
inst✝⁵ : SMul R ℝ≥0
inst✝⁴ : SMul R ℝ≥0∞
inst✝³ : IsScalarTower R ℝ≥0 ℝ≥0∞
inst✝² : IsScalarTower R ℝ≥0∞ ℝ≥0∞
inst✝¹ : TopologicalSpace Ω
inst✝ : OpensMeasurableSpace Ω
γ : Type u_3
F : Filter γ
μs : γ → FiniteMeasure Ω
μ : FiniteMeasure Ω
⊢ (∀ (y : Ω →ᵇ ℝ≥0),
      Tendsto (fun i => ((topDualPairing ℝ≥0 (Ω →ᵇ ℝ≥0)) (μs i).toWeakDualBCNN) y) F
        (𝓝 (((topDualPairing ℝ≥0 (Ω →ᵇ ℝ≥0)) μ.toWeakDualBCNN) y))) ↔
    ∀ (f : Ω →ᵇ ℝ≥0), Tendsto (fun i => (μs i).toWeakDualBCNN f) F (𝓝 (μ.toWeakDualBCNN f))
state_after: no goals
Theorem: TopologicalSpace.Closeds.coe_eq_singleton_of_isAtom
File: Mathlib/Topology/Sets/Closeds.lean

tactic: refine minimal_nonempty_closed_eq_singleton s.2 (coe_nonempty.2 hs.1) fun t hts ht ht' ↦ ?_
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : T0Space α
s : Closeds α
hs : IsAtom s
⊢ ∃ a, ↑s = {a}
state_after: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : T0Space α
s : Closeds α
hs : IsAtom s
t : Set α
hts : t ⊆ ↑s
ht : t.Nonempty
ht' : IsClosed t
⊢ t = ↑s

tactic: lift t to Closeds α using ht'
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : T0Space α
s : Closeds α
hs : IsAtom s
t : Set α
hts : t ⊆ ↑s
ht : t.Nonempty
ht' : IsClosed t
⊢ t = ↑s
state_after: case intro
ι : Type u_1
α : Type u_2
β : Type u_3
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : T0Space α
s : Closeds α
hs : IsAtom s
t : Closeds α
hts : ↑t ⊆ ↑s
ht : (↑t).Nonempty
⊢ ↑t = ↑s

tactic: exact SetLike.coe_injective.eq_iff.2 <| (hs.le_iff_eq <| coe_nonempty.1 ht).1 hts
state_before: case intro
ι : Type u_1
α : Type u_2
β : Type u_3
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : T0Space α
s : Closeds α
hs : IsAtom s
t : Closeds α
hts : ↑t ⊆ ↑s
ht : (↑t).Nonempty
⊢ ↑t = ↑s
state_after: no goals
Theorem: Path.reparam_id
File: Mathlib/Topology/Connected/PathConnected.lean

tactic: ext
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
⊢ γ.reparam id ⋯ ⋯ ⋯ = γ
state_after: case a.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
x✝ : ↑I
⊢ (γ.reparam id ⋯ ⋯ ⋯) x✝ = γ x✝

tactic: rfl
state_before: case a.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
x✝ : ↑I
⊢ (γ.reparam id ⋯ ⋯ ⋯) x✝ = γ x✝
state_after: no goals
Theorem: ProbabilityTheory.integral_gaussianPDFReal_eq_one
File: Mathlib/Probability/Distributions/Gaussian.lean

tactic: have h := lintegral_gaussianPDFReal_eq_one μ hv
state_before: μ : ℝ
v : ℝ≥0
hv : v ≠ 0
⊢ ∫ (x : ℝ), gaussianPDFReal μ v x = 1
state_after: μ : ℝ
v : ℝ≥0
hv : v ≠ 0
h : ∫⁻ (x : ℝ), ENNReal.ofReal (gaussianPDFReal μ v x) = 1
⊢ ∫ (x : ℝ), gaussianPDFReal μ v x = 1

tactic: rw [← ofReal_integral_eq_lintegral_ofReal (integrable_gaussianPDFReal _ _)
  (ae_of_all _ (gaussianPDFReal_nonneg _ _)), ← ENNReal.ofReal_one] at h
state_before: μ : ℝ
v : ℝ≥0
hv : v ≠ 0
h : ∫⁻ (x : ℝ), ENNReal.ofReal (gaussianPDFReal μ v x) = 1
⊢ ∫ (x : ℝ), gaussianPDFReal μ v x = 1
state_after: μ : ℝ
v : ℝ≥0
hv : v ≠ 0
h : ENNReal.ofReal (∫ (x : ℝ), gaussianPDFReal μ v x) = ENNReal.ofReal 1
⊢ ∫ (x : ℝ), gaussianPDFReal μ v x = 1

tactic: rwa [← ENNReal.ofReal_eq_ofReal_iff (integral_nonneg (gaussianPDFReal_nonneg _ _)) zero_le_one]
state_before: μ : ℝ
v : ℝ≥0
hv : v ≠ 0
h : ENNReal.ofReal (∫ (x : ℝ), gaussianPDFReal μ v x) = ENNReal.ofReal 1
⊢ ∫ (x : ℝ), gaussianPDFReal μ v x = 1
state_after: no goals
Theorem: Finset.mem_fin
File: Mathlib/Data/Finset/Image.lean

tactic: simp [Finset.fin, ha, and_comm]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
n : ℕ
s : Finset ℕ
a : ℕ
ha : a < n
⊢ ⟨a, ha⟩ ∈ Finset.fin n s ↔ ↑⟨a, ha⟩ ∈ s
state_after: no goals
Theorem: ContinuousMap.Homotopy.extend_apply_of_one_le
File: Mathlib/Topology/Homotopy/Basic.lean

tactic: rw [← F.apply_one]
state_before: F✝ : Type u_1
X : Type u
Y : Type v
Z : Type w
Z' : Type x
ι : Type u_2
inst✝³ : TopologicalSpace X
inst✝² : TopologicalSpace Y
inst✝¹ : TopologicalSpace Z
inst✝ : TopologicalSpace Z'
f₀ f₁ : C(X, Y)
F : f₀.Homotopy f₁
t : ℝ
ht : 1 ≤ t
x : X
⊢ (F.extend t) x = f₁ x
state_after: F✝ : Type u_1
X : Type u
Y : Type v
Z : Type w
Z' : Type x
ι : Type u_2
inst✝³ : TopologicalSpace X
inst✝² : TopologicalSpace Y
inst✝¹ : TopologicalSpace Z
inst✝ : TopologicalSpace Z'
f₀ f₁ : C(X, Y)
F : f₀.Homotopy f₁
t : ℝ
ht : 1 ≤ t
x : X
⊢ (F.extend t) x = F (1, x)

tactic: exact ContinuousMap.congr_fun (Set.IccExtend_of_right_le (zero_le_one' ℝ) F.curry ht) x
state_before: F✝ : Type u_1
X : Type u
Y : Type v
Z : Type w
Z' : Type x
ι : Type u_2
inst✝³ : TopologicalSpace X
inst✝² : TopologicalSpace Y
inst✝¹ : TopologicalSpace Z
inst✝ : TopologicalSpace Z'
f₀ f₁ : C(X, Y)
F : f₀.Homotopy f₁
t : ℝ
ht : 1 ≤ t
x : X
⊢ (F.extend t) x = F (1, x)
state_after: no goals
Theorem: ContinuousLinearMap.adjointAux_inner_left
File: Mathlib/Analysis/InnerProductSpace/Adjoint.lean

tactic: rw [adjointAux_apply, toDual_symm_apply, toSesqForm_apply_coe, coe_comp', innerSL_apply_coe,
  Function.comp_apply]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁸ : RCLike 𝕜
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedAddCommGroup G
inst✝⁴ : InnerProductSpace 𝕜 E
inst✝³ : InnerProductSpace 𝕜 F
inst✝² : InnerProductSpace 𝕜 G
inst✝¹ : CompleteSpace E
inst✝ : CompleteSpace G
A : E →L[𝕜] F
x : E
y : F
⊢ ⟪(adjointAux A) y, x⟫_𝕜 = ⟪y, A x⟫_𝕜
state_after: no goals
Theorem: WithBot.mul_coe_eq_bind
File: Mathlib/Algebra/Order/Ring/WithTop.lean

tactic: simp only [ne_eq, coe_eq_zero, hb, not_false_eq_true, bot_mul]
state_before: α : Type u_1
inst✝¹ : DecidableEq α
inst✝ : MulZeroClass α
a b✝ : WithBot α
b : α
hb : b ≠ 0
⊢ ⊥ * ↑b = Option.bind ⊥ fun a => Option.some (a * b)
state_after: α : Type u_1
inst✝¹ : DecidableEq α
inst✝ : MulZeroClass α
a b✝ : WithBot α
b : α
hb : b ≠ 0
⊢ ⊥ = Option.bind ⊥ fun a => Option.some (a * b)

tactic: rfl
state_before: α : Type u_1
inst✝¹ : DecidableEq α
inst✝ : MulZeroClass α
a b✝ : WithBot α
b : α
hb : b ≠ 0
⊢ ⊥ = Option.bind ⊥ fun a => Option.some (a * b)
state_after: no goals
Theorem: List.formPerm_apply_get
File: Mathlib/GroupTheory/Perm/List.lean

tactic: simp [formPerm_apply_getElem, h]
state_before: α : Type u_1
β : Type u_2
inst✝ : DecidableEq α
l : List α
x : α
xs : List α
h : xs.Nodup
i : Fin xs.length
⊢ xs.formPerm (xs.get i) = xs.get ⟨(↑i + 1) % xs.length, ⋯⟩
state_after: no goals
Theorem: LaurentPolynomial.involutive_invert
File: Mathlib/Algebra/Polynomial/Laurent.lean

tactic: ext
state_before: R✝ : Type u_1
R : Type u_2
inst✝ : CommSemiring R
x✝ : R[T;T⁻¹]
⊢ invert (invert x✝) = x✝
state_after: case h
R✝ : Type u_1
R : Type u_2
inst✝ : CommSemiring R
x✝ : R[T;T⁻¹]
a✝ : ℤ
⊢ (invert (invert x✝)) a✝ = x✝ a✝

tactic: simp
state_before: case h
R✝ : Type u_1
R : Type u_2
inst✝ : CommSemiring R
x✝ : R[T;T⁻¹]
a✝ : ℤ
⊢ (invert (invert x✝)) a✝ = x✝ a✝
state_after: no goals
Theorem: IsSimpleModule.nontrivial
File: Mathlib/RingTheory/SimpleModule.lean

tactic: have h : (⊥ : Submodule R M) ≠ ⊤ := bot_ne_top
state_before: ι : Type u_1
R : Type u_2
S : Type u_3
inst✝⁴ : Ring R
inst✝³ : Ring S
M : Type u_4
inst✝² : AddCommGroup M
inst✝¹ : Module R M
inst✝ : IsSimpleModule R M
⊢ ∃ y, 0 ≠ y
state_after: ι : Type u_1
R : Type u_2
S : Type u_3
inst✝⁴ : Ring R
inst✝³ : Ring S
M : Type u_4
inst✝² : AddCommGroup M
inst✝¹ : Module R M
inst✝ : IsSimpleModule R M
h : ⊥ ≠ ⊤
⊢ ∃ y, 0 ≠ y

tactic: contrapose! h
state_before: ι : Type u_1
R : Type u_2
S : Type u_3
inst✝⁴ : Ring R
inst✝³ : Ring S
M : Type u_4
inst✝² : AddCommGroup M
inst✝¹ : Module R M
inst✝ : IsSimpleModule R M
h : ⊥ ≠ ⊤
⊢ ∃ y, 0 ≠ y
state_after: ι : Type u_1
R : Type u_2
S : Type u_3
inst✝⁴ : Ring R
inst✝³ : Ring S
M : Type u_4
inst✝² : AddCommGroup M
inst✝¹ : Module R M
inst✝ : IsSimpleModule R M
h : ∀ (y : M), 0 = y
⊢ ⊥ = ⊤

tactic: ext x
state_before: ι : Type u_1
R : Type u_2
S : Type u_3
inst✝⁴ : Ring R
inst✝³ : Ring S
M : Type u_4
inst✝² : AddCommGroup M
inst✝¹ : Module R M
inst✝ : IsSimpleModule R M
h : ∀ (y : M), 0 = y
⊢ ⊥ = ⊤
state_after: case h
ι : Type u_1
R : Type u_2
S : Type u_3
inst✝⁴ : Ring R
inst✝³ : Ring S
M : Type u_4
inst✝² : AddCommGroup M
inst✝¹ : Module R M
inst✝ : IsSimpleModule R M
h : ∀ (y : M), 0 = y
x : M
⊢ x ∈ ⊥ ↔ x ∈ ⊤

tactic: simp [Submodule.mem_bot, Submodule.mem_top, h x]
state_before: case h
ι : Type u_1
R : Type u_2
S : Type u_3
inst✝⁴ : Ring R
inst✝³ : Ring S
M : Type u_4
inst✝² : AddCommGroup M
inst✝¹ : Module R M
inst✝ : IsSimpleModule R M
h : ∀ (y : M), 0 = y
x : M
⊢ x ∈ ⊥ ↔ x ∈ ⊤
state_after: no goals
Theorem: le_mul_of_le_one_right
File: Mathlib/Algebra/Order/Ring/Defs.lean

tactic: simpa only [mul_one] using mul_le_mul_of_nonpos_left h ha
state_before: α : Type u
β : Type u_1
inst✝² : OrderedSemiring α
a b c d : α
inst✝¹ : ExistsAddOfLE α
inst✝ : ContravariantClass α α (swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1
ha : a ≤ 0
h : b ≤ 1
⊢ a ≤ a * b
state_after: no goals
Theorem: MeasureTheory.IsStoppingTime.measurableSet_ge_of_countable_range
File: Mathlib/Probability/Process/Stopping.lean

tactic: have : {ω | i ≤ τ ω} = {ω | τ ω < i}ᶜ := by
  ext1 ω; simp only [Set.mem_setOf_eq, Set.mem_compl_iff, not_lt]
state_before: Ω : Type u_1
β : Type u_2
ι✝ : Type u_3
m : MeasurableSpace Ω
inst✝¹ : PartialOrder ι✝
τ✝ : Ω → ι✝
f✝ : Filtration ι✝ m
ι : Type u_4
inst✝ : LinearOrder ι
τ : Ω → ι
f : Filtration ι m
hτ : IsStoppingTime f τ
h_countable : (Set.range τ).Countable
i : ι
⊢ MeasurableSet {ω | i ≤ τ ω}
state_after: Ω : Type u_1
β : Type u_2
ι✝ : Type u_3
m : MeasurableSpace Ω
inst✝¹ : PartialOrder ι✝
τ✝ : Ω → ι✝
f✝ : Filtration ι✝ m
ι : Type u_4
inst✝ : LinearOrder ι
τ : Ω → ι
f : Filtration ι m
hτ : IsStoppingTime f τ
h_countable : (Set.range τ).Countable
i : ι
this : {ω | i ≤ τ ω} = {ω | τ ω < i}ᶜ
⊢ MeasurableSet {ω | i ≤ τ ω}

tactic: rw [this]
state_before: Ω : Type u_1
β : Type u_2
ι✝ : Type u_3
m : MeasurableSpace Ω
inst✝¹ : PartialOrder ι✝
τ✝ : Ω → ι✝
f✝ : Filtration ι✝ m
ι : Type u_4
inst✝ : LinearOrder ι
τ : Ω → ι
f : Filtration ι m
hτ : IsStoppingTime f τ
h_countable : (Set.range τ).Countable
i : ι
this : {ω | i ≤ τ ω} = {ω | τ ω < i}ᶜ
⊢ MeasurableSet {ω | i ≤ τ ω}
state_after: Ω : Type u_1
β : Type u_2
ι✝ : Type u_3
m : MeasurableSpace Ω
inst✝¹ : PartialOrder ι✝
τ✝ : Ω → ι✝
f✝ : Filtration ι✝ m
ι : Type u_4
inst✝ : LinearOrder ι
τ : Ω → ι
f : Filtration ι m
hτ : IsStoppingTime f τ
h_countable : (Set.range τ).Countable
i : ι
this : {ω | i ≤ τ ω} = {ω | τ ω < i}ᶜ
⊢ MeasurableSet {ω | τ ω < i}ᶜ

tactic: exact (hτ.measurableSet_lt_of_countable_range h_countable i).compl
state_before: Ω : Type u_1
β : Type u_2
ι✝ : Type u_3
m : MeasurableSpace Ω
inst✝¹ : PartialOrder ι✝
τ✝ : Ω → ι✝
f✝ : Filtration ι✝ m
ι : Type u_4
inst✝ : LinearOrder ι
τ : Ω → ι
f : Filtration ι m
hτ : IsStoppingTime f τ
h_countable : (Set.range τ).Countable
i : ι
this : {ω | i ≤ τ ω} = {ω | τ ω < i}ᶜ
⊢ MeasurableSet {ω | τ ω < i}ᶜ
state_after: no goals

tactic: ext1 ω
state_before: Ω : Type u_1
β : Type u_2
ι✝ : Type u_3
m : MeasurableSpace Ω
inst✝¹ : PartialOrder ι✝
τ✝ : Ω → ι✝
f✝ : Filtration ι✝ m
ι : Type u_4
inst✝ : LinearOrder ι
τ : Ω → ι
f : Filtration ι m
hτ : IsStoppingTime f τ
h_countable : (Set.range τ).Countable
i : ι
⊢ {ω | i ≤ τ ω} = {ω | τ ω < i}ᶜ
state_after: case h
Ω : Type u_1
β : Type u_2
ι✝ : Type u_3
m : MeasurableSpace Ω
inst✝¹ : PartialOrder ι✝
τ✝ : Ω → ι✝
f✝ : Filtration ι✝ m
ι : Type u_4
inst✝ : LinearOrder ι
τ : Ω → ι
f : Filtration ι m
hτ : IsStoppingTime f τ
h_countable : (Set.range τ).Countable
i : ι
ω : Ω
⊢ ω ∈ {ω | i ≤ τ ω} ↔ ω ∈ {ω | τ ω < i}ᶜ

tactic: simp only [Set.mem_setOf_eq, Set.mem_compl_iff, not_lt]
state_before: case h
Ω : Type u_1
β : Type u_2
ι✝ : Type u_3
m : MeasurableSpace Ω
inst✝¹ : PartialOrder ι✝
τ✝ : Ω → ι✝
f✝ : Filtration ι✝ m
ι : Type u_4
inst✝ : LinearOrder ι
τ : Ω → ι
f : Filtration ι m
hτ : IsStoppingTime f τ
h_countable : (Set.range τ).Countable
i : ι
ω : Ω
⊢ ω ∈ {ω | i ≤ τ ω} ↔ ω ∈ {ω | τ ω < i}ᶜ
state_after: no goals
Theorem: inf_sdiff_eq_bot_iff
File: Mathlib/Order/BooleanAlgebra.lean

tactic: rw [← disjoint_iff]
state_before: α : Type u
β : Type u_1
w x y z : α
inst✝ : GeneralizedBooleanAlgebra α
hz : z ≤ y
hx : x ≤ y
⊢ z ⊓ y \ x = ⊥ ↔ z ≤ x
state_after: α : Type u
β : Type u_1
w x y z : α
inst✝ : GeneralizedBooleanAlgebra α
hz : z ≤ y
hx : x ≤ y
⊢ Disjoint z (y \ x) ↔ z ≤ x

tactic: exact disjoint_sdiff_iff_le hz hx
state_before: α : Type u
β : Type u_1
w x y z : α
inst✝ : GeneralizedBooleanAlgebra α
hz : z ≤ y
hx : x ≤ y
⊢ Disjoint z (y \ x) ↔ z ≤ x
state_after: no goals
Theorem: pow_eq_neg_pow_iff
File: Mathlib/Algebra/Order/Ring/Abs.lean

tactic: simpa [he] using this.ne'
state_before: α : Type u_1
R : Type u_2
inst✝ : LinearOrderedRing R
a b : R
n : ℕ
hb : b ≠ 0
he : Even n
this : a ^ n > -b ^ n
⊢ a ^ n = -b ^ n ↔ a = -b ∧ Odd n
state_after: no goals

tactic: simp [he.pow_pos hb]
state_before: α : Type u_1
R : Type u_2
inst✝ : LinearOrderedRing R
a b : R
n : ℕ
hb : b ≠ 0
he : Even n
⊢ -b ^ n < 0
state_after: no goals

tactic: simp only [ho, and_true, ← ho.neg_pow, (ho.strictMono_pow (R := R)).injective.eq_iff]
state_before: α : Type u_1
R : Type u_2
inst✝ : LinearOrderedRing R
a b : R
n : ℕ
hb : b ≠ 0
ho : Odd n
⊢ a ^ n = -b ^ n ↔ a = -b ∧ Odd n
state_after: no goals
Theorem: fg_adjoin_of_finite
File: Mathlib/RingTheory/IntegralClosure.lean

tactic: rw [Algebra.adjoin_empty, Finset.coe_singleton, ← one_eq_span, Algebra.toSubmodule_bot]
state_before: R : Type u_1
A : Type u_2
B : Type u_3
S : Type u_4
inst✝⁵ : CommRing R
inst✝⁴ : CommRing A
inst✝³ : Ring B
inst✝² : CommRing S
inst✝¹ : Algebra R A
inst✝ : Algebra R B
f : R →+* S
s : Set A
hfs : s.Finite
his : ∀ x ∈ s, IsIntegral R x
x✝ : ∀ x ∈ ∅, IsIntegral R x
x : A
⊢ x ∈ span R ↑{1} ↔ x ∈ Subalgebra.toSubmodule (Algebra.adjoin R ∅)
state_after: no goals

tactic: rw [← Set.union_singleton, Algebra.adjoin_union_coe_submodule]
state_before: R : Type u_1
A : Type u_2
B : Type u_3
S : Type u_4
inst✝⁵ : CommRing R
inst✝⁴ : CommRing A
inst✝³ : Ring B
inst✝² : CommRing S
inst✝¹ : Algebra R A
inst✝ : Algebra R B
f : R →+* S
s✝ : Set A
hfs : s✝.Finite
his✝ : ∀ x ∈ s✝, IsIntegral R x
a : A
s : Set A
x✝¹ : a ∉ s
x✝ : s.Finite
ih : (∀ x ∈ s, IsIntegral R x) → (Subalgebra.toSubmodule (Algebra.adjoin R s)).FG
his : ∀ x ∈ insert a s, IsIntegral R x
⊢ (Subalgebra.toSubmodule (Algebra.adjoin R (insert a s))).FG
state_after: R : Type u_1
A : Type u_2
B : Type u_3
S : Type u_4
inst✝⁵ : CommRing R
inst✝⁴ : CommRing A
inst✝³ : Ring B
inst✝² : CommRing S
inst✝¹ : Algebra R A
inst✝ : Algebra R B
f : R →+* S
s✝ : Set A
hfs : s✝.Finite
his✝ : ∀ x ∈ s✝, IsIntegral R x
a : A
s : Set A
x✝¹ : a ∉ s
x✝ : s.Finite
ih : (∀ x ∈ s, IsIntegral R x) → (Subalgebra.toSubmodule (Algebra.adjoin R s)).FG
his : ∀ x ∈ insert a s, IsIntegral R x
⊢ (Subalgebra.toSubmodule (Algebra.adjoin R s) * Subalgebra.toSubmodule (Algebra.adjoin R {a})).FG

tactic: exact
  FG.mul (ih fun i hi => his i <| Set.mem_insert_of_mem a hi)
    (his a <| Set.mem_insert a s).fg_adjoin_singleton
state_before: R : Type u_1
A : Type u_2
B : Type u_3
S : Type u_4
inst✝⁵ : CommRing R
inst✝⁴ : CommRing A
inst✝³ : Ring B
inst✝² : CommRing S
inst✝¹ : Algebra R A
inst✝ : Algebra R B
f : R →+* S
s✝ : Set A
hfs : s✝.Finite
his✝ : ∀ x ∈ s✝, IsIntegral R x
a : A
s : Set A
x✝¹ : a ∉ s
x✝ : s.Finite
ih : (∀ x ∈ s, IsIntegral R x) → (Subalgebra.toSubmodule (Algebra.adjoin R s)).FG
his : ∀ x ∈ insert a s, IsIntegral R x
⊢ (Subalgebra.toSubmodule (Algebra.adjoin R s) * Subalgebra.toSubmodule (Algebra.adjoin R {a})).FG
state_after: no goals
Theorem: WType.rightInverse_nat
File: Mathlib/Data/W/Constructions.lean

tactic: rw [ofNat, toNat, rightInverse_nat n]
state_before: n : ℕ
⊢ (ofNat n.succ).toNat = n.succ
state_after: no goals
Theorem: inv_eq_one_divp'
File: Mathlib/Algebra/Group/Units.lean

tactic: rw [one_div, one_divp]
state_before: α : Type u
inst✝ : Monoid α
a b c : α
u : αˣ
⊢ ↑(1 / u) = 1 /ₚ u
state_after: no goals
Theorem: ProbabilityTheory.kernel.IsFiniteKernel.integrable
File: Mathlib/Probability/Kernel/Basic.lean

tactic: refine Integrable.mono' (integrable_const (IsFiniteKernel.bound κ).toReal)
  ((kernel.measurable_coe κ hs).ennreal_toReal.aestronglyMeasurable)
  (ae_of_all μ fun x => ?_)
state_before: α : Type u_1
β : Type u_2
ι : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
κ✝ : ↥(kernel α β)
μ : Measure α
inst✝¹ : IsFiniteMeasure μ
κ : ↥(kernel α β)
inst✝ : IsFiniteKernel κ
s : Set β
hs : MeasurableSet s
⊢ Integrable (fun x => ((κ x) s).toReal) μ
state_after: α : Type u_1
β : Type u_2
ι : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
κ✝ : ↥(kernel α β)
μ : Measure α
inst✝¹ : IsFiniteMeasure μ
κ : ↥(kernel α β)
inst✝ : IsFiniteKernel κ
s : Set β
hs : MeasurableSet s
x : α
⊢ ‖((κ x) s).toReal‖ ≤ (IsFiniteKernel.bound κ).toReal

tactic: rw [Real.norm_eq_abs, abs_of_nonneg ENNReal.toReal_nonneg,
  ENNReal.toReal_le_toReal (measure_ne_top _ _) (IsFiniteKernel.bound_ne_top _)]
state_before: α : Type u_1
β : Type u_2
ι : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
κ✝ : ↥(kernel α β)
μ : Measure α
inst✝¹ : IsFiniteMeasure μ
κ : ↥(kernel α β)
inst✝ : IsFiniteKernel κ
s : Set β
hs : MeasurableSet s
x : α
⊢ ‖((κ x) s).toReal‖ ≤ (IsFiniteKernel.bound κ).toReal
state_after: α : Type u_1
β : Type u_2
ι : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
κ✝ : ↥(kernel α β)
μ : Measure α
inst✝¹ : IsFiniteMeasure μ
κ : ↥(kernel α β)
inst✝ : IsFiniteKernel κ
s : Set β
hs : MeasurableSet s
x : α
⊢ (κ x) s ≤ IsFiniteKernel.bound κ

tactic: exact kernel.measure_le_bound _ _ _
state_before: α : Type u_1
β : Type u_2
ι : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
κ✝ : ↥(kernel α β)
μ : Measure α
inst✝¹ : IsFiniteMeasure μ
κ : ↥(kernel α β)
inst✝ : IsFiniteKernel κ
s : Set β
hs : MeasurableSet s
x : α
⊢ (κ x) s ≤ IsFiniteKernel.bound κ
state_after: no goals
Theorem: isCoatomic_dual_iff_isAtomic
File: Mathlib/Order/Atoms.lean

tactic: apply h.eq_top_or_exists_le_coatom
state_before: ι : Sort u_1
α : Type u_2
β : Type u_3
inst✝¹ : PartialOrder α
inst✝ : OrderBot α
h : IsCoatomic αᵒᵈ
b : α
⊢ b = ⊥ ∨ ∃ a, IsAtom a ∧ a ≤ b
state_after: no goals

tactic: apply h.eq_bot_or_exists_atom_le
state_before: ι : Sort u_1
α : Type u_2
β : Type u_3
inst✝¹ : PartialOrder α
inst✝ : OrderBot α
h : IsAtomic α
b : αᵒᵈ
⊢ b = ⊤ ∨ ∃ a, IsCoatom a ∧ b ≤ a
state_after: no goals
Theorem: hasStrictFDerivAt_multiset_prod
File: Mathlib/Analysis/Calculus/FDeriv/Mul.lean

tactic: simpa using hasStrictFDerivAt_list_prod
state_before: 𝕜 : 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
ι : Type u_6
𝔸 : Type u_7
𝔸' : Type u_8
inst✝⁵ : NormedRing 𝔸
inst✝⁴ : NormedCommRing 𝔸'
inst✝³ : NormedAlgebra 𝕜 𝔸
inst✝² : NormedAlgebra 𝕜 𝔸'
u✝ : Finset ι
f : ι → E → 𝔸
f' : ι → E →L[𝕜] 𝔸
g : ι → E → 𝔸'
g' : ι → E →L[𝕜] 𝔸'
inst✝¹ : DecidableEq ι
inst✝ : Fintype ι
u : Multiset ι
x : ι → 𝔸'
l : List ι
⊢ HasStrictFDerivAt (fun x => (Multiset.map x ⟦l⟧).prod)
    (Multiset.map (fun i => (Multiset.map x (Multiset.erase ⟦l⟧ i)).prod • proj i) ⟦l⟧).sum x
state_after: no goals
Theorem: MeasureTheory.exists_integral_le
File: Mathlib/MeasureTheory/Integral/Average.lean

tactic: simpa only [average_eq_integral] using exists_average_le (IsProbabilityMeasure.ne_zero μ) hf
state_before: α : Type u_1
E : Type u_2
F : Type u_3
m0 : MeasurableSpace α
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace ℝ F
inst✝¹ : CompleteSpace F
μ ν : Measure α
s t N : Set α
f : α → ℝ
inst✝ : IsProbabilityMeasure μ
hf : Integrable f μ
⊢ ∃ x, ∫ (a : α), f a ∂μ ≤ f x
state_after: no goals
Theorem: EuclideanDomain.lt_one
File: Mathlib/Algebra/EuclideanDomain/Defs.lean

tactic: simpa only [one_mul] using mul_left_not_lt 1 h
state_before: R : Type u
inst✝ : EuclideanDomain R
a : R
this : (p : Prop) → Decidable p
h : ¬a = 0
⊢ ¬a ≺ 1
state_after: no goals