1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: Ordinal.log_zero_right
File: Mathlib/SetTheory/Ordinal/Exponential.lean

tactic: rw [log_def b1, ← Ordinal.le_zero, pred_le]
state_before: b : Ordinal.{u_1}
b1 : 1 < b
⊢ log b 0 = 0
state_after: b : Ordinal.{u_1}
b1 : 1 < b
⊢ sInf {o | 0 < b ^ o} ≤ succ 0

tactic: apply csInf_le'
state_before: b : Ordinal.{u_1}
b1 : 1 < b
⊢ sInf {o | 0 < b ^ o} ≤ succ 0
state_after: case h
b : Ordinal.{u_1}
b1 : 1 < b
⊢ succ 0 ∈ {o | 0 < b ^ o}

tactic: dsimp
state_before: case h
b : Ordinal.{u_1}
b1 : 1 < b
⊢ succ 0 ∈ {o | 0 < b ^ o}
state_after: case h
b : Ordinal.{u_1}
b1 : 1 < b
⊢ 0 < b ^ succ 0

tactic: rw [succ_zero, opow_one]
state_before: case h
b : Ordinal.{u_1}
b1 : 1 < b
⊢ 0 < b ^ succ 0
state_after: case h
b : Ordinal.{u_1}
b1 : 1 < b
⊢ 0 < b

tactic: exact zero_lt_one.trans b1
state_before: case h
b : Ordinal.{u_1}
b1 : 1 < b
⊢ 0 < b
state_after: no goals

tactic: simp only [log_of_not_one_lt_left b1]
state_before: b : Ordinal.{u_1}
b1 : ¬1 < b
⊢ log b 0 = 0
state_after: no goals
Theorem: BoxIntegral.integral_neg
File: Mathlib/Analysis/BoxIntegral/Basic.lean

tactic: rw [integral, integral, dif_neg h, dif_neg (mt Integrable.of_neg h), neg_zero]
state_before: ι : Type u
E : Type v
F : Type w
inst✝⁴ : NormedAddCommGroup E
inst✝³ : NormedSpace ℝ E
inst✝² : NormedAddCommGroup F
inst✝¹ : NormedSpace ℝ F
I J : Box ι
π : TaggedPrepartition I
inst✝ : Fintype ι
l : IntegrationParams
f g : (ι → ℝ) → E
vol : ι →ᵇᵃ[⊤] E →L[ℝ] F
y y' : F
h : ¬Integrable I l f vol
⊢ integral I l (-f) vol = -integral I l f vol
state_after: no goals
Theorem: TopCat.of_isoOfHomeo
File: Mathlib/Topology/Category/TopCat/Basic.lean

tactic: dsimp [homeoOfIso, isoOfHomeo]
state_before: X Y : TopCat
f : ↑X ≃ₜ ↑Y
⊢ homeoOfIso (isoOfHomeo f) = f
state_after: X Y : TopCat
f : ↑X ≃ₜ ↑Y
⊢ { toFun := ⇑f.toContinuousMap, invFun := ⇑f.symm.toContinuousMap, left_inv := ⋯, right_inv := ⋯,
      continuous_toFun := ⋯, continuous_invFun := ⋯ } =
    f

tactic: ext
state_before: X Y : TopCat
f : ↑X ≃ₜ ↑Y
⊢ { toFun := ⇑f.toContinuousMap, invFun := ⇑f.symm.toContinuousMap, left_inv := ⋯, right_inv := ⋯,
      continuous_toFun := ⋯, continuous_invFun := ⋯ } =
    f
state_after: case H
X Y : TopCat
f : ↑X ≃ₜ ↑Y
x✝ : ↑X
⊢ { toFun := ⇑f.toContinuousMap, invFun := ⇑f.symm.toContinuousMap, left_inv := ⋯, right_inv := ⋯,
        continuous_toFun := ⋯, continuous_invFun := ⋯ }
      x✝ =
    f x✝

tactic: rfl
state_before: case H
X Y : TopCat
f : ↑X ≃ₜ ↑Y
x✝ : ↑X
⊢ { toFun := ⇑f.toContinuousMap, invFun := ⇑f.symm.toContinuousMap, left_inv := ⋯, right_inv := ⋯,
        continuous_toFun := ⋯, continuous_invFun := ⋯ }
      x✝ =
    f x✝
state_after: no goals
Theorem: IsLocalization.submonoid_map_le_is_unit
File: Mathlib/RingTheory/Localization/InvSubmonoid.lean

