1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: CategoryTheory.Limits.biproduct.lift_matrix
File: Mathlib/CategoryTheory/Preadditive/Biproducts.lean

tactic: ext
state_before: C : Type u
inst✝⁵ : Category.{v, u} C
inst✝⁴ : Preadditive C
J : Type
inst✝³ : Fintype J
f✝ : J → C
inst✝² : HasBiproduct f✝
K : Type
inst✝¹ : Finite K
inst✝ : HasFiniteBiproducts C
f : J → C
g : K → C
P : C
x : (j : J) → P ⟶ f j
m : (j : J) → (k : K) → f j ⟶ g k
⊢ lift x ≫ matrix m = lift fun k => ∑ j : J, x j ≫ m j k
state_after: case w
C : Type u
inst✝⁵ : Category.{v, u} C
inst✝⁴ : Preadditive C
J : Type
inst✝³ : Fintype J
f✝ : J → C
inst✝² : HasBiproduct f✝
K : Type
inst✝¹ : Finite K
inst✝ : HasFiniteBiproducts C
f : J → C
g : K → C
P : C
x : (j : J) → P ⟶ f j
m : (j : J) → (k : K) → f j ⟶ g k
j✝ : K
⊢ (lift x ≫ matrix m) ≫ π g j✝ = (lift fun k => ∑ j : J, x j ≫ m j k) ≫ π g j✝

tactic: simp [biproduct.lift_desc]
state_before: case w
C : Type u
inst✝⁵ : Category.{v, u} C
inst✝⁴ : Preadditive C
J : Type
inst✝³ : Fintype J
f✝ : J → C
inst✝² : HasBiproduct f✝
K : Type
inst✝¹ : Finite K
inst✝ : HasFiniteBiproducts C
f : J → C
g : K → C
P : C
x : (j : J) → P ⟶ f j
m : (j : J) → (k : K) → f j ⟶ g k
j✝ : K
⊢ (lift x ≫ matrix m) ≫ π g j✝ = (lift fun k => ∑ j : J, x j ≫ m j k) ≫ π g j✝
state_after: no goals
Theorem: QuadraticForm.map_zero
File: Mathlib/LinearAlgebra/QuadraticForm/Basic.lean

tactic: rw [← @zero_smul R _ _ _ _ (0 : M), map_smul, zero_mul, zero_mul]
state_before: S : Type u_1
T : Type u_2
R : Type u_3
M : Type u_4
N : Type u_5
inst✝² : CommSemiring R
inst✝¹ : AddCommMonoid M
inst✝ : Module R M
Q : QuadraticForm R M
⊢ Q 0 = 0
state_after: no goals
Theorem: Polynomial.natDegree_mul_C
File: Mathlib/Algebra/Polynomial/Degree/Lemmas.lean

tactic: simp only [natDegree, degree_mul_C a0]
state_before: R : Type u
S : Type v
ι : Type w
a✝ b : R
m n : ℕ
inst✝¹ : Semiring R
inst✝ : NoZeroDivisors R
p q : R[X]
a : R
a0 : a ≠ 0
⊢ (p * C a).natDegree = p.natDegree
state_after: no goals
Theorem: Filter.principal_coprod_principal
File: Mathlib/Order/Filter/Prod.lean

tactic: rw [Filter.coprod, comap_principal, comap_principal, sup_principal, Set.prod_eq, compl_inter,
  preimage_compl, preimage_compl, compl_compl, compl_compl]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
ι : Sort u_5
f : Filter α
g : Filter β
s : Set α
t : Set β
⊢ (𝓟 s).coprod (𝓟 t) = 𝓟 (sᶜ ×ˢ tᶜ)ᶜ
state_after: no goals
Theorem: Set.singleton_op
File: Mathlib/Data/Set/Opposite.lean

tactic: ext
state_before: α : Type u_1
x : α
⊢ {x}.op = {{ unop := x }}
state_after: case h
α : Type u_1
x : α
x✝ : αᵒᵖ
⊢ x✝ ∈ {x}.op ↔ x✝ ∈ {{ unop := x }}

tactic: constructor
state_before: case h
α : Type u_1
x : α
x✝ : αᵒᵖ
⊢ x✝ ∈ {x}.op ↔ x✝ ∈ {{ unop := x }}
state_after: case h.mp
α : Type u_1
x : α
x✝ : αᵒᵖ
⊢ x✝ ∈ {x}.op → x✝ ∈ {{ unop := x }}

