1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: MeasurableEquiv.gaussianReal_map_symm_apply
File: Mathlib/Probability/Distributions/Gaussian.lean

tactic: rw [gaussianReal_of_var_ne_zero _ hv, gaussianPDF_def]
state_before: μ : ℝ
v : ℝ≥0
hv : v ≠ 0
f : ℝ ≃ᵐ ℝ
f' : ℝ → ℝ
h_deriv : ∀ (x : ℝ), HasDerivAt (⇑f) (f' x) x
s : Set ℝ
hs : MeasurableSet s
⊢ (Measure.map (⇑f.symm) (gaussianReal μ v)) s = ENNReal.ofReal (∫ (x : ℝ) in s, |f' x| * gaussianPDFReal μ v (f x))
state_after: μ : ℝ
v : ℝ≥0
hv : v ≠ 0
f : ℝ ≃ᵐ ℝ
f' : ℝ → ℝ
h_deriv : ∀ (x : ℝ), HasDerivAt (⇑f) (f' x) x
s : Set ℝ
hs : MeasurableSet s
⊢ (Measure.map (⇑f.symm) (ℙ.withDensity fun x => ENNReal.ofReal (gaussianPDFReal μ v x))) s =
    ENNReal.ofReal (∫ (x : ℝ) in s, |f' x| * gaussianPDFReal μ v (f x))

tactic: exact f.withDensity_ofReal_map_symm_apply_eq_integral_abs_deriv_mul' hs h_deriv
  (ae_of_all _ (gaussianPDFReal_nonneg _ _)) (integrable_gaussianPDFReal _ _)
state_before: μ : ℝ
v : ℝ≥0
hv : v ≠ 0
f : ℝ ≃ᵐ ℝ
f' : ℝ → ℝ
h_deriv : ∀ (x : ℝ), HasDerivAt (⇑f) (f' x) x
s : Set ℝ
hs : MeasurableSet s
⊢ (Measure.map (⇑f.symm) (ℙ.withDensity fun x => ENNReal.ofReal (gaussianPDFReal μ v x))) s =
    ENNReal.ofReal (∫ (x : ℝ) in s, |f' x| * gaussianPDFReal μ v (f x))
state_after: no goals
Theorem: PFunctor.Approx.agree_children
File: Mathlib/Data/PFunctor/Univariate/M.lean

tactic: cases' h₁ with _ _ _ _ _ _ hagree
state_before: F : PFunctor.{u}
n : ℕ
x : CofixA F n.succ
y : CofixA F (n.succ + 1)
i : F.B (head' x)
j : F.B (head' y)
h₀ : HEq i j
h₁ : Agree x y
⊢ Agree (children' x i) (children' y j)
state_after: case intro
F : PFunctor.{u}
n : ℕ
a✝ : F.A
x✝ : F.B a✝ → CofixA F n
x'✝ : F.B a✝ → CofixA F (n + 1)
hagree : ∀ (i : F.B a✝), Agree (x✝ i) (x'✝ i)
i : F.B (head' (CofixA.intro a✝ x✝))
j : F.B (head' (CofixA.intro a✝ x'✝))
h₀ : HEq i j
⊢ Agree (children' (CofixA.intro a✝ x✝) i) (children' (CofixA.intro a✝ x'✝) j)

tactic: cases h₀
state_before: case intro
F : PFunctor.{u}
n : ℕ
a✝ : F.A
x✝ : F.B a✝ → CofixA F n
x'✝ : F.B a✝ → CofixA F (n + 1)
hagree : ∀ (i : F.B a✝), Agree (x✝ i) (x'✝ i)
i : F.B (head' (CofixA.intro a✝ x✝))
j : F.B (head' (CofixA.intro a✝ x'✝))
h₀ : HEq i j
⊢ Agree (children' (CofixA.intro a✝ x✝) i) (children' (CofixA.intro a✝ x'✝) j)
state_after: case intro.refl
F : PFunctor.{u}
n : ℕ
a✝ : F.A
x✝ : F.B a✝ → CofixA F n
x'✝ : F.B a✝ → CofixA F (n + 1)
hagree : ∀ (i : F.B a✝), Agree (x✝ i) (x'✝ i)
i : F.B (head' (CofixA.intro a✝ x✝))
⊢ Agree (children' (CofixA.intro a✝ x✝) i) (children' (CofixA.intro a✝ x'✝) i)

tactic: apply hagree
state_before: case intro.refl
F : PFunctor.{u}
n : ℕ
a✝ : F.A
x✝ : F.B a✝ → CofixA F n
x'✝ : F.B a✝ → CofixA F (n + 1)
hagree : ∀ (i : F.B a✝), Agree (x✝ i) (x'✝ i)
i : F.B (head' (CofixA.intro a✝ x✝))
⊢ Agree (children' (CofixA.intro a✝ x✝) i) (children' (CofixA.intro a✝ x'✝) i)
state_after: no goals
Theorem: MonoidHom.mrange_top_iff_surjective
File: Mathlib/Algebra/Group/Submonoid/Operations.lean

tactic: rw [coe_mrange, coe_top]
state_before: M : Type u_1
N : Type u_2
P : Type u_3
inst✝⁴ : MulOneClass M
inst✝³ : MulOneClass N
inst✝² : MulOneClass P
S : Submonoid M
A : Type u_4
inst✝¹ : SetLike A M
hA : SubmonoidClass A M
S' : A
F : Type u_5
inst✝ : FunLike F M N
mc : MonoidHomClass F M N
f : F
⊢ ↑(mrange f) = ↑⊤ ↔ Set.range ⇑f = Set.univ
state_after: no goals
Theorem: Finset.erase_sdiff_erase
File: Mathlib/Data/Finset/Basic.lean

tactic: ext
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
inst✝ : DecidableEq α
s t u v : Finset α
a b : α
hab : a ≠ b
hb : b ∈ s
⊢ s.erase a \ s.erase b = {b}
state_after: case a
α : Type u_1
β : Type u_2
γ : Type u_3
inst✝ : DecidableEq α
s t u v : Finset α
a b : α
hab : a ≠ b
hb : b ∈ s
a✝ : α
⊢ a✝ ∈ s.erase a \ s.erase b ↔ a✝ ∈ {b}

tactic: aesop
state_before: case a
α : Type u_1
β : Type u_2
γ : Type u_3
inst✝ : DecidableEq α
s t u v : Finset α
a b : α
hab : a ≠ b
hb : b ∈ s
a✝ : α
⊢ a✝ ∈ s.erase a \ s.erase b ↔ a✝ ∈ {b}
state_after: no goals
Theorem: RingEquiv.symm_toRingHom_comp_toRingHom
File: Mathlib/Algebra/Ring/Equiv.lean

tactic: ext
state_before: F : Type u_1
α : Type u_2
β : Type u_3
R : Type u_4
S : Type u_5
S' : Type u_6
inst✝² : NonAssocSemiring R
inst✝¹ : NonAssocSemiring S
inst✝ : NonAssocSemiring S'
e : R ≃+* S
⊢ e.symm.toRingHom.comp e.toRingHom = RingHom.id R
state_after: case a
F : Type u_1
α : Type u_2
β : Type u_3
R : Type u_4
S : Type u_5
S' : Type u_6
inst✝² : NonAssocSemiring R
inst✝¹ : NonAssocSemiring S
inst✝ : NonAssocSemiring S'
e : R ≃+* S
x✝ : R
⊢ (e.symm.toRingHom.comp e.toRingHom) x✝ = (RingHom.id R) x✝

tactic: simp
state_before: case a
F : Type u_1
α : Type u_2
β : Type u_3
R : Type u_4
S : Type u_5
S' : Type u_6
inst✝² : NonAssocSemiring R
inst✝¹ : NonAssocSemiring S
inst✝ : NonAssocSemiring S'
e : R ≃+* S
x✝ : R
⊢ (e.symm.toRingHom.comp e.toRingHom) x✝ = (RingHom.id R) x✝
state_after: no goals
Theorem: Set.ncard_univ
File: Mathlib/Data/Set/Card.lean

tactic: cases' finite_or_infinite α with h h
state_before: α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
⊢ univ.ncard = Nat.card α
state_after: case inl
α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
h : Finite α
⊢ univ.ncard = Nat.card α

case inr
α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
h : Infinite α
⊢ univ.ncard = Nat.card α

tactic: rw [Nat.card_eq_zero_of_infinite, Infinite.ncard]
state_before: case inr
α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
h : Infinite α
⊢ univ.ncard = Nat.card α
state_after: case inr
α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
h : Infinite α
⊢ univ.Infinite

tactic: exact infinite_univ
state_before: case inr
α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
h : Infinite α
⊢ univ.Infinite
state_after: no goals

tactic: have hft := Fintype.ofFinite α
state_before: case inl
α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
h : Finite α
⊢ univ.ncard = Nat.card α
state_after: case inl
α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
h : Finite α
hft : Fintype α
⊢ univ.ncard = Nat.card α

tactic: rw [ncard_eq_toFinset_card, Finite.toFinset_univ, Finset.card_univ, Nat.card_eq_fintype_card]
state_before: case inl
α✝ : Type u_1
β : Type u_2
s t : Set α✝
α : Type u_3
h : Finite α
hft : Fintype α
⊢ univ.ncard = Nat.card α
state_after: no goals
Theorem: ExteriorAlgebra.algebraMap_leftInverse
File: Mathlib/LinearAlgebra/ExteriorAlgebra/Basic.lean

tactic: simp [algebraMapInv]
state_before: R : Type u1
inst✝⁴ : CommRing R
M : Type u2
inst✝³ : AddCommGroup M
inst✝² : Module R M
A : Type u_1
inst✝¹ : Semiring A
inst✝ : Algebra R A
x : R
⊢ algebraMapInv ((algebraMap R (ExteriorAlgebra R M)) x) = x
state_after: no goals
Theorem: Finset.prod_erase_mul
File: Mathlib/Algebra/BigOperators/Group/Finset.lean

tactic: rw [mul_comm, mul_prod_erase s f h]
state_before: ι : Type u_1
κ : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
s✝ s₁ s₂ : Finset α
a✝ : α
f✝ g : α → β
inst✝¹ : CommMonoid β
inst✝ : DecidableEq α
s : Finset α
f : α → β
a : α
h : a ∈ s
⊢ (∏ x ∈ s.erase a, f x) * f a = ∏ x ∈ s, f x
state_after: no goals
Theorem: MeasureTheory.Integrable.measure_le_integral
File: Mathlib/MeasureTheory/Integral/SetIntegral.lean

tactic: rw [ofReal_integral_eq_lintegral_ofReal f_int f_nonneg]
state_before: X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
⊢ μ s ≤ ENNReal.ofReal (∫ (x : X), f x ∂μ)
state_after: X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
⊢ μ s ≤ ∫⁻ (x : X), ENNReal.ofReal (f x) ∂μ

tactic: apply meas_le_lintegral₀
state_before: X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
⊢ μ s ≤ ∫⁻ (x : X), ENNReal.ofReal (f x) ∂μ
state_after: case hf
X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
⊢ AEMeasurable (fun a => ENNReal.ofReal (f a)) μ

case hs
X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
⊢ ∀ x ∈ s, 1 ≤ ENNReal.ofReal (f x)

tactic: exact ENNReal.continuous_ofReal.measurable.comp_aemeasurable f_int.1.aemeasurable
state_before: case hf
X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
⊢ AEMeasurable (fun a => ENNReal.ofReal (f a)) μ
state_after: no goals

tactic: intro x hx
state_before: case hs
X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
⊢ ∀ x ∈ s, 1 ≤ ENNReal.ofReal (f x)
state_after: case hs
X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
x : X
hx : x ∈ s
⊢ 1 ≤ ENNReal.ofReal (f x)

tactic: simpa using ENNReal.ofReal_le_ofReal (hs x hx)
state_before: case hs
X : Type u_1
Y : Type u_2
E : Type u_3
F : Type u_4
inst✝ : MeasurableSpace X
μ : Measure X
f✝ : X → ℝ
s✝ : Set X
f : X → ℝ
f_int : Integrable f μ
f_nonneg : 0 ≤ᶠ[ae μ] f
s : Set X
hs : ∀ x ∈ s, 1 ≤ f x
x : X
hx : x ∈ s
⊢ 1 ≤ ENNReal.ofReal (f x)
state_after: no goals
Theorem: Ideal.IsPrime.prod_mem_iff_exists_mem
File: Mathlib/RingTheory/Ideal/Operations.lean

tactic: rw [Finset.prod_eq_multiset_prod, Multiset.map_id']
state_before: R : Type u
ι : Type u_1
inst✝ : CommSemiring R
I✝ J K L I : Ideal R
hI : I.IsPrime
s : Finset R
⊢ ∏ x ∈ s, x ∈ I ↔ ∃ p ∈ s, p ∈ I
state_after: R : Type u
ι : Type u_1
inst✝ : CommSemiring R
I✝ J K L I : Ideal R
hI : I.IsPrime
s : Finset R
⊢ s.val.prod ∈ I ↔ ∃ p ∈ s, p ∈ I

tactic: exact hI.multiset_prod_mem_iff_exists_mem s.val
state_before: R : Type u
ι : Type u_1
inst✝ : CommSemiring R
I✝ J K L I : Ideal R
hI : I.IsPrime
s : Finset R
⊢ s.val.prod ∈ I ↔ ∃ p ∈ s, p ∈ I
state_after: no goals
Theorem: TopologicalSpace.secondCountableTopology_iInf
File: Mathlib/Topology/Bases.lean

tactic: exact SecondCountableTopology.mk' <|
  countable_iUnion fun i => @countable_countableBasis _ (t i) (ht i)
state_before: α : Type u
t✝ : TopologicalSpace α
ι : Sort u_1
inst✝ : Countable ι
t : ι → TopologicalSpace α
ht : ∀ (i : ι), SecondCountableTopology α
⊢ SecondCountableTopology α
state_after: no goals
Theorem: Cardinal.IsRegular.ord_pos
File: Mathlib/SetTheory/Cardinal/Cofinality.lean

tactic: rw [Cardinal.lt_ord, card_zero]
state_before: α : Type u_1
r : α → α → Prop
c : Cardinal.{u_2}
H : c.IsRegular
⊢ 0 < c.ord
state_after: α : Type u_1
r : α → α → Prop
c : Cardinal.{u_2}
H : c.IsRegular
⊢ 0 < c

tactic: exact H.pos
state_before: α : Type u_1
r : α → α → Prop
c : Cardinal.{u_2}
H : c.IsRegular
⊢ 0 < c
state_after: no goals
Theorem: Complex.sinh_conj
File: Mathlib/Data/Complex/Exponential.lean

tactic: rw [sinh, ← RingHom.map_neg, exp_conj, exp_conj, ← RingHom.map_sub, sinh, map_div₀]
state_before: x y : ℂ
⊢ sinh ((starRingEnd ℂ) x) = (starRingEnd ℂ) (sinh x)
state_after: x y : ℂ
⊢ (starRingEnd ℂ) (cexp x - cexp (-x)) / 2 = (starRingEnd ℂ) (cexp x - cexp (-x)) / (starRingEnd ℂ) 2

tactic: simp [← one_add_one_eq_two]
state_before: x y : ℂ
⊢ (starRingEnd ℂ) (cexp x - cexp (-x)) / 2 = (starRingEnd ℂ) (cexp x - cexp (-x)) / (starRingEnd ℂ) 2
state_after: no goals
Theorem: UpperHalfPlane.dist_le_dist_coe_div_sqrt
File: Mathlib/Analysis/Complex/UpperHalfPlane/Metric.lean

tactic: rw [dist_le_iff_le_sinh, ← div_mul_eq_div_div_swap, self_le_sinh_iff]
state_before: z✝ w✝ : ℍ
r R : ℝ
z w : ℍ
⊢ dist z w ≤ dist ↑z ↑w / √(z.im * w.im)
state_after: z✝ w✝ : ℍ
r R : ℝ
z w : ℍ
⊢ 0 ≤ dist ↑z ↑w / (2 * √(z.im * w.im))

tactic: positivity
state_before: z✝ w✝ : ℍ
r R : ℝ
z w : ℍ
⊢ 0 ≤ dist ↑z ↑w / (2 * √(z.im * w.im))
state_after: no goals
Theorem: OrderIso.mulLeft₀'_symm
File: Mathlib/Algebra/Order/GroupWithZero/Canonical.lean

tactic: ext
state_before: α : Type u_1
inst✝ : LinearOrderedCommGroupWithZero α
a✝ b c d : α
m n : ℕ
a : α
ha : a ≠ 0
⊢ (mulLeft₀' ha).symm = mulLeft₀' ⋯
state_after: case h.h
α : Type u_1
inst✝ : LinearOrderedCommGroupWithZero α
a✝ b c d : α
m n : ℕ
a : α
ha : a ≠ 0
x✝ : α
⊢ (mulLeft₀' ha).symm x✝ = (mulLeft₀' ⋯) x✝

tactic: rfl
state_before: case h.h
α : Type u_1
inst✝ : LinearOrderedCommGroupWithZero α
a✝ b c d : α
m n : ℕ
a : α
ha : a ≠ 0
x✝ : α
⊢ (mulLeft₀' ha).symm x✝ = (mulLeft₀' ⋯) x✝
state_after: no goals
Theorem: MeasureTheory.Adapted.upcrossingStrat_adapted
File: Mathlib/Probability/Martingale/Upcrossing.lean

tactic: intro n
state_before: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
⊢ Adapted ℱ (upcrossingStrat a b f N)
state_after: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n✝ m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
n : ℕ
⊢ StronglyMeasurable (upcrossingStrat a b f N n)

tactic: change StronglyMeasurable[ℱ n] fun ω =>
  ∑ k ∈ Finset.range N, ({n | lowerCrossingTime a b f N k ω ≤ n} ∩
    {n | n < upperCrossingTime a b f N (k + 1) ω}).indicator 1 n
state_before: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n✝ m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
n : ℕ
⊢ StronglyMeasurable (upcrossingStrat a b f N n)
state_after: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n✝ m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
n : ℕ
⊢ StronglyMeasurable fun ω =>
    ∑ k ∈ Finset.range N,
      ({n | lowerCrossingTime a b f N k ω ≤ n} ∩ {n | n < upperCrossingTime a b f N (k + 1) ω}).indicator 1 n

tactic: refine Finset.stronglyMeasurable_sum _ fun i _ =>
  stronglyMeasurable_const.indicator ((hf.isStoppingTime_lowerCrossingTime n).inter ?_)
state_before: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n✝ m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
n : ℕ
⊢ StronglyMeasurable fun ω =>
    ∑ k ∈ Finset.range N,
      ({n | lowerCrossingTime a b f N k ω ≤ n} ∩ {n | n < upperCrossingTime a b f N (k + 1) ω}).indicator 1 n
state_after: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n✝ m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
n i : ℕ
x✝ : i ∈ Finset.range N
⊢ MeasurableSet fun ω => {n | n < upperCrossingTime a b f N (i + 1) ω} n

tactic: simp_rw [← not_le]
state_before: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n✝ m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
n i : ℕ
x✝ : i ∈ Finset.range N
⊢ MeasurableSet fun ω => {n | n < upperCrossingTime a b f N (i + 1) ω} n
state_after: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n✝ m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
n i : ℕ
x✝ : i ∈ Finset.range N
⊢ MeasurableSet fun ω => {n | ¬upperCrossingTime a b f N (i + 1) ω ≤ n} n

tactic: exact (hf.isStoppingTime_upperCrossingTime n).compl
state_before: Ω : Type u_1
ι : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
a b : ℝ
f : ℕ → Ω → ℝ
N n✝ m : ℕ
ω : Ω
ℱ : Filtration ℕ m0
hf : Adapted ℱ f
n i : ℕ
x✝ : i ∈ Finset.range N
⊢ MeasurableSet fun ω => {n | ¬upperCrossingTime a b f N (i + 1) ω ≤ n} n
state_after: no goals
Theorem: Nat.fib_gcd
File: Mathlib/Data/Nat/Fib/Basic.lean

tactic: induction m, n using Nat.gcd.induction with
| H0 => simp
| H1 m n _ h' =>
  rw [← gcd_rec m n] at h'
  conv_rhs => rw [← mod_add_div' n m]
  rwa [gcd_fib_add_mul_self m (n % m) (n / m), gcd_comm (fib m) _]
state_before: m n : ℕ
⊢ fib (m.gcd n) = (fib m).gcd (fib n)
state_after: no goals

tactic: simp
state_before: case H0
n✝ : ℕ
⊢ fib (gcd 0 n✝) = (fib 0).gcd (fib n✝)
state_after: no goals

tactic: rw [← gcd_rec m n] at h'
state_before: case H1
m n : ℕ
a✝ : 0 < m
h' : fib ((n % m).gcd m) = (fib (n % m)).gcd (fib m)
⊢ fib (m.gcd n) = (fib m).gcd (fib n)
state_after: case H1
m n : ℕ
a✝ : 0 < m
h' : fib (m.gcd n) = (fib (n % m)).gcd (fib m)
⊢ fib (m.gcd n) = (fib m).gcd (fib n)

tactic: conv_rhs => rw [← mod_add_div' n m]
state_before: case H1
m n : ℕ
a✝ : 0 < m
h' : fib (m.gcd n) = (fib (n % m)).gcd (fib m)
⊢ fib (m.gcd n) = (fib m).gcd (fib n)
state_after: case H1
m n : ℕ
a✝ : 0 < m
h' : fib (m.gcd n) = (fib (n % m)).gcd (fib m)
⊢ fib (m.gcd n) = (fib m).gcd (fib (n % m + n / m * m))

tactic: rwa [gcd_fib_add_mul_self m (n % m) (n / m), gcd_comm (fib m) _]
state_before: case H1
m n : ℕ
a✝ : 0 < m
h' : fib (m.gcd n) = (fib (n % m)).gcd (fib m)
⊢ fib (m.gcd n) = (fib m).gcd (fib (n % m + n / m * m))
state_after: no goals
Theorem: Asymptotics.SuperpolynomialDecay.mul_const
File: Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean

tactic: simpa only [← mul_assoc, zero_mul] using Tendsto.mul_const c (hf z)
state_before: α : Type u_1
β : Type u_2
l : Filter α
k f g g' : α → β
inst✝² : TopologicalSpace β
inst✝¹ : CommSemiring β
inst✝ : ContinuousMul β
hf : SuperpolynomialDecay l k f
c : β
z : ℕ
⊢ Tendsto (fun a => k a ^ z * (fun n => f n * c) a) l (𝓝 0)
state_after: no goals
Theorem: Bimod.whiskerLeft_comp_bimod
File: Mathlib/CategoryTheory/Monoidal/Bimod.lean

tactic: ext
state_before: C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
X Y Z : Mon_ C
M : Bimod X Y
N P Q : Bimod Y Z
f : N ⟶ P
g : P ⟶ Q
⊢ M.whiskerLeft (f ≫ g) = M.whiskerLeft f ≫ M.whiskerLeft g
state_after: case h
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
X Y Z : Mon_ C
M : Bimod X Y
N P Q : Bimod Y Z
f : N ⟶ P
g : P ⟶ Q
⊢ (M.whiskerLeft (f ≫ g)).hom = (M.whiskerLeft f ≫ M.whiskerLeft g).hom

tactic: apply Limits.coequalizer.hom_ext
state_before: case h
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
X Y Z : Mon_ C
M : Bimod X Y
N P Q : Bimod Y Z
f : N ⟶ P
g : P ⟶ Q
⊢ (M.whiskerLeft (f ≫ g)).hom = (M.whiskerLeft f ≫ M.whiskerLeft g).hom
state_after: case h.h
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
X Y Z : Mon_ C
M : Bimod X Y
N P Q : Bimod Y Z
f : N ⟶ P
g : P ⟶ Q
⊢ coequalizer.π (M.actRight ▷ N.X) ((α_ M.X Y.X N.X).hom ≫ M.X ◁ N.actLeft) ≫ (M.whiskerLeft (f ≫ g)).hom =
    coequalizer.π (M.actRight ▷ N.X) ((α_ M.X Y.X N.X).hom ≫ M.X ◁ N.actLeft) ≫ (M.whiskerLeft f ≫ M.whiskerLeft g).hom

tactic: simp
state_before: case h.h
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
X Y Z : Mon_ C
M : Bimod X Y
N P Q : Bimod Y Z
f : N ⟶ P
g : P ⟶ Q
⊢ coequalizer.π (M.actRight ▷ N.X) ((α_ M.X Y.X N.X).hom ≫ M.X ◁ N.actLeft) ≫ (M.whiskerLeft (f ≫ g)).hom =
    coequalizer.π (M.actRight ▷ N.X) ((α_ M.X Y.X N.X).hom ≫ M.X ◁ N.actLeft) ≫ (M.whiskerLeft f ≫ M.whiskerLeft g).hom
state_after: no goals
Theorem: LDL.lower_conj_diag
File: Mathlib/LinearAlgebra/Matrix/LDL.lean

tactic: rw [LDL.lower, conjTranspose_nonsing_inv, Matrix.mul_assoc,
  Matrix.inv_mul_eq_iff_eq_mul_of_invertible (LDL.lowerInv hS),
  Matrix.mul_inv_eq_iff_eq_mul_of_invertible]
state_before: 𝕜 : Type u_1
inst✝⁴ : RCLike 𝕜
n : Type u_2
inst✝³ : LinearOrder n
inst✝² : IsWellOrder n fun x x_1 => x < x_1
inst✝¹ : LocallyFiniteOrderBot n
S : Matrix n n 𝕜
inst✝ : Fintype n
hS : S.PosDef
⊢ lower hS * diag hS * (lower hS)ᴴ = S
state_after: 𝕜 : Type u_1
inst✝⁴ : RCLike 𝕜
n : Type u_2
inst✝³ : LinearOrder n
inst✝² : IsWellOrder n fun x x_1 => x < x_1
inst✝¹ : LocallyFiniteOrderBot n
S : Matrix n n 𝕜
inst✝ : Fintype n
hS : S.PosDef
⊢ diag hS = lowerInv hS * S * (lowerInv hS)ᴴ

tactic: exact LDL.diag_eq_lowerInv_conj hS
state_before: 𝕜 : Type u_1
inst✝⁴ : RCLike 𝕜
n : Type u_2
inst✝³ : LinearOrder n
inst✝² : IsWellOrder n fun x x_1 => x < x_1
inst✝¹ : LocallyFiniteOrderBot n
S : Matrix n n 𝕜
inst✝ : Fintype n
hS : S.PosDef
⊢ diag hS = lowerInv hS * S * (lowerInv hS)ᴴ
state_after: no goals
Theorem: Finset.prod_le_pow_card
File: Mathlib/Algebra/Order/BigOperators/Group/Finset.lean

tactic: refine (Multiset.prod_le_pow_card (s.val.map f) n ?_).trans ?_
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
M : Type u_4
N : Type u_5
G : Type u_6
k : Type u_7
R : Type u_8
inst✝¹ : CommMonoid M
inst✝ : OrderedCommMonoid N
f✝ g : ι → N
s✝ t s : Finset ι
f : ι → N
n : N
h : ∀ x ∈ s, f x ≤ n
⊢ s.prod f ≤ n ^ s.card
state_after: case refine_1
ι : Type u_1
α : Type u_2
β : Type u_3
M : Type u_4
N : Type u_5
G : Type u_6
k : Type u_7
R : Type u_8
inst✝¹ : CommMonoid M
inst✝ : OrderedCommMonoid N
f✝ g : ι → N
s✝ t s : Finset ι
f : ι → N
n : N
h : ∀ x ∈ s, f x ≤ n
⊢ ∀ x ∈ Multiset.map f s.val, x ≤ n

case refine_2
ι : Type u_1
α : Type u_2
β : Type u_3
M : Type u_4
N : Type u_5
G : Type u_6
k : Type u_7
R : Type u_8
inst✝¹ : CommMonoid M
inst✝ : OrderedCommMonoid N
f✝ g : ι → N
s✝ t s : Finset ι
f : ι → N
n : N
h : ∀ x ∈ s, f x ≤ n
⊢ n ^ Multiset.card (Multiset.map f s.val) ≤ n ^ s.card

tactic: simpa using h
state_before: case refine_1
ι : Type u_1
α : Type u_2
β : Type u_3
M : Type u_4
N : Type u_5
G : Type u_6
k : Type u_7
R : Type u_8
inst✝¹ : CommMonoid M
inst✝ : OrderedCommMonoid N
f✝ g : ι → N
s✝ t s : Finset ι
f : ι → N
n : N
h : ∀ x ∈ s, f x ≤ n
⊢ ∀ x ∈ Multiset.map f s.val, x ≤ n
state_after: no goals

tactic: simp
state_before: case refine_2
ι : Type u_1
α : Type u_2
β : Type u_3
M : Type u_4
N : Type u_5
G : Type u_6
k : Type u_7
R : Type u_8
inst✝¹ : CommMonoid M
inst✝ : OrderedCommMonoid N
f✝ g : ι → N
s✝ t s : Finset ι
f : ι → N
n : N
h : ∀ x ∈ s, f x ≤ n
⊢ n ^ Multiset.card (Multiset.map f s.val) ≤ n ^ s.card
state_after: no goals