tactic: rintro _ ⟨a, ha, rfl⟩
state_before: R : Type u_1
inst✝⁴ : CommRing R
M : Submonoid R
S : Type u_2
inst✝³ : CommRing S
inst✝² : Algebra R S
P : Type u_3
inst✝¹ : CommRing P
inst✝ : IsLocalization M S
⊢ Submonoid.map (algebraMap R S) M ≤ IsUnit.submonoid S
state_after: case intro.intro
R : Type u_1
inst✝⁴ : CommRing R
M : Submonoid R
S : Type u_2
inst✝³ : CommRing S
inst✝² : Algebra R S
P : Type u_3
inst✝¹ : CommRing P
inst✝ : IsLocalization M S
a : R
ha : a ∈ ↑M
⊢ (algebraMap R S) a ∈ IsUnit.submonoid S

tactic: exact IsLocalization.map_units S ⟨_, ha⟩
state_before: case intro.intro
R : Type u_1
inst✝⁴ : CommRing R
M : Submonoid R
S : Type u_2
inst✝³ : CommRing S
inst✝² : Algebra R S
P : Type u_3
inst✝¹ : CommRing P
inst✝ : IsLocalization M S
a : R
ha : a ∈ ↑M
⊢ (algebraMap R S) a ∈ IsUnit.submonoid S
state_after: no goals
Theorem: LowerSet.lowerClosure_sup_sdiff
File: Mathlib/Order/UpperLower/Basic.lean

tactic: rw [sup_comm, sdiff_sup_lowerClosure hts hst]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
κ : ι → Sort u_5
inst✝ : Preorder α
s : LowerSet α
t : Set α
a : α
hts : t ⊆ ↑s
hst : ∀ b ∈ s, ∀ c ∈ t, c ≤ b → b ∈ t
⊢ lowerClosure t ⊔ s.sdiff t = s
state_after: no goals
Theorem: SupPrime.supIrred
File: Mathlib/Order/Irreducible.lean

tactic: simpa [← ha] using h ha.ge
state_before: ι : Type u_1
α : Type u_2
inst✝ : SemilatticeSup α
a b✝ c✝ : α
h : ∀ ⦃b c : α⦄, a ≤ b ⊔ c → a ≤ b ∨ a ≤ c
b c : α
ha : b ⊔ c = a
⊢ b = a ∨ c = a
state_after: no goals
Theorem: le_algebraMap_of_spectrum_le
File: Mathlib/Topology/ContinuousFunction/FunctionalCalculus.lean

tactic: rw [← cfc_id R a]
state_before: R : Type u_1
A : Type u_2
p : A → Prop
inst✝¹⁵ : OrderedCommSemiring R
inst✝¹⁴ : StarRing R
inst✝¹³ : StarOrderedRing R
inst✝¹² : MetricSpace R
inst✝¹¹ : TopologicalSemiring R
inst✝¹⁰ : ContinuousStar R
inst✝⁹ : ∀ (α : Type ?u.706782) [inst : TopologicalSpace α], StarOrderedRing C(α, R)
inst✝⁸ : TopologicalSpace A
inst✝⁷ : Ring A
inst✝⁶ : StarRing A
inst✝⁵ : PartialOrder A
inst✝⁴ : StarOrderedRing A
inst✝³ : Algebra R A
inst✝² : StarModule R A
inst✝¹ : ContinuousFunctionalCalculus R p
inst✝ : NonnegSpectrumClass R A
r : R
a : A
h : ∀ x ∈ spectrum R a, x ≤ r
ha : autoParam (p a) _auto✝
⊢ a ≤ (algebraMap R A) r
state_after: R : Type u_1
A : Type u_2
p : A → Prop
inst✝¹⁵ : OrderedCommSemiring R
inst✝¹⁴ : StarRing R
inst✝¹³ : StarOrderedRing R
inst✝¹² : MetricSpace R
inst✝¹¹ : TopologicalSemiring R
inst✝¹⁰ : ContinuousStar R
inst✝⁹ : ∀ (α : Type ?u.706782) [inst : TopologicalSpace α], StarOrderedRing C(α, R)
inst✝⁸ : TopologicalSpace A
inst✝⁷ : Ring A
inst✝⁶ : StarRing A
inst✝⁵ : PartialOrder A
inst✝⁴ : StarOrderedRing A
inst✝³ : Algebra R A
inst✝² : StarModule R A
inst✝¹ : ContinuousFunctionalCalculus R p
inst✝ : NonnegSpectrumClass R A
r : R
a : A
h : ∀ x ∈ spectrum R a, x ≤ r
ha : autoParam (p a) _auto✝
⊢ cfc id a ≤ (algebraMap R A) r