case h.mpr
α : Type u_1
x : α
x✝ : αᵒᵖ
⊢ x✝ ∈ {{ unop := x }} → x✝ ∈ {x}.op

tactic: apply unop_injective
state_before: case h.mp
α : Type u_1
x : α
x✝ : αᵒᵖ
⊢ x✝ ∈ {x}.op → x✝ ∈ {{ unop := x }}
state_after: no goals

tactic: apply op_injective
state_before: case h.mpr
α : Type u_1
x : α
x✝ : αᵒᵖ
⊢ x✝ ∈ {{ unop := x }} → x✝ ∈ {x}.op
state_after: no goals
Theorem: Function.iterate_fixed
File: Mathlib/Logic/Function/Iterate.lean

tactic: rw [iterate_succ_apply, h, ihn]
state_before: α : Type u
β : Type v
f : α → α
x : α
h : f x = x
n✝ n : ℕ
ihn : f^[n] x = x
⊢ f^[n.succ] x = x
state_after: no goals
Theorem: ModularGroup.coe_T_zpow_smul_eq
File: Mathlib/NumberTheory/Modular.lean

tactic: rw [sl_moeb, UpperHalfPlane.coe_smul]
state_before: g : SL(2, ℤ)
z : ℍ
n : ℤ
⊢ ↑(T ^ n • z) = ↑z + ↑n
state_after: g : SL(2, ℤ)
z : ℍ
n : ℤ
⊢ num (↑(T ^ n)) z / denom (↑(T ^ n)) z = ↑z + ↑n

tactic: simp [coe_T_zpow, denom, num, -map_zpow]
state_before: g : SL(2, ℤ)
z : ℍ
n : ℤ
⊢ num (↑(T ^ n)) z / denom (↑(T ^ n)) z = ↑z + ↑n
state_after: no goals
Theorem: εNFA.stepSet_empty
File: Mathlib/Computability/EpsilonNFA.lean

tactic: simp_rw [stepSet, mem_empty_iff_false, iUnion_false, iUnion_empty]
state_before: α : Type u
σ σ' : Type v
M : εNFA α σ
S : Set σ
x : List α
s : σ
a✝ a : α
⊢ M.stepSet ∅ a = ∅
state_after: no goals
Theorem: Finset.image₂_union_inter_subset
File: Mathlib/Data/Finset/NAry.lean

tactic: push_cast
state_before: α : Type u_1
α' : Type u_2
β : Type u_3
β' : Type u_4
γ : Type u_5
γ' : Type u_6
δ : Type u_7
δ' : Type u_8
ε : Type u_9
ε' : Type u_10
ζ : Type u_11
ζ' : Type u_12
ν : Type u_13
inst✝⁹ : DecidableEq α'
inst✝⁸ : DecidableEq β'
inst✝⁷ : DecidableEq γ
inst✝⁶ : DecidableEq γ'
inst✝⁵ : DecidableEq δ
inst✝⁴ : DecidableEq δ'
inst✝³ : DecidableEq ε
inst✝² : DecidableEq ε'
f✝ f' : α → β → γ
g g' : α → β → γ → δ
s✝ s' : Finset α
t✝ t' : Finset β
u u' : Finset γ
a a' : α
b b' : β
c : γ
inst✝¹ : DecidableEq α
inst✝ : DecidableEq β
f : α → α → β
s t : Finset α
hf : ∀ (a b : α), f a b = f b a
⊢ ↑(image₂ f (s ∪ t) (s ∩ t)) ⊆ ↑(image₂ f s t)
state_after: α : Type u_1
α' : Type u_2
β : Type u_3
β' : Type u_4
γ : Type u_5
γ' : Type u_6
δ : Type u_7
δ' : Type u_8
ε : Type u_9
ε' : Type u_10
ζ : Type u_11
ζ' : Type u_12
ν : Type u_13
inst✝⁹ : DecidableEq α'
inst✝⁸ : DecidableEq β'
inst✝⁷ : DecidableEq γ
inst✝⁶ : DecidableEq γ'
inst✝⁵ : DecidableEq δ
inst✝⁴ : DecidableEq δ'
inst✝³ : DecidableEq ε
inst✝² : DecidableEq ε'
f✝ f' : α → β → γ
g g' : α → β → γ → δ
s✝ s' : Finset α
t✝ t' : Finset β
u u' : Finset γ
a a' : α
b b' : β
c : γ
inst✝¹ : DecidableEq α
inst✝ : DecidableEq β
f : α → α → β
s t : Finset α
hf : ∀ (a b : α), f a b = f b a
⊢ image2 f (↑s ∪ ↑t) (↑s ∩ ↑t) ⊆ image2 f ↑s ↑t

