1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: isQuasiregular_iff_isUnit'
File: Mathlib/Algebra/Algebra/Quasispectrum.lean

tactic: refine ⟨?_, fun hx ↦ ?_⟩
state_before: R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
x : A
⊢ IsQuasiregular x ↔ IsUnit (1 + ↑x)
state_after: case refine_1
R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
x : A
⊢ IsQuasiregular x → IsUnit (1 + ↑x)

case refine_2
R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
x : A
hx : IsUnit (1 + ↑x)
⊢ IsQuasiregular x

tactic: rintro ⟨u, rfl⟩
state_before: case refine_1
R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
x : A
⊢ IsQuasiregular x → IsUnit (1 + ↑x)
state_after: case refine_1.intro
R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
u : (PreQuasiregular A)ˣ
⊢ IsUnit (1 + ↑(PreQuasiregular.equiv.symm ↑u))

tactic: exact (Unitization.unitsFstOne_mulEquiv_quasiregular R).symm u |>.val.isUnit
state_before: case refine_1.intro
R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
u : (PreQuasiregular A)ˣ
⊢ IsUnit (1 + ↑(PreQuasiregular.equiv.symm ↑u))
state_after: no goals

tactic: exact ⟨(Unitization.unitsFstOne_mulEquiv_quasiregular R) ⟨hx.unit, by simp⟩, by simp⟩
state_before: case refine_2
R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
x : A
hx : IsUnit (1 + ↑x)
⊢ IsQuasiregular x
state_after: no goals

tactic: simp
state_before: R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
x : A
hx : IsUnit (1 + ↑x)
⊢ hx.unit ∈ Unitization.unitsFstOne R A
state_after: no goals

tactic: simp
state_before: R : Type u_1
A : Type u_2
inst✝⁴ : CommSemiring R
inst✝³ : NonUnitalSemiring A
inst✝² : Module R A
inst✝¹ : IsScalarTower R A A
inst✝ : SMulCommClass R A A
x : A
hx : IsUnit (1 + ↑x)
⊢ PreQuasiregular.equiv.symm ↑((Unitization.unitsFstOne_mulEquiv_quasiregular R) ⟨hx.unit, ⋯⟩) = x
state_after: no goals
Theorem: CategoryTheory.Groupoid.isThin_iff
File: Mathlib/CategoryTheory/Groupoid/Basic.lean

tactic: refine ⟨fun h c => h c c, fun h c d => Subsingleton.intro fun f g => ?_⟩
state_before: C : Type u_1
inst✝ : Groupoid C
⊢ Quiver.IsThin C ↔ ∀ (c : C), Subsingleton (c ⟶ c)
state_after: C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
⊢ f = g

tactic: haveI := h d
state_before: C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
⊢ f = g
state_after: C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
this : Subsingleton (d ⟶ d)
⊢ f = g

tactic: calc
  f = f ≫ inv g ≫ g := by simp only [inv_eq_inv, IsIso.inv_hom_id, Category.comp_id]
  _ = f ≫ inv f ≫ g := by congr 1
                          simp only [inv_eq_inv, IsIso.inv_hom_id, eq_iff_true_of_subsingleton]
  _ = g := by simp only [inv_eq_inv, IsIso.hom_inv_id_assoc]
state_before: C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
this : Subsingleton (d ⟶ d)
⊢ f = g
state_after: no goals

tactic: simp only [inv_eq_inv, IsIso.inv_hom_id, Category.comp_id]
state_before: C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
this : Subsingleton (d ⟶ d)
⊢ f = f ≫ inv g ≫ g
state_after: no goals

tactic: congr 1
state_before: C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
this : Subsingleton (d ⟶ d)
⊢ f ≫ inv g ≫ g = f ≫ inv f ≫ g
state_after: case e_a
C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
this : Subsingleton (d ⟶ d)
⊢ inv g ≫ g = inv f ≫ g

tactic: simp only [inv_eq_inv, IsIso.inv_hom_id, eq_iff_true_of_subsingleton]
state_before: case e_a
C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
this : Subsingleton (d ⟶ d)
⊢ inv g ≫ g = inv f ≫ g
state_after: no goals