tactic: exact cfc_le_algebraMap id r a h
state_before: R : Type u_1
A : Type u_2
p : A → Prop
inst✝¹⁵ : OrderedCommSemiring R
inst✝¹⁴ : StarRing R
inst✝¹³ : StarOrderedRing R
inst✝¹² : MetricSpace R
inst✝¹¹ : TopologicalSemiring R
inst✝¹⁰ : ContinuousStar R
inst✝⁹ : ∀ (α : Type ?u.706782) [inst : TopologicalSpace α], StarOrderedRing C(α, R)
inst✝⁸ : TopologicalSpace A
inst✝⁷ : Ring A
inst✝⁶ : StarRing A
inst✝⁵ : PartialOrder A
inst✝⁴ : StarOrderedRing A
inst✝³ : Algebra R A
inst✝² : StarModule R A
inst✝¹ : ContinuousFunctionalCalculus R p
inst✝ : NonnegSpectrumClass R A
r : R
a : A
h : ∀ x ∈ spectrum R a, x ≤ r
ha : autoParam (p a) _auto✝
⊢ cfc id a ≤ (algebraMap R A) r
state_after: no goals
Theorem: Subalgebra.mul_self
File: Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean

tactic: apply le_antisymm
state_before: R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
⊢ toSubmodule S * toSubmodule S = toSubmodule S
state_after: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
⊢ toSubmodule S * toSubmodule S ≤ toSubmodule S

case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
⊢ toSubmodule S ≤ toSubmodule S * toSubmodule S

tactic: refine (mul_toSubmodule_le _ _).trans_eq ?_
state_before: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
⊢ toSubmodule S * toSubmodule S ≤ toSubmodule S
state_after: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
⊢ toSubmodule (S ⊔ S) = toSubmodule S

tactic: rw [sup_idem]
state_before: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
⊢ toSubmodule (S ⊔ S) = toSubmodule S
state_after: no goals

tactic: intro x hx1
state_before: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
⊢ toSubmodule S ≤ toSubmodule S * toSubmodule S
state_after: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
x : A
hx1 : x ∈ toSubmodule S
⊢ x ∈ toSubmodule S * toSubmodule S

tactic: rw [← mul_one x]
state_before: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
x : A
hx1 : x ∈ toSubmodule S
⊢ x ∈ toSubmodule S * toSubmodule S
state_after: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
x : A
hx1 : x ∈ toSubmodule S
⊢ x * 1 ∈ toSubmodule S * toSubmodule S

tactic: exact Submodule.mul_mem_mul hx1 (show (1 : A) ∈ S from one_mem S)
state_before: case a
R : Type u_1
A : Type u_2
inst✝² : CommSemiring R
inst✝¹ : Semiring A
inst✝ : Algebra R A
S : Subalgebra R A
x : A
hx1 : x ∈ toSubmodule S
⊢ x * 1 ∈ toSubmodule S * toSubmodule S
state_after: no goals
Theorem: MeasureTheory.integral_mul_right
File: Mathlib/MeasureTheory/Integral/Bochner.lean

tactic: simp only [mul_comm]
state_before: α : Type u_1
E : Type u_2
F : Type u_3
𝕜 : Type u_4
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℝ E
hE : CompleteSpace E
inst✝⁸ : NontriviallyNormedField 𝕜
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : SMulCommClass ℝ 𝕜 E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace ℝ F
inst✝³ : CompleteSpace F
G : Type u_5
inst✝² : NormedAddCommGroup G
inst✝¹ : NormedSpace ℝ G
f✝ g : α → E
m : MeasurableSpace α
μ : Measure α
L : Type u_6
inst✝ : RCLike L
r : L
f : α → L
⊢ ∫ (a : α), f a * r ∂μ = (∫ (a : α), f a ∂μ) * r
state_after: α : Type u_1
E : Type u_2
F : Type u_3
𝕜 : Type u_4
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℝ E
hE : CompleteSpace E
inst✝⁸ : NontriviallyNormedField 𝕜
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : SMulCommClass ℝ 𝕜 E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace ℝ F
inst✝³ : CompleteSpace F
G : Type u_5
inst✝² : NormedAddCommGroup G
inst✝¹ : NormedSpace ℝ G
f✝ g : α → E
m : MeasurableSpace α
μ : Measure α
L : Type u_6
inst✝ : RCLike L
r : L
f : α → L
⊢ ∫ (a : α), r * f a ∂μ = r * ∫ (a : α), f a ∂μ