tactic: exact image2_union_inter_subset hf
state_before: α : Type u_1
α' : Type u_2
β : Type u_3
β' : Type u_4
γ : Type u_5
γ' : Type u_6
δ : Type u_7
δ' : Type u_8
ε : Type u_9
ε' : Type u_10
ζ : Type u_11
ζ' : Type u_12
ν : Type u_13
inst✝⁹ : DecidableEq α'
inst✝⁸ : DecidableEq β'
inst✝⁷ : DecidableEq γ
inst✝⁶ : DecidableEq γ'
inst✝⁵ : DecidableEq δ
inst✝⁴ : DecidableEq δ'
inst✝³ : DecidableEq ε
inst✝² : DecidableEq ε'
f✝ f' : α → β → γ
g g' : α → β → γ → δ
s✝ s' : Finset α
t✝ t' : Finset β
u u' : Finset γ
a a' : α
b b' : β
c : γ
inst✝¹ : DecidableEq α
inst✝ : DecidableEq β
f : α → α → β
s t : Finset α
hf : ∀ (a b : α), f a b = f b a
⊢ image2 f (↑s ∪ ↑t) (↑s ∩ ↑t) ⊆ image2 f ↑s ↑t
state_after: no goals
Theorem: DirichletCharacter.LSeriesSummable_iff
File: Mathlib/NumberTheory/LSeries/Dirichlet.lean

tactic: refine ⟨fun H ↦ ?_, LSeriesSummable_of_one_lt_re χ⟩
state_before: N : ℕ
hN : N ≠ 0
χ : DirichletCharacter ℂ N
s : ℂ
⊢ LSeriesSummable (fun n => χ ↑n) s ↔ 1 < s.re
state_after: N : ℕ
hN : N ≠ 0
χ : DirichletCharacter ℂ N
s : ℂ
H : LSeriesSummable (fun n => χ ↑n) s
⊢ 1 < s.re

tactic: by_contra! h
state_before: N : ℕ
hN : N ≠ 0
χ : DirichletCharacter ℂ N
s : ℂ
H : LSeriesSummable (fun n => χ ↑n) s
⊢ 1 < s.re
state_after: N : ℕ
hN : N ≠ 0
χ : DirichletCharacter ℂ N
s : ℂ
H : LSeriesSummable (fun n => χ ↑n) s
h : s.re ≤ 1
⊢ False

tactic: exact not_LSeriesSummable_at_one hN χ <| LSeriesSummable.of_re_le_re (by simp only [one_re, h]) H
state_before: N : ℕ
hN : N ≠ 0
χ : DirichletCharacter ℂ N
s : ℂ
H : LSeriesSummable (fun n => χ ↑n) s
h : s.re ≤ 1
⊢ False
state_after: no goals

tactic: simp only [one_re, h]
state_before: N : ℕ
hN : N ≠ 0
χ : DirichletCharacter ℂ N
s : ℂ
H : LSeriesSummable (fun n => χ ↑n) s
h : s.re ≤ 1
⊢ s.re ≤ re 1
state_after: no goals
Theorem: IsCompact.closure_subset_measurableSet
File: Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean

tactic: rw [hK.closure_eq_biUnion_inseparable, iUnion₂_subset_iff]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
γ₂ : Type u_4
δ : Type u_5
ι : Sort y
s✝ t u : Set α
inst✝¹³ : TopologicalSpace α
inst✝¹² : MeasurableSpace α
inst✝¹¹ : OpensMeasurableSpace α
inst✝¹⁰ : TopologicalSpace β
inst✝⁹ : MeasurableSpace β
inst✝⁸ : OpensMeasurableSpace β
inst✝⁷ : TopologicalSpace γ
inst✝⁶ : MeasurableSpace γ
inst✝⁵ : BorelSpace γ
inst✝⁴ : TopologicalSpace γ₂
inst✝³ : MeasurableSpace γ₂
inst✝² : BorelSpace γ₂
inst✝¹ : MeasurableSpace δ
inst✝ : R1Space γ
K s : Set γ
hK : IsCompact K
hs : MeasurableSet s
hKs : K ⊆ s
⊢ closure K ⊆ s
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
γ₂ : Type u_4
δ : Type u_5
ι : Sort y
s✝ t u : Set α
inst✝¹³ : TopologicalSpace α
inst✝¹² : MeasurableSpace α
inst✝¹¹ : OpensMeasurableSpace α
inst✝¹⁰ : TopologicalSpace β
inst✝⁹ : MeasurableSpace β
inst✝⁸ : OpensMeasurableSpace β
inst✝⁷ : TopologicalSpace γ
inst✝⁶ : MeasurableSpace γ
inst✝⁵ : BorelSpace γ
inst✝⁴ : TopologicalSpace γ₂
inst✝³ : MeasurableSpace γ₂
inst✝² : BorelSpace γ₂
inst✝¹ : MeasurableSpace δ
inst✝ : R1Space γ
K s : Set γ
hK : IsCompact K
hs : MeasurableSet s
hKs : K ⊆ s
⊢ ∀ i ∈ K, {y | Inseparable i y} ⊆ s

tactic: exact fun x hx y hy ↦ (hy.mem_measurableSet_iff hs).1 (hKs hx)
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
γ₂ : Type u_4
δ : Type u_5
ι : Sort y
s✝ t u : Set α
inst✝¹³ : TopologicalSpace α
inst✝¹² : MeasurableSpace α
inst✝¹¹ : OpensMeasurableSpace α
inst✝¹⁰ : TopologicalSpace β
inst✝⁹ : MeasurableSpace β
inst✝⁸ : OpensMeasurableSpace β
inst✝⁷ : TopologicalSpace γ
inst✝⁶ : MeasurableSpace γ
inst✝⁵ : BorelSpace γ
inst✝⁴ : TopologicalSpace γ₂
inst✝³ : MeasurableSpace γ₂
inst✝² : BorelSpace γ₂
inst✝¹ : MeasurableSpace δ
inst✝ : R1Space γ
K s : Set γ
hK : IsCompact K
hs : MeasurableSet s
hKs : K ⊆ s
⊢ ∀ i ∈ K, {y | Inseparable i y} ⊆ s
state_after: no goals
Theorem: Fin2.rev_castSucc
File: Mathlib/Data/Fin/Fin2.lean

tactic: induction i <;> simp_all [rev, castSucc, last]
state_before: n : ℕ
i : Fin2 n
⊢ i.castSucc.rev = i.rev.fs
state_after: no goals
Theorem: CochainComplex.HomComplex.Cochain.comp_neg
File: Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean

tactic: ext p q hpq
state_before: C : Type u
inst✝³ : Category.{v, u} C
inst✝² : Preadditive C
R : Type u_1
inst✝¹ : Ring R
inst✝ : Linear R C
F G K L : CochainComplex C ℤ
n m n₁ n₂ n₁₂ : ℤ
z₁ : Cochain F G n₁
z₂ : Cochain G K n₂
h : n₁ + n₂ = n₁₂
⊢ z₁.comp (-z₂) h = -z₁.comp z₂ h
state_after: case h
C : Type u
inst✝³ : Category.{v, u} C
inst✝² : Preadditive C
R : Type u_1
inst✝¹ : Ring R
inst✝ : Linear R C
F G K L : CochainComplex C ℤ
n m n₁ n₂ n₁₂ : ℤ
z₁ : Cochain F G n₁
z₂ : Cochain G K n₂
h : n₁ + n₂ = n₁₂
p q : ℤ
hpq : p + n₁₂ = q
⊢ (z₁.comp (-z₂) h).v p q hpq = (-z₁.comp z₂ h).v p q hpq