tactic: simp only [inv_eq_inv, IsIso.hom_inv_id_assoc]
state_before: C : Type u_1
inst✝ : Groupoid C
h : ∀ (c : C), Subsingleton (c ⟶ c)
c d : C
f g : c ⟶ d
this : Subsingleton (d ⟶ d)
⊢ f ≫ inv f ≫ g = g
state_after: no goals
Theorem: le_mul_iff_one_le_right'
File: Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean

tactic: rw [mul_one]
state_before: α : Type u_1
β : Type u_2
inst✝³ : MulOneClass α
inst✝² : LE α
inst✝¹ : CovariantClass α α (fun x x_1 => x * x_1) fun x x_1 => x ≤ x_1
inst✝ : ContravariantClass α α (fun x x_1 => x * x_1) fun x x_1 => x ≤ x_1
a b : α
⊢ a ≤ a * b ↔ a * 1 ≤ a * b
state_after: no goals
Theorem: MeasureTheory.lintegral_le_of_forall_fin_meas_le
File: Mathlib/MeasureTheory/Integral/Lebesgue.lean

tactic: rwa [trim_eq_self]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m m0 : MeasurableSpace α
E : Type u_5
inst✝⁴ : NormedAddCommGroup E
inst✝³ : MeasurableSpace E
inst✝² : OpensMeasurableSpace E
inst✝¹ : MeasurableSpace α
μ : Measure α
inst✝ : SigmaFinite μ
C : ℝ≥0∞
f : α → ℝ≥0∞
hf_meas : AEMeasurable f μ
hf : ∀ (s : Set α), MeasurableSet s → μ s ≠ ⊤ → ∫⁻ (x : α) in s, f x ∂μ ≤ C
⊢ SigmaFinite (μ.trim ?m.458708)
state_after: no goals
Theorem: Int.natAbs_even
File: Mathlib/Algebra/Ring/Int.lean

tactic: simp [even_iff_two_dvd, dvd_natAbs, natCast_dvd.symm]
state_before: m n : ℤ
⊢ Even n.natAbs ↔ Even n
state_after: no goals
Theorem: CategoryTheory.Limits.Pi.lift_π
File: Mathlib/CategoryTheory/Limits/Shapes/Products.lean

tactic: simp only [limit.lift_π, Fan.mk_pt, Fan.mk_π_app]
state_before: β✝ : Type w
α : Type w₂
γ : Type w₃
C : Type u
inst✝¹ : Category.{v, u} C
β : Type w
f : β → C
inst✝ : HasProduct f
P : C
p : (b : β) → P ⟶ f b
b : β
⊢ lift p ≫ π f b = p b
state_after: no goals
Theorem: Multiset.card_sym2
File: Mathlib/Data/Multiset/Sym.lean

tactic: refine m.inductionOn fun xs => ?_
state_before: α : Type u_1
m : Multiset α
⊢ card m.sym2 = (card m + 1).choose 2
state_after: α : Type u_1
m : Multiset α
xs : List α
⊢ card (Multiset.sym2 ⟦xs⟧) = (card ⟦xs⟧ + 1).choose 2

tactic: simp [List.length_sym2]
state_before: α : Type u_1
m : Multiset α
xs : List α
⊢ card (Multiset.sym2 ⟦xs⟧) = (card ⟦xs⟧ + 1).choose 2
state_after: no goals
Theorem: Int.fract_add
File: Mathlib/Algebra/Order/Floor.lean

tactic: unfold fract
state_before: F : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : LinearOrderedRing α
inst✝ : FloorRing α
z : ℤ
a✝ a b : α
⊢ fract (a + b) - fract a - fract b = ↑(⌊a⌋ + ⌊b⌋ - ⌊a + b⌋)
state_after: F : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : LinearOrderedRing α
inst✝ : FloorRing α
z : ℤ
a✝ a b : α
⊢ a + b - ↑⌊a + b⌋ - (a - ↑⌊a⌋) - (b - ↑⌊b⌋) = ↑(⌊a⌋ + ⌊b⌋ - ⌊a + b⌋)