tactic: exact integral_mul_left r f
state_before: α : Type u_1
E : Type u_2
F : Type u_3
𝕜 : Type u_4
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℝ E
hE : CompleteSpace E
inst✝⁸ : NontriviallyNormedField 𝕜
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : SMulCommClass ℝ 𝕜 E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedSpace ℝ F
inst✝³ : CompleteSpace F
G : Type u_5
inst✝² : NormedAddCommGroup G
inst✝¹ : NormedSpace ℝ G
f✝ g : α → E
m : MeasurableSpace α
μ : Measure α
L : Type u_6
inst✝ : RCLike L
r : L
f : α → L
⊢ ∫ (a : α), r * f a ∂μ = r * ∫ (a : α), f a ∂μ
state_after: no goals
Theorem: op_smul_coe_set
File: Mathlib/Algebra/Group/Subgroup/Pointwise.lean

tactic: ext
state_before: α : Type u_1
G : Type u_2
A : Type u_3
S : Type u_4
inst✝² : Group G
inst✝¹ : SetLike S G
inst✝ : SubgroupClass S G
s : S
a : G
ha : a ∈ s
⊢ MulOpposite.op a • ↑s = ↑s
state_after: case h
α : Type u_1
G : Type u_2
A : Type u_3
S : Type u_4
inst✝² : Group G
inst✝¹ : SetLike S G
inst✝ : SubgroupClass S G
s : S
a : G
ha : a ∈ s
x✝ : G
⊢ x✝ ∈ MulOpposite.op a • ↑s ↔ x✝ ∈ ↑s

tactic: simp [Set.mem_smul_set_iff_inv_smul_mem, mul_mem_cancel_right, ha]
state_before: case h
α : Type u_1
G : Type u_2
A : Type u_3
S : Type u_4
inst✝² : Group G
inst✝¹ : SetLike S G
inst✝ : SubgroupClass S G
s : S
a : G
ha : a ∈ s
x✝ : G
⊢ x✝ ∈ MulOpposite.op a • ↑s ↔ x✝ ∈ ↑s
state_after: no goals
Theorem: linearIndependent_inl_union_inr'
File: Mathlib/LinearAlgebra/LinearIndependent.lean

tactic: refine isCompl_range_inl_inr.disjoint.mono ?_ ?_ <;>
  simp only [span_le, range_coe, range_comp_subset_range]