tactic: simp only [comp_v _ _ h p _ q rfl (by omega), neg_v, comp_neg]
state_before: case h
C : Type u
inst✝³ : Category.{v, u} C
inst✝² : Preadditive C
R : Type u_1
inst✝¹ : Ring R
inst✝ : Linear R C
F G K L : CochainComplex C ℤ
n m n₁ n₂ n₁₂ : ℤ
z₁ : Cochain F G n₁
z₂ : Cochain G K n₂
h : n₁ + n₂ = n₁₂
p q : ℤ
hpq : p + n₁₂ = q
⊢ (z₁.comp (-z₂) h).v p q hpq = (-z₁.comp z₂ h).v p q hpq
state_after: no goals

tactic: omega
state_before: C : Type u
inst✝³ : Category.{v, u} C
inst✝² : Preadditive C
R : Type u_1
inst✝¹ : Ring R
inst✝ : Linear R C
F G K L : CochainComplex C ℤ
n m n₁ n₂ n₁₂ : ℤ
z₁ : Cochain F G n₁
z₂ : Cochain G K n₂
h : n₁ + n₂ = n₁₂
p q : ℤ
hpq : p + n₁₂ = q
⊢ p + n₁ + n₂ = q
state_after: no goals
Theorem: Set.zero_mem_center
File: Mathlib/Algebra/GroupWithZero/Center.lean

tactic: rw [zero_mul, mul_zero]
state_before: M₀ : Type u_1
G₀ : Type u_2
inst✝ : MulZeroClass M₀
s : Set M₀
x✝ : M₀
⊢ 0 * x✝ = x✝ * 0
state_after: no goals

tactic: rw [zero_mul, zero_mul, zero_mul]
state_before: M₀ : Type u_1
G₀ : Type u_2
inst✝ : MulZeroClass M₀
s : Set M₀
x✝¹ x✝ : M₀
⊢ 0 * (x✝¹ * x✝) = 0 * x✝¹ * x✝
state_after: no goals

tactic: rw [mul_zero, zero_mul, mul_zero]
state_before: M₀ : Type u_1
G₀ : Type u_2
inst✝ : MulZeroClass M₀
s : Set M₀
x✝¹ x✝ : M₀
⊢ x✝¹ * 0 * x✝ = x✝¹ * (0 * x✝)
state_after: no goals

tactic: rw [mul_zero, mul_zero, mul_zero]
state_before: M₀ : Type u_1
G₀ : Type u_2
inst✝ : MulZeroClass M₀
s : Set M₀
x✝¹ x✝ : M₀
⊢ x✝¹ * x✝ * 0 = x✝¹ * (x✝ * 0)
state_after: no goals
Theorem: OrderIso.map_iSup
File: Mathlib/Order/CompleteLattice.lean

tactic: simp only [f.le_iff_le, iSup_le_iff]
state_before: α : Type u_1
β : Type u_2
β₂ : Type u_3
γ : Type u_4
ι : Sort u_5
ι' : Sort u_6
κ : ι → Sort u_7
κ' : ι' → Sort u_8
inst✝¹ : CompleteLattice α
f✝ g s t : ι → α
a b : α
inst✝ : CompleteLattice β
f : α ≃o β
x✝ : ι → α
x : α
⊢ f (⨆ i, x✝ i) ≤ f x ↔ ⨆ i, f (x✝ i) ≤ f x
state_after: no goals
Theorem: MeasureTheory.martingalePart_eq_sum
File: Mathlib/Probability/Martingale/Centering.lean

tactic: unfold martingalePart predictablePart
state_before: Ω : Type u_1
E : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
f : ℕ → Ω → E
ℱ : Filtration ℕ m0
n : ℕ
⊢ martingalePart f ℱ μ = fun n => f 0 + ∑ i ∈ Finset.range n, (f (i + 1) - f i - μ[f (i + 1) - f i|↑ℱ i])
state_after: Ω : Type u_1
E : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
f : ℕ → Ω → E
ℱ : Filtration ℕ m0
n : ℕ
⊢ (fun n => f n - ∑ i ∈ Finset.range n, μ[f (i + 1) - f i|↑ℱ i]) = fun n =>
    f 0 + ∑ i ∈ Finset.range n, (f (i + 1) - f i - μ[f (i + 1) - f i|↑ℱ i])