tactic: simp only [sub_eq_add_neg, neg_add_rev, neg_neg, cast_add, cast_neg]
state_before: F : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : LinearOrderedRing α
inst✝ : FloorRing α
z : ℤ
a✝ a b : α
⊢ a + b - ↑⌊a + b⌋ - (a - ↑⌊a⌋) - (b - ↑⌊b⌋) = ↑(⌊a⌋ + ⌊b⌋ - ⌊a + b⌋)
state_after: F : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : LinearOrderedRing α
inst✝ : FloorRing α
z : ℤ
a✝ a b : α
⊢ a + b + -↑⌊a + b⌋ + (↑⌊a⌋ + -a) + (↑⌊b⌋ + -b) = ↑⌊a⌋ + ↑⌊b⌋ + -↑⌊a + b⌋

tactic: abel
state_before: F : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : LinearOrderedRing α
inst✝ : FloorRing α
z : ℤ
a✝ a b : α
⊢ a + b + -↑⌊a + b⌋ + (↑⌊a⌋ + -a) + (↑⌊b⌋ + -b) = ↑⌊a⌋ + ↑⌊b⌋ + -↑⌊a + b⌋
state_after: no goals
Theorem: sdiff_right_comm
File: Mathlib/Order/Heyting/Basic.lean

tactic: simp_rw [sdiff_sdiff, sup_comm]
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝ : GeneralizedCoheytingAlgebra α
a✝ b✝ c✝ d a b c : α
⊢ (a \ b) \ c = (a \ c) \ b
state_after: no goals
Theorem: List.toFinsupp_eq_sum_map_enum_single
File: Mathlib/Data/List/ToFinsupp.lean

tactic: revert l
state_before: M : Type u_1
inst✝³ : Zero M
l✝ : List M
inst✝² : DecidablePred fun x => l✝.getD x 0 ≠ 0
n : ℕ
R : Type u_2
inst✝¹ : AddMonoid R
l : List R
inst✝ : DecidablePred fun x => l.getD x 0 ≠ 0
⊢ l.toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) l.enum).sum
state_after: M : Type u_1
inst✝² : Zero M
l : List M
inst✝¹ : DecidablePred fun x => l.getD x 0 ≠ 0
n : ℕ
R : Type u_2
inst✝ : AddMonoid R
⊢ ∀ (l : List R) [inst : DecidablePred fun x => l.getD x 0 ≠ 0],
    l.toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) l.enum).sum

tactic: intro l
state_before: M : Type u_1
inst✝² : Zero M
l : List M
inst✝¹ : DecidablePred fun x => l.getD x 0 ≠ 0
n : ℕ
R : Type u_2
inst✝ : AddMonoid R
⊢ ∀ (l : List R) [inst : DecidablePred fun x => l.getD x 0 ≠ 0],
    l.toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) l.enum).sum
state_after: M : Type u_1
inst✝² : Zero M
l✝ : List M
inst✝¹ : DecidablePred fun x => l✝.getD x 0 ≠ 0
n : ℕ
R : Type u_2
inst✝ : AddMonoid R
l : List R
⊢ ∀ [inst : DecidablePred fun x => l.getD x 0 ≠ 0], l.toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) l.enum).sum

tactic: induction l using List.reverseRecOn with
| nil => exact toFinsupp_nil
| append_singleton x xs ih =>
  classical simp [toFinsupp_concat_eq_toFinsupp_add_single, enum_append, ih]
state_before: M : Type u_1
inst✝² : Zero M
l✝ : List M
inst✝¹ : DecidablePred fun x => l✝.getD x 0 ≠ 0
n : ℕ
R : Type u_2
inst✝ : AddMonoid R
l : List R
⊢ ∀ [inst : DecidablePred fun x => l.getD x 0 ≠ 0], l.toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) l.enum).sum
state_after: no goals

tactic: exact toFinsupp_nil
state_before: case nil
M : Type u_1
inst✝² : Zero M
l : List M
inst✝¹ : DecidablePred fun x => l.getD x 0 ≠ 0
n : ℕ
R : Type u_2
inst✝ : AddMonoid R
⊢ ∀ [inst : DecidablePred fun x => [].getD x 0 ≠ 0],
    [].toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) [].enum).sum
state_after: no goals

tactic: classical simp [toFinsupp_concat_eq_toFinsupp_add_single, enum_append, ih]
state_before: case append_singleton
M : Type u_1
inst✝² : Zero M
l : List M
inst✝¹ : DecidablePred fun x => l.getD x 0 ≠ 0
n : ℕ
R : Type u_2
inst✝ : AddMonoid R
x : List R
xs : R
ih :
  ∀ [inst : DecidablePred fun x_1 => x.getD x_1 0 ≠ 0],
    x.toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) x.enum).sum