state_before: ι : Type u'
ι' : Type u_1
R : Type u_2
K : Type u_3
M : Type u_4
M' : Type u_5
M'' : Type u_6
V : Type u
V' : Type u_7
v✝ : ι → M
inst✝⁶ : Ring R
inst✝⁵ : AddCommGroup M
inst✝⁴ : AddCommGroup M'
inst✝³ : AddCommGroup M''
inst✝² : Module R M
inst✝¹ : Module R M'
inst✝ : Module R M''
a b : R
x y : M
v : ι → M
v' : ι' → M'
hv : LinearIndependent R v
hv' : LinearIndependent R v'
⊢ Disjoint (span R (Set.range (⇑(inl R M M') ∘ v))) (span R (Set.range (⇑(inr R M M') ∘ v')))
state_after: no goals
Theorem: le_div_iff_mul_le'
File: Mathlib/Algebra/Order/Group/Defs.lean

tactic: rw [le_div_iff_mul_le, mul_comm]
state_before: α : Type u
inst✝² : CommGroup α
inst✝¹ : LE α
inst✝ : CovariantClass α α (fun x x_1 => x * x_1) fun x x_1 => x ≤ x_1
a b c d : α
⊢ b ≤ c / a ↔ a * b ≤ c
state_after: no goals
Theorem: Rat.inv_zero
File: .lake/packages/batteries/Batteries/Data/Rat/Lemmas.lean

tactic: unfold Rat.inv
state_before: ⊢ Rat.inv 0 = 0
state_after: ⊢ (if h : num 0 < 0 then { num := -↑(den 0), den := (num 0).natAbs, den_nz := ⋯, reduced := ⋯ }
    else if h : num 0 > 0 then { num := ↑(den 0), den := (num 0).natAbs, den_nz := ⋯, reduced := ⋯ } else 0) =
    0

tactic: rfl
state_before: ⊢ (if h : num 0 < 0 then { num := -↑(den 0), den := (num 0).natAbs, den_nz := ⋯, reduced := ⋯ }
    else if h : num 0 > 0 then { num := ↑(den 0), den := (num 0).natAbs, den_nz := ⋯, reduced := ⋯ } else 0) =
    0
state_after: no goals
Theorem: IsCompact.closedBall_div
File: Mathlib/Analysis/Normed/Group/Pointwise.lean

tactic: simp [div_eq_mul_inv, hs.closedBall_mul hδ]
state_before: E : Type u_1
inst✝ : SeminormedCommGroup E
ε δ : ℝ
s t : Set E
x✝ y : E
hs : IsCompact s
hδ : 0 ≤ δ
x : E
⊢ closedBall x δ * s = x • cthickening δ s
state_after: no goals
Theorem: CategoryTheory.isCoseparator_pi_of_isCoseparator
File: Mathlib/CategoryTheory/Generator.lean

tactic: simp
state_before: C : Type u₁
inst✝³ : Category.{v₁, u₁} C
D : Type u₂
inst✝² : Category.{v₂, u₂} D
inst✝¹ : HasZeroMorphisms C
β : Type w
f : β → C
inst✝ : HasProduct f
b : β
hb : IsCoseparator (f b)
⊢ {f b} ⊆ Set.range f
state_after: no goals
Theorem: PEquiv.toMatrix_trans
File: Mathlib/Data/Matrix/PEquiv.lean

tactic: ext i j
state_before: k : Type u_1
l : Type u_2
m : Type u_3
n : Type u_4
α : Type v
inst✝³ : Fintype m
inst✝² : DecidableEq m
inst✝¹ : DecidableEq n
inst✝ : Semiring α
f : l ≃. m
g : m ≃. n
⊢ (f.trans g).toMatrix = f.toMatrix * g.toMatrix
state_after: case a
k : Type u_1
l : Type u_2
m : Type u_3
n : Type u_4
α : Type v
inst✝³ : Fintype m
inst✝² : DecidableEq m
inst✝¹ : DecidableEq n
inst✝ : Semiring α
f : l ≃. m
g : m ≃. n
i : l
j : n
⊢ (f.trans g).toMatrix i j = (f.toMatrix * g.toMatrix) i j

tactic: rw [mul_matrix_apply]
state_before: case a
k : Type u_1
l : Type u_2
m : Type u_3
n : Type u_4
α : Type v
inst✝³ : Fintype m
inst✝² : DecidableEq m
inst✝¹ : DecidableEq n
inst✝ : Semiring α
f : l ≃. m
g : m ≃. n
i : l
j : n
⊢ (f.trans g).toMatrix i j = (f.toMatrix * g.toMatrix) i j
state_after: case a
k : Type u_1
l : Type u_2
m : Type u_3
n : Type u_4
α : Type v
inst✝³ : Fintype m
inst✝² : DecidableEq m
inst✝¹ : DecidableEq n
inst✝ : Semiring α
f : l ≃. m
g : m ≃. n
i : l
j : n
⊢ (f.trans g).toMatrix i j = Option.casesOn (f i) 0 fun fi => g.toMatrix fi j

tactic: dsimp [toMatrix, PEquiv.trans]
state_before: case a
k : Type u_1
l : Type u_2
m : Type u_3
n : Type u_4
α : Type v
inst✝³ : Fintype m
inst✝² : DecidableEq m
inst✝¹ : DecidableEq n
inst✝ : Semiring α
f : l ≃. m
g : m ≃. n
i : l
j : n
⊢ (f.trans g).toMatrix i j = Option.casesOn (f i) 0 fun fi => g.toMatrix fi j
state_after: case a
k : Type u_1
l : Type u_2
m : Type u_3
n : Type u_4
α : Type v
inst✝³ : Fintype m
inst✝² : DecidableEq m
inst✝¹ : DecidableEq n
inst✝ : Semiring α
f : l ≃. m
g : m ≃. n
i : l
j : n
⊢ (if j ∈ (f i).bind ⇑g then 1 else 0) = Option.rec 0 (fun val => if j ∈ g val then 1 else 0) (f i)

tactic: cases f i <;> simp
state_before: case a
k : Type u_1
l : Type u_2
m : Type u_3
n : Type u_4
α : Type v
inst✝³ : Fintype m
inst✝² : DecidableEq m
inst✝¹ : DecidableEq n
inst✝ : Semiring α
f : l ≃. m
g : m ≃. n
i : l
j : n
⊢ (if j ∈ (f i).bind ⇑g then 1 else 0) = Option.rec 0 (fun val => if j ∈ g val then 1 else 0) (f i)
state_after: no goals
Theorem: Real.IsConjExponent.div_conj_eq_sub_one
File: Mathlib/Data/Real/ConjExponents.lean

tactic: field_simp [h.symm.ne_zero]
state_before: a b p q : ℝ
h : p.IsConjExponent q
⊢ p / q = p - 1
state_after: a b p q : ℝ
h : p.IsConjExponent q
⊢ p = (p - 1) * q

tactic: rw [h.sub_one_mul_conj]
state_before: a b p q : ℝ
h : p.IsConjExponent q
⊢ p = (p - 1) * q
state_after: no goals
Theorem: conformalAt_iff
File: Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean

tactic: simp only [conformalAt_iff', h.fderiv]
state_before: E : Type u_1
F : Type u_2
inst✝³ : NormedAddCommGroup E
inst✝² : NormedAddCommGroup F
inst✝¹ : InnerProductSpace ℝ E
inst✝ : InnerProductSpace ℝ F
f : E → F
x : E
f' : E →L[ℝ] F
h : HasFDerivAt f f' x
⊢ ConformalAt f x ↔ ∃ c, 0 < c ∧ ∀ (u v : E), ⟪f' u, f' v⟫_ℝ = c * ⟪u, v⟫_ℝ
state_after: no goals
Theorem: circleIntegral.integral_sub_zpow_of_undef
File: Mathlib/MeasureTheory/Integral/CircleIntegral.lean

tactic: rcases eq_or_ne R 0 with (rfl | h0)
state_before: E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℂ E
inst✝ : CompleteSpace E
n : ℤ
c w : ℂ
R : ℝ
hn : n < 0
hw : w ∈ sphere c |R|
⊢ (∮ (z : ℂ) in C(c, R), (z - w) ^ n) = 0
state_after: case inl
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℂ E
inst✝ : CompleteSpace E
n : ℤ
c w : ℂ
hn : n < 0
hw : w ∈ sphere c |0|
⊢ (∮ (z : ℂ) in C(c, 0), (z - w) ^ n) = 0

case inr
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℂ E
inst✝ : CompleteSpace E
n : ℤ
c w : ℂ
R : ℝ
hn : n < 0
hw : w ∈ sphere c |R|
h0 : R ≠ 0
⊢ (∮ (z : ℂ) in C(c, R), (z - w) ^ n) = 0

tactic: apply integral_radius_zero
state_before: case inl
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℂ E
inst✝ : CompleteSpace E
n : ℤ
c w : ℂ
hn : n < 0
hw : w ∈ sphere c |0|
⊢ (∮ (z : ℂ) in C(c, 0), (z - w) ^ n) = 0
state_after: no goals

tactic: apply integral_undef
state_before: case inr
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℂ E
inst✝ : CompleteSpace E
n : ℤ
c w : ℂ
R : ℝ
hn : n < 0
hw : w ∈ sphere c |R|
h0 : R ≠ 0
⊢ (∮ (z : ℂ) in C(c, R), (z - w) ^ n) = 0
state_after: case inr.hf
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℂ E
inst✝ : CompleteSpace E
n : ℤ
c w : ℂ
R : ℝ
hn : n < 0
hw : w ∈ sphere c |R|
h0 : R ≠ 0
⊢ ¬CircleIntegrable (fun z => (z - w) ^ n) c R

tactic: simpa [circleIntegrable_sub_zpow_iff, *, not_or]
state_before: case inr.hf
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℂ E
inst✝ : CompleteSpace E
n : ℤ
c w : ℂ
R : ℝ
hn : n < 0
hw : w ∈ sphere c |R|
h0 : R ≠ 0
⊢ ¬CircleIntegrable (fun z => (z - w) ^ n) c R
state_after: no goals
Theorem: Basis.equiv_symm
File: Mathlib/LinearAlgebra/Basis.lean

tactic: simp
state_before: ι : Type u_1
ι' : Type u_2
R : Type u_3
R₂ : Type u_4
K : Type u_5
M : Type u_6
M' : Type u_7
M'' : Type u_8
V : Type u
V' : Type u_9
inst✝⁶ : Semiring R
inst✝⁵ : AddCommMonoid M
inst✝⁴ : Module R M
inst✝³ : AddCommMonoid M'
inst✝² : Module R M'
b b₁ : Basis ι R M
i✝ : ι
c : R
x : M
b' : Basis ι' R M'
e : ι ≃ ι'
inst✝¹ : AddCommMonoid M''
inst✝ : Module R M''
i : ι'
⊢ (b.equiv b' e) ((b.equiv b' e).symm (b' i)) = (b.equiv b' e) ((b'.equiv b e.symm) (b' i))
state_after: no goals
Theorem: IsOfFinOrder.mono
File: Mathlib/GroupTheory/OrderOfElement.lean

tactic: rw [← orderOf_pos_iff] at hx ⊢
state_before: G : Type u_1
H : Type u_2
A : Type u_3
α : Type u_4
β : Type u_5
inst✝¹ : Monoid G
a b x y✝ : G
n m : ℕ
inst✝ : Monoid β
y : β
hx : IsOfFinOrder x
h : orderOf y ∣ orderOf x
⊢ IsOfFinOrder y
state_after: G : Type u_1
H : Type u_2
A : Type u_3
α : Type u_4
β : Type u_5
inst✝¹ : Monoid G
a b x y✝ : G
n m : ℕ
inst✝ : Monoid β
y : β
hx : 0 < orderOf x
h : orderOf y ∣ orderOf x
⊢ 0 < orderOf y

tactic: exact Nat.pos_of_dvd_of_pos h hx
state_before: G : Type u_1
H : Type u_2
A : Type u_3
α : Type u_4
β : Type u_5
inst✝¹ : Monoid G
a b x y✝ : G
n m : ℕ
inst✝ : Monoid β
y : β
hx : 0 < orderOf x
h : orderOf y ∣ orderOf x
⊢ 0 < orderOf y
state_after: no goals
Theorem: FormalMultilinearSeries.compContinuousLinearMap_applyComposition
File: Mathlib/Analysis/Analytic/Composition.lean

tactic: simp (config := {unfoldPartialApp := true}) [applyComposition]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝¹⁵ : CommRing 𝕜
inst✝¹⁴ : AddCommGroup E
inst✝¹³ : AddCommGroup F
inst✝¹² : AddCommGroup G
inst✝¹¹ : Module 𝕜 E
inst✝¹⁰ : Module 𝕜 F
inst✝⁹ : Module 𝕜 G
inst✝⁸ : TopologicalSpace E
inst✝⁷ : TopologicalSpace F
inst✝⁶ : TopologicalSpace G
inst✝⁵ : TopologicalAddGroup E
inst✝⁴ : ContinuousConstSMul 𝕜 E
inst✝³ : TopologicalAddGroup F
inst✝² : ContinuousConstSMul 𝕜 F
inst✝¹ : TopologicalAddGroup G
inst✝ : ContinuousConstSMul 𝕜 G
n : ℕ
p : FormalMultilinearSeries 𝕜 F G
f : E →L[𝕜] F
c : Composition n
v : Fin n → E
⊢ (p.compContinuousLinearMap f).applyComposition c v = p.applyComposition c (⇑f ∘ v)
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝¹⁵ : CommRing 𝕜
inst✝¹⁴ : AddCommGroup E
inst✝¹³ : AddCommGroup F
inst✝¹² : AddCommGroup G
inst✝¹¹ : Module 𝕜 E
inst✝¹⁰ : Module 𝕜 F
inst✝⁹ : Module 𝕜 G
inst✝⁸ : TopologicalSpace E
inst✝⁷ : TopologicalSpace F
inst✝⁶ : TopologicalSpace G
inst✝⁵ : TopologicalAddGroup E
inst✝⁴ : ContinuousConstSMul 𝕜 E
inst✝³ : TopologicalAddGroup F
inst✝² : ContinuousConstSMul 𝕜 F
inst✝¹ : TopologicalAddGroup G
inst✝ : ContinuousConstSMul 𝕜 G
n : ℕ
p : FormalMultilinearSeries 𝕜 F G
f : E →L[𝕜] F
c : Composition n
v : Fin n → E
⊢ (fun i => (p (c.blocksFun i)) (⇑f ∘ v ∘ ⇑(c.embedding i))) = fun i =>
    (p (c.blocksFun i)) ((⇑f ∘ v) ∘ ⇑(c.embedding i))

tactic: rfl
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝¹⁵ : CommRing 𝕜
inst✝¹⁴ : AddCommGroup E
inst✝¹³ : AddCommGroup F
inst✝¹² : AddCommGroup G
inst✝¹¹ : Module 𝕜 E
inst✝¹⁰ : Module 𝕜 F
inst✝⁹ : Module 𝕜 G
inst✝⁸ : TopologicalSpace E
inst✝⁷ : TopologicalSpace F
inst✝⁶ : TopologicalSpace G
inst✝⁵ : TopologicalAddGroup E
inst✝⁴ : ContinuousConstSMul 𝕜 E
inst✝³ : TopologicalAddGroup F
inst✝² : ContinuousConstSMul 𝕜 F
inst✝¹ : TopologicalAddGroup G
inst✝ : ContinuousConstSMul 𝕜 G
n : ℕ
p : FormalMultilinearSeries 𝕜 F G
f : E →L[𝕜] F
c : Composition n
v : Fin n → E
⊢ (fun i => (p (c.blocksFun i)) (⇑f ∘ v ∘ ⇑(c.embedding i))) = fun i =>
    (p (c.blocksFun i)) ((⇑f ∘ v) ∘ ⇑(c.embedding i))
state_after: no goals
Theorem: ENNReal.one_rpow
File: Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean

tactic: rw [← coe_one, coe_rpow_of_ne_zero one_ne_zero]
state_before: x : ℝ
⊢ 1 ^ x = 1
state_after: x : ℝ
⊢ ↑(1 ^ x) = ↑1

tactic: simp
state_before: x : ℝ
⊢ ↑(1 ^ x) = ↑1
state_after: no goals
Theorem: Complex.equivRealProd_symm_apply
File: Mathlib/Data/Complex/Basic.lean

tactic: ext <;> simp [Complex.equivRealProd, ofReal']
state_before: p : ℝ × ℝ
⊢ equivRealProd.symm p = ↑p.1 + ↑p.2 * I
state_after: no goals
Theorem: Lagrange.interpolate_eq_nodalWeight_mul_nodal_div_X_sub_C
File: Mathlib/LinearAlgebra/Lagrange.lean

tactic: rw [mul_comm, basis_eq_prod_sub_inv_mul_nodal_div hj]
state_before: F : Type u_1
inst✝¹ : Field F
ι : Type u_2
inst✝ : DecidableEq ι
s : Finset ι
v r : ι → F
i : ι
x : F
j : ι
hj : j ∈ s
⊢ C (r j) * Lagrange.basis s v j = C (nodalWeight s v j) * (nodal s v / (X - C (v j))) * C (r j)
state_after: no goals
Theorem: Asymptotics.IsLittleO.sqrt
File: Mathlib/Analysis/SpecialFunctions/Pow/Asymptotics.lean

tactic: simpa [Real.sqrt_eq_rpow] using hfg.rpow one_half_pos hg
state_before: α : Type u_1
r c : ℝ
l : Filter α
f g : α → ℝ
hfg : f =o[l] g
hg : 0 ≤ᶠ[l] g
⊢ (fun x => √(f x)) =o[l] fun x => √(g x)
state_after: no goals
Theorem: multiplicity.is_greatest
File: Mathlib/RingTheory/Multiplicity.lean

tactic: rw [PartENat.lt_coe_iff] at hm
state_before: α : Type u_1
β : Type u_2
inst✝³ : Monoid α
inst✝² : Monoid β
inst✝¹ : DecidableRel fun x x_1 => x ∣ x_1
inst✝ : DecidableRel fun x x_1 => x ∣ x_1
a b : α
m : ℕ
hm : multiplicity a b < ↑m
h : a ^ m ∣ b
⊢ False
state_after: α : Type u_1
β : Type u_2
inst✝³ : Monoid α
inst✝² : Monoid β
inst✝¹ : DecidableRel fun x x_1 => x ∣ x_1
inst✝ : DecidableRel fun x x_1 => x ∣ x_1
a b : α
m : ℕ
hm : ∃ (h : (multiplicity a b).Dom), (multiplicity a b).get h < m
h : a ^ m ∣ b
⊢ False

tactic: exact Nat.find_spec hm.fst ((pow_dvd_pow _ hm.snd).trans h)
state_before: α : Type u_1
β : Type u_2
inst✝³ : Monoid α
inst✝² : Monoid β
inst✝¹ : DecidableRel fun x x_1 => x ∣ x_1
inst✝ : DecidableRel fun x x_1 => x ∣ x_1
a b : α
m : ℕ
hm : ∃ (h : (multiplicity a b).Dom), (multiplicity a b).get h < m
h : a ^ m ∣ b
⊢ False
state_after: no goals