tactic: ext1 n
state_before: Ω : Type u_1
E : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
f : ℕ → Ω → E
ℱ : Filtration ℕ m0
n : ℕ
⊢ (fun n => f n - ∑ i ∈ Finset.range n, μ[f (i + 1) - f i|↑ℱ i]) = fun n =>
    f 0 + ∑ i ∈ Finset.range n, (f (i + 1) - f i - μ[f (i + 1) - f i|↑ℱ i])
state_after: case h
Ω : Type u_1
E : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
f : ℕ → Ω → E
ℱ : Filtration ℕ m0
n✝ n : ℕ
⊢ f n - ∑ i ∈ Finset.range n, μ[f (i + 1) - f i|↑ℱ i] =
    f 0 + ∑ i ∈ Finset.range n, (f (i + 1) - f i - μ[f (i + 1) - f i|↑ℱ i])

tactic: rw [Finset.eq_sum_range_sub f n, ← add_sub, ← Finset.sum_sub_distrib]
state_before: case h
Ω : Type u_1
E : Type u_2
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
f : ℕ → Ω → E
ℱ : Filtration ℕ m0
n✝ n : ℕ
⊢ f n - ∑ i ∈ Finset.range n, μ[f (i + 1) - f i|↑ℱ i] =
    f 0 + ∑ i ∈ Finset.range n, (f (i + 1) - f i - μ[f (i + 1) - f i|↑ℱ i])
state_after: no goals
Theorem: ChartedSpace.secondCountable_of_sigma_compact
File: Mathlib/Geometry/Manifold/ChartedSpace.lean

tactic: obtain ⟨s, hsc, hsU⟩ : ∃ s, Set.Countable s ∧ ⋃ (x) (_ : x ∈ s), (chartAt H x).source = univ :=
  countable_cover_nhds_of_sigma_compact fun x : M ↦ chart_source_mem_nhds H x
state_before: H : Type u
H' : Type u_1
M : Type u_2
M' : Type u_3
M'' : Type u_4
inst✝⁴ : TopologicalSpace H
inst✝³ : TopologicalSpace M
inst✝² : ChartedSpace H M
inst✝¹ : SecondCountableTopology H
inst✝ : SigmaCompactSpace M
⊢ SecondCountableTopology M
state_after: case intro.intro
H : Type u
H' : Type u_1
M : Type u_2
M' : Type u_3
M'' : Type u_4
inst✝⁴ : TopologicalSpace H
inst✝³ : TopologicalSpace M
inst✝² : ChartedSpace H M
inst✝¹ : SecondCountableTopology H
inst✝ : SigmaCompactSpace M
s : Set M
hsc : s.Countable
hsU : ⋃ x ∈ s, (chartAt H x).source = univ
⊢ SecondCountableTopology M

tactic: exact ChartedSpace.secondCountable_of_countable_cover H hsU hsc
state_before: case intro.intro
H : Type u
H' : Type u_1
M : Type u_2
M' : Type u_3
M'' : Type u_4
inst✝⁴ : TopologicalSpace H
inst✝³ : TopologicalSpace M
inst✝² : ChartedSpace H M
inst✝¹ : SecondCountableTopology H
inst✝ : SigmaCompactSpace M
s : Set M
hsc : s.Countable
hsU : ⋃ x ∈ s, (chartAt H x).source = univ
⊢ SecondCountableTopology M
state_after: no goals
Theorem: ProbabilityTheory.setLIntegral_condKernel_univ_right
File: Mathlib/Probability/Kernel/Disintegration/Integral.lean

tactic: rw [← setLIntegral_condKernel hf a hs MeasurableSet.univ]
state_before: α : Type u_1
β : Type u_2
Ω : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
inst✝⁴ : MeasurableSpace Ω
inst✝³ : StandardBorelSpace Ω
inst✝² : Nonempty Ω
inst✝¹ : CountableOrCountablyGenerated α β
κ : ↥(kernel α (β × Ω))
inst✝ : IsFiniteKernel κ
f : β × Ω → ℝ≥0∞
hf : Measurable f
a : α
s : Set β
hs : MeasurableSet s
⊢ ∫⁻ (b : β) in s, ∫⁻ (ω : Ω), f (b, ω) ∂(kernel.condKernel κ) (a, b) ∂(kernel.fst κ) a =
    ∫⁻ (x : β × Ω) in s ×ˢ Set.univ, f x ∂κ a