⊢ ∀ [inst : DecidablePred fun x_1 => (x ++ [xs]).getD x_1 0 ≠ 0],
    (x ++ [xs]).toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) (x ++ [xs]).enum).sum
state_after: no goals

tactic: simp [toFinsupp_concat_eq_toFinsupp_add_single, enum_append, ih]
state_before: case append_singleton
M : Type u_1
inst✝² : Zero M
l : List M
inst✝¹ : DecidablePred fun x => l.getD x 0 ≠ 0
n : ℕ
R : Type u_2
inst✝ : AddMonoid R
x : List R
xs : R
ih :
  ∀ [inst : DecidablePred fun x_1 => x.getD x_1 0 ≠ 0],
    x.toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) x.enum).sum
⊢ ∀ [inst : DecidablePred fun x_1 => (x ++ [xs]).getD x_1 0 ≠ 0],
    (x ++ [xs]).toFinsupp = (map (fun nr => Finsupp.single nr.1 nr.2) (x ++ [xs]).enum).sum
state_after: no goals
Theorem: Matrix.eq_zero_of_mulVec_eq_zero
File: Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean

tactic: rwa [det_transpose]
state_before: m : Type u_1
R : Type u_2
A : Type u_3
inst✝⁴ : Fintype m
inst✝³ : CommRing R
inst✝² : CommRing A
inst✝¹ : IsDomain A
inst✝ : DecidableEq m
M : Matrix m m A
hM : M.det ≠ 0
v : m → A
hv : M *ᵥ v = 0
⊢ Mᵀ.det ≠ 0
state_after: no goals
Theorem: Lagrange.degree_basisDivisor_of_ne
File: Mathlib/LinearAlgebra/Lagrange.lean

tactic: rw [basisDivisor, degree_mul, degree_X_sub_C, degree_C, zero_add]
state_before: F : Type u_1
inst✝ : Field F
x y : F
hxy : x ≠ y
⊢ (basisDivisor x y).degree = 1
state_after: F : Type u_1
inst✝ : Field F
x y : F
hxy : x ≠ y
⊢ (x - y)⁻¹ ≠ 0

tactic: exact inv_ne_zero (sub_ne_zero_of_ne hxy)
state_before: F : Type u_1
inst✝ : Field F
x y : F
hxy : x ≠ y
⊢ (x - y)⁻¹ ≠ 0
state_after: no goals
Theorem: CategoryTheory.MonoidalCategory.inv_hom_id_tensor'
File: Mathlib/CategoryTheory/Monoidal/Category.lean

tactic: rw [← tensor_comp, IsIso.inv_hom_id]
state_before: C✝ : Type u
𝒞 : Category.{v, u} C✝
inst✝³ : MonoidalCategory C✝
C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : MonoidalCategory C
U V✝ W✝ X✝ Y✝ Z✝ V W X Y Z : C
f : V ⟶ W
inst✝ : IsIso f
g : X ⟶ Y
h : Y ⟶ Z
⊢ (inv f ⊗ g) ≫ (f ⊗ h) = (𝟙 W ⊗ g) ≫ (𝟙 W ⊗ h)
state_after: C✝ : Type u
𝒞 : Category.{v, u} C✝
inst✝³ : MonoidalCategory C✝
C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : MonoidalCategory C
U V✝ W✝ X✝ Y✝ Z✝ V W X Y Z : C
f : V ⟶ W
inst✝ : IsIso f
g : X ⟶ Y
h : Y ⟶ Z
⊢ 𝟙 W ⊗ g ≫ h = (𝟙 W ⊗ g) ≫ (𝟙 W ⊗ h)

tactic: simp [id_tensorHom]
state_before: C✝ : Type u
𝒞 : Category.{v, u} C✝
inst✝³ : MonoidalCategory C✝
C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : MonoidalCategory C
U V✝ W✝ X✝ Y✝ Z✝ V W X Y Z : C
f : V ⟶ W
inst✝ : IsIso f
g : X ⟶ Y
h : Y ⟶ Z
⊢ 𝟙 W ⊗ g ≫ h = (𝟙 W ⊗ g) ≫ (𝟙 W ⊗ h)
state_after: no goals
Theorem: Orientation.areaForm_comp_rightAngleRotation
File: Mathlib/Analysis/InnerProductSpace/TwoDim.lean

tactic: simp
state_before: E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : InnerProductSpace ℝ E
inst✝ : Fact (finrank ℝ E = 2)
o : Orientation ℝ E (Fin 2)
x y : E
⊢ (o.areaForm (o.rightAngleRotation x)) (o.rightAngleRotation y) = (o.areaForm x) y
state_after: no goals
Theorem: List.support_formPerm_le
File: Mathlib/GroupTheory/Perm/List.lean

tactic: intro x hx
state_before: α : Type u_1
β : Type u_2
inst✝¹ : DecidableEq α
l : List α
inst✝ : Fintype α
⊢ l.formPerm.support ≤ l.toFinset
state_after: α : Type u_1
β : Type u_2
inst✝¹ : DecidableEq α
l : List α
inst✝ : Fintype α
x : α
hx : x ∈ l.formPerm.support
⊢ x ∈ l.toFinset

tactic: have hx' : x ∈ { x | formPerm l x ≠ x } := by simpa using hx
state_before: α : Type u_1
β : Type u_2
inst✝¹ : DecidableEq α
l : List α
inst✝ : Fintype α
x : α
hx : x ∈ l.formPerm.support
⊢ x ∈ l.toFinset
state_after: α : Type u_1
β : Type u_2
inst✝¹ : DecidableEq α
l : List α
inst✝ : Fintype α
x : α
hx : x ∈ l.formPerm.support
hx' : x ∈ {x | l.formPerm x ≠ x}
⊢ x ∈ l.toFinset

tactic: simpa using support_formPerm_le' _ hx'
state_before: α : Type u_1
β : Type u_2
inst✝¹ : DecidableEq α
l : List α
inst✝ : Fintype α
x : α
hx : x ∈ l.formPerm.support
hx' : x ∈ {x | l.formPerm x ≠ x}
⊢ x ∈ l.toFinset
state_after: no goals