state_after: α : Type u_1
β : Type u_2
Ω : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
inst✝⁴ : MeasurableSpace Ω
inst✝³ : StandardBorelSpace Ω
inst✝² : Nonempty Ω
inst✝¹ : CountableOrCountablyGenerated α β
κ : ↥(kernel α (β × Ω))
inst✝ : IsFiniteKernel κ
f : β × Ω → ℝ≥0∞
hf : Measurable f
a : α
s : Set β
hs : MeasurableSet s
⊢ ∫⁻ (b : β) in s, ∫⁻ (ω : Ω), f (b, ω) ∂(kernel.condKernel κ) (a, b) ∂(kernel.fst κ) a =
    ∫⁻ (b : β) in s, ∫⁻ (ω : Ω) in Set.univ, f (b, ω) ∂(kernel.condKernel κ) (a, b) ∂(kernel.fst κ) a

tactic: simp_rw [Measure.restrict_univ]
state_before: α : Type u_1
β : Type u_2
Ω : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
inst✝⁴ : MeasurableSpace Ω
inst✝³ : StandardBorelSpace Ω
inst✝² : Nonempty Ω
inst✝¹ : CountableOrCountablyGenerated α β
κ : ↥(kernel α (β × Ω))
inst✝ : IsFiniteKernel κ
f : β × Ω → ℝ≥0∞
hf : Measurable f
a : α
s : Set β
hs : MeasurableSet s
⊢ ∫⁻ (b : β) in s, ∫⁻ (ω : Ω), f (b, ω) ∂(kernel.condKernel κ) (a, b) ∂(kernel.fst κ) a =
    ∫⁻ (b : β) in s, ∫⁻ (ω : Ω) in Set.univ, f (b, ω) ∂(kernel.condKernel κ) (a, b) ∂(kernel.fst κ) a
state_after: no goals
Theorem: FormalMultilinearSeries.compAlongComposition_nnnorm
File: Mathlib/Analysis/Analytic/Composition.lean

tactic: rw [← NNReal.coe_le_coe]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝⁸ : NontriviallyNormedField 𝕜
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace 𝕜 F
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
inst✝¹ : NormedAddCommGroup H
inst✝ : NormedSpace 𝕜 H
n : ℕ
q : FormalMultilinearSeries 𝕜 F G
p : FormalMultilinearSeries 𝕜 E F
c : Composition n
⊢ ‖q.compAlongComposition p c‖₊ ≤ ‖q c.length‖₊ * ∏ i : Fin c.length, ‖p (c.blocksFun i)‖₊
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝⁸ : NontriviallyNormedField 𝕜
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace 𝕜 F
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
inst✝¹ : NormedAddCommGroup H
inst✝ : NormedSpace 𝕜 H
n : ℕ
q : FormalMultilinearSeries 𝕜 F G
p : FormalMultilinearSeries 𝕜 E F
c : Composition n
⊢ ↑‖q.compAlongComposition p c‖₊ ≤ ↑(‖q c.length‖₊ * ∏ i : Fin c.length, ‖p (c.blocksFun i)‖₊)

tactic: push_cast
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝⁸ : NontriviallyNormedField 𝕜
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace 𝕜 F
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
inst✝¹ : NormedAddCommGroup H
inst✝ : NormedSpace 𝕜 H
n : ℕ
q : FormalMultilinearSeries 𝕜 F G
p : FormalMultilinearSeries 𝕜 E F
c : Composition n
⊢ ↑‖q.compAlongComposition p c‖₊ ≤ ↑(‖q c.length‖₊ * ∏ i : Fin c.length, ‖p (c.blocksFun i)‖₊)
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝⁸ : NontriviallyNormedField 𝕜
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace 𝕜 F
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
inst✝¹ : NormedAddCommGroup H
inst✝ : NormedSpace 𝕜 H
n : ℕ
q : FormalMultilinearSeries 𝕜 F G
p : FormalMultilinearSeries 𝕜 E F
c : Composition n
⊢ ‖q.compAlongComposition p c‖ ≤ ‖q c.length‖ * ∏ x : Fin c.length, ‖p (c.blocksFun x)‖