tactic: simpa using hx
state_before: α : Type u_1
β : Type u_2
inst✝¹ : DecidableEq α
l : List α
inst✝ : Fintype α
x : α
hx : x ∈ l.formPerm.support
⊢ x ∈ {x | l.formPerm x ≠ x}
state_after: no goals
Theorem: algebraMap_le_of_le_spectrum
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.713026) [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, r ≤ x
ha : autoParam (p a) _auto✝
⊢ (algebraMap R A) r ≤ a
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.713026) [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, r ≤ x
ha : autoParam (p a) _auto✝
⊢ (algebraMap R A) r ≤ cfc id a

tactic: exact algebraMap_le_cfc 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.713026) [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, r ≤ x
ha : autoParam (p a) _auto✝
⊢ (algebraMap R A) r ≤ cfc id a
state_after: no goals
Theorem: Equiv.Perm.set_support_mul_subset
File: Mathlib/GroupTheory/Perm/Support.lean

tactic: intro x
state_before: α : Type u_1
p q : Perm α
⊢ {x | (p * q) x ≠ x} ⊆ {x | p x ≠ x} ∪ {x | q x ≠ x}
state_after: α : Type u_1
p q : Perm α
x : α
⊢ x ∈ {x | (p * q) x ≠ x} → x ∈ {x | p x ≠ x} ∪ {x | q x ≠ x}

tactic: simp only [Perm.coe_mul, Function.comp_apply, Ne, Set.mem_union, Set.mem_setOf_eq]
state_before: α : Type u_1
p q : Perm α
x : α
⊢ x ∈ {x | (p * q) x ≠ x} → x ∈ {x | p x ≠ x} ∪ {x | q x ≠ x}
state_after: α : Type u_1
p q : Perm α
x : α
⊢ ¬p (q x) = x → ¬p x = x ∨ ¬q x = x

tactic: by_cases hq : q x = x <;> simp [hq]
state_before: α : Type u_1
p q : Perm α
x : α
⊢ ¬p (q x) = x → ¬p x = x ∨ ¬q x = x
state_after: no goals
Theorem: MeasureTheory.SignedMeasure.measurable_rnDeriv
File: Mathlib/MeasureTheory/Decomposition/SignedLebesgue.lean

tactic: rw [rnDeriv_def]
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable (s.rnDeriv μ)
state_after: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable fun x =>
    (s.toJordanDecomposition.posPart.rnDeriv μ x).toReal - (s.toJordanDecomposition.negPart.rnDeriv μ x).toReal

tactic: apply Measurable.add
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable fun x =>
    (s.toJordanDecomposition.posPart.rnDeriv μ x).toReal - (s.toJordanDecomposition.negPart.rnDeriv μ x).toReal
state_after: case hf
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable fun a => (s.toJordanDecomposition.posPart.rnDeriv μ a).toReal

case hg
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable fun a => -(s.toJordanDecomposition.negPart.rnDeriv μ a).toReal

tactic: exact ((Measure.measurable_rnDeriv _ μ).ennreal_toNNReal).coe_nnreal_real
state_before: case hf
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable fun a => (s.toJordanDecomposition.posPart.rnDeriv μ a).toReal
state_after: no goals

tactic: rw [measurable_neg_iff]
state_before: case hg
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable fun a => -(s.toJordanDecomposition.negPart.rnDeriv μ a).toReal
state_after: case hg
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable fun a => (s.toJordanDecomposition.negPart.rnDeriv μ a).toReal

tactic: exact (Measure.measurable_rnDeriv _ μ).ennreal_toNNReal.coe_nnreal_real
state_before: case hg
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν : Measure α
s✝ t s : SignedMeasure α
μ : Measure α
⊢ Measurable fun a => (s.toJordanDecomposition.negPart.rnDeriv μ a).toReal
state_after: no goals
Theorem: DistribMulActionHom.id_apply
File: Mathlib/GroupTheory/GroupAction/Hom.lean

tactic: rfl
state_before: M : Type u_1
inst✝¹⁵ : Monoid M
N : Type u_2
inst✝¹⁴ : Monoid N
P : Type u_3
inst✝¹³ : Monoid P
φ : M →* N
φ' : N →* M
ψ : N →* P
χ : M →* P
A : Type u_4
inst✝¹² : AddMonoid A
inst✝¹¹ : DistribMulAction M A
B : Type u_5
inst✝¹⁰ : AddMonoid B
inst✝⁹ : DistribMulAction N B
B₁ : Type u_6
inst✝⁸ : AddMonoid B₁
inst✝⁷ : DistribMulAction M B₁
C : Type u_7
inst✝⁶ : AddMonoid C
inst✝⁵ : DistribMulAction P C
A' : Type u_8
inst✝⁴ : AddGroup A'
inst✝³ : DistribMulAction M A'
B' : Type u_9
inst✝² : AddGroup B'
inst✝¹ : DistribMulAction N B'
F : Type u_10
inst✝ : FunLike F A B
x : A
⊢ (DistribMulActionHom.id M) x = x
state_after: no goals
Theorem: Real.isConjExponent_one_div
File: Mathlib/Data/Real/ConjExponents.lean

tactic: simpa using IsConjExponent.inv_inv ha hb hab
state_before: a b p q : ℝ
h : p.IsConjExponent q
ha : 0 < a
hb : 0 < b
hab : a + b = 1
⊢ (1 / a).IsConjExponent (1 / b)
state_after: no goals
Theorem: TensorProduct.finsuppRight_apply
File: Mathlib/LinearAlgebra/DirectSum/Finsupp.lean

tactic: induction t with
| zero => simp
| tmul m f => simp [finsuppRight_apply_tmul_apply]
| add x y hx hy => simp [map_add, hx, hy]
state_before: R : Type u_1
inst✝⁵ : CommSemiring R
M : Type u_2
inst✝⁴ : AddCommMonoid M
inst✝³ : Module R M
N : Type u_3
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
ι : Type u_4
inst✝ : DecidableEq ι
t : M ⊗[R] (ι →₀ N)
i : ι
⊢ ((finsuppRight R M N ι) t) i = (lTensor M (Finsupp.lapply i)) t
state_after: no goals

tactic: simp
state_before: case zero
R : Type u_1
inst✝⁵ : CommSemiring R
M : Type u_2
inst✝⁴ : AddCommMonoid M
inst✝³ : Module R M
N : Type u_3
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
ι : Type u_4
inst✝ : DecidableEq ι
i : ι
⊢ ((finsuppRight R M N ι) 0) i = (lTensor M (Finsupp.lapply i)) 0
state_after: no goals

tactic: simp [finsuppRight_apply_tmul_apply]
state_before: case tmul
R : Type u_1
inst✝⁵ : CommSemiring R
M : Type u_2
inst✝⁴ : AddCommMonoid M
inst✝³ : Module R M
N : Type u_3
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
ι : Type u_4
inst✝ : DecidableEq ι
i : ι
m : M
f : ι →₀ N
⊢ ((finsuppRight R M N ι) (m ⊗ₜ[R] f)) i = (lTensor M (Finsupp.lapply i)) (m ⊗ₜ[R] f)
state_after: no goals

tactic: simp [map_add, hx, hy]
state_before: case add
R : Type u_1
inst✝⁵ : CommSemiring R
M : Type u_2
inst✝⁴ : AddCommMonoid M
inst✝³ : Module R M
N : Type u_3
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
ι : Type u_4
inst✝ : DecidableEq ι
i : ι
x y : M ⊗[R] (ι →₀ N)
hx : ((finsuppRight R M N ι) x) i = (lTensor M (Finsupp.lapply i)) x
hy : ((finsuppRight R M N ι) y) i = (lTensor M (Finsupp.lapply i)) y
⊢ ((finsuppRight R M N ι) (x + y)) i = (lTensor M (Finsupp.lapply i)) (x + y)
state_after: no goals
Theorem: PrimeSpectrum.basicOpen_eq_zeroLocus_compl
File: Mathlib/AlgebraicGeometry/PrimeSpectrum/Basic.lean

tactic: simp only [SetLike.mem_coe, mem_basicOpen, Set.mem_compl_iff, mem_zeroLocus,
Set.singleton_subset_iff]
state_before: R : Type u
S : Type v
inst✝¹ : CommSemiring R
inst✝ : CommSemiring S
r : R
x : PrimeSpectrum R
⊢ x ∈ ↑(basicOpen r) ↔ x ∈ (zeroLocus {r})ᶜ
state_after: no goals
Theorem: div_eq_div_mul_div
File: Mathlib/Algebra/Group/Basic.lean

tactic: simp [mul_left_comm c]
state_before: α : Type u_1
β : Type u_2
G : Type u_3
M : Type u_4
inst✝ : CommGroup G
a✝ b✝ c✝ d a b c : G
⊢ a / b = c / b * (a / c)
state_after: no goals
Theorem: Complex.arg_of_im_neg
File: Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean

tactic: have h₀ : z ≠ 0 := mt (congr_arg im) hz.ne
state_before: a x z✝ z : ℂ
hz : z.im < 0
⊢ z.arg = -Real.arccos (z.re / abs z)
state_after: a x z✝ z : ℂ
hz : z.im < 0
h₀ : z ≠ 0
⊢ z.arg = -Real.arccos (z.re / abs z)

tactic: rw [← cos_arg h₀, ← Real.cos_neg, Real.arccos_cos, neg_neg]
state_before: a x z✝ z : ℂ
hz : z.im < 0
h₀ : z ≠ 0
⊢ z.arg = -Real.arccos (z.re / abs z)
state_after: case hx₁
a x z✝ z : ℂ
hz : z.im < 0
h₀ : z ≠ 0
⊢ 0 ≤ -z.arg

case hx₂
a x z✝ z : ℂ
hz : z.im < 0
h₀ : z ≠ 0
⊢ -z.arg ≤ π

tactic: exacts [neg_nonneg.2 (arg_neg_iff.2 hz).le, neg_le.2 (neg_pi_lt_arg z).le]
state_before: case hx₁
a x z✝ z : ℂ
hz : z.im < 0
h₀ : z ≠ 0
⊢ 0 ≤ -z.arg

case hx₂
a x z✝ z : ℂ
hz : z.im < 0
h₀ : z ≠ 0
⊢ -z.arg ≤ π
state_after: no goals
Theorem: expNegInvGlue.contDiff
File: Mathlib/Analysis/SpecialFunctions/SmoothTransition.lean

tactic: simpa using contDiff_polynomial_eval_inv_mul 1
state_before: n : ℕ∞
⊢ ContDiff ℝ n expNegInvGlue
state_after: no goals