tactic: exact q.compAlongComposition_norm p c
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝⁸ : NontriviallyNormedField 𝕜
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace 𝕜 F
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
inst✝¹ : NormedAddCommGroup H
inst✝ : NormedSpace 𝕜 H
n : ℕ
q : FormalMultilinearSeries 𝕜 F G
p : FormalMultilinearSeries 𝕜 E F
c : Composition n
⊢ ‖q.compAlongComposition p c‖ ≤ ‖q c.length‖ * ∏ x : Fin c.length, ‖p (c.blocksFun x)‖
state_after: no goals
Theorem: Nat.factorial_mul_factorial_dvd_factorial
File: Mathlib/Data/Nat/Choose/Basic.lean

tactic: rw [← choose_mul_factorial_mul_factorial hk, Nat.mul_assoc]
state_before: n k : ℕ
hk : k ≤ n
⊢ k ! * (n - k)! ∣ n !
state_after: n k : ℕ
hk : k ≤ n
⊢ k ! * (n - k)! ∣ n.choose k * (k ! * (n - k)!)

tactic: exact Nat.dvd_mul_left _ _
state_before: n k : ℕ
hk : k ≤ n
⊢ k ! * (n - k)! ∣ n.choose k * (k ! * (n - k)!)
state_after: no goals
Theorem: MeasureTheory.OuterMeasure.toMeasure_zero
File: Mathlib/MeasureTheory/Measure/MeasureSpace.lean

tactic: rw [← Measure.measure_univ_eq_zero, toMeasure_apply _ _ MeasurableSet.univ,
  OuterMeasure.coe_zero, Pi.zero_apply]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
ι : Type u_5
R : Type u_6
R' : Type u_7
inst✝ : MeasurableSpace α
⊢ toMeasure 0 ⋯ = 0
state_after: no goals
Theorem: ProbabilityTheory.condCount_inter_self
File: Mathlib/Probability/CondCount.lean

tactic: rw [condCount, cond_inter_self _ hs.measurableSet]
state_before: Ω : Type u_1
inst✝¹ : MeasurableSpace Ω
inst✝ : MeasurableSingletonClass Ω
s t u : Set Ω
hs : s.Finite
⊢ (condCount s) (s ∩ t) = (condCount s) t
state_after: no goals
Theorem: Matrix.trace_mul_cycle'
File: Mathlib/LinearAlgebra/Matrix/Trace.lean

tactic: rw [← Matrix.mul_assoc, trace_mul_comm]
state_before: ι : Type u_1
m : Type u_2
n : Type u_3
p : Type u_4
α : Type u_5
R : Type u_6
S : Type u_7
inst✝³ : Fintype m
inst✝² : Fintype n
inst✝¹ : Fintype p
inst✝ : NonUnitalCommSemiring R
A : Matrix m n R
B : Matrix n p R
C : Matrix p m R
⊢ (A * (B * C)).trace = (C * (A * B)).trace
state_after: no goals
Theorem: Matrix.mul_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✝¹ : NonUnitalNonAssocSemiring α
inst✝ : Fintype n
M : Matrix m n α
⊢ M * 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✝¹ : NonUnitalNonAssocSemiring α
inst✝ : Fintype n
M : Matrix m n α
i✝ : m
j✝ : o
⊢ (M * 0) i✝ j✝ = 0 i✝ j✝

tactic: apply dotProduct_zero
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✝¹ : NonUnitalNonAssocSemiring α
inst✝ : Fintype n
M : Matrix m n α
i✝ : m
j✝ : o
⊢ (M * 0) i✝ j✝ = 0 i✝ j✝
state_after: no goals
Theorem: SetTheory.PGame.lf_of_le_of_lf
File: Mathlib/SetTheory/Game/PGame.lean

tactic: rw [← PGame.not_le] at h₂ ⊢
state_before: xl xr : Type u
x y z : PGame
h₁ : x ≤ y
h₂ : y ⧏ z
⊢ x ⧏ z
state_after: xl xr : Type u
x y z : PGame
h₁ : x ≤ y
h₂ : ¬z ≤ y
⊢ ¬z ≤ x

tactic: exact fun h₃ => h₂ (h₃.trans h₁)
state_before: xl xr : Type u
x y z : PGame
h₁ : x ≤ y
h₂ : ¬z ≤ y
⊢ ¬z ≤ x
state_after: no goals