1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: preimage_smul_setₛₗ_of_units
File: Mathlib/GroupTheory/GroupAction/Pointwise.lean

tactic: apply preimage_smul_setₛₗ'
state_before: R : Type u_1
S : Type u_2
M : Type u_3
M₁ : Type u_4
M₂ : Type u_5
N : Type u_6
inst✝⁷ : Monoid R
inst✝⁶ : Monoid S
σ : R → S
inst✝⁵ : MulAction R M
inst✝⁴ : MulAction S N
inst✝³ : MulAction R M₁
inst✝² : MulAction R M₂
F : Type u_7
h : F
inst✝¹ : FunLike F M N
inst✝ : MulActionSemiHomClass F σ M N
c : R
s : Set M
t : Set N
hc : IsUnit c
hc' : IsUnit (σ c)
⊢ ⇑h ⁻¹' (σ c • t) = c • ⇑h ⁻¹' t
state_after: case hc
R : Type u_1
S : Type u_2
M : Type u_3
M₁ : Type u_4
M₂ : Type u_5
N : Type u_6
inst✝⁷ : Monoid R
inst✝⁶ : Monoid S
σ : R → S
inst✝⁵ : MulAction R M
inst✝⁴ : MulAction S N
inst✝³ : MulAction R M₁
inst✝² : MulAction R M₂
F : Type u_7
h : F
inst✝¹ : FunLike F M N
inst✝ : MulActionSemiHomClass F σ M N
c : R
s : Set M
t : Set N
hc : IsUnit c
hc' : IsUnit (σ c)
⊢ Function.Surjective fun m => c • m

case hc'
R : Type u_1
S : Type u_2
M : Type u_3
M₁ : Type u_4
M₂ : Type u_5
N : Type u_6
inst✝⁷ : Monoid R
inst✝⁶ : Monoid S
σ : R → S
inst✝⁵ : MulAction R M
inst✝⁴ : MulAction S N
inst✝³ : MulAction R M₁
inst✝² : MulAction R M₂
F : Type u_7
h : F
inst✝¹ : FunLike F M N
inst✝ : MulActionSemiHomClass F σ M N
c : R
s : Set M
t : Set N
hc : IsUnit c
hc' : IsUnit (σ c)
⊢ Function.Injective fun n => σ c • n

tactic: exact (MulAction.smul_bijective_of_is_unit hc).surjective
state_before: case hc
R : Type u_1
S : Type u_2
M : Type u_3
M₁ : Type u_4
M₂ : Type u_5
N : Type u_6
inst✝⁷ : Monoid R
inst✝⁶ : Monoid S
σ : R → S
inst✝⁵ : MulAction R M
inst✝⁴ : MulAction S N
inst✝³ : MulAction R M₁
inst✝² : MulAction R M₂
F : Type u_7
h : F
inst✝¹ : FunLike F M N
inst✝ : MulActionSemiHomClass F σ M N
c : R
s : Set M
t : Set N
hc : IsUnit c
hc' : IsUnit (σ c)
⊢ Function.Surjective fun m => c • m
state_after: no goals

tactic: exact (MulAction.smul_bijective_of_is_unit hc').injective
state_before: case hc'
R : Type u_1
S : Type u_2
M : Type u_3
M₁ : Type u_4
M₂ : Type u_5
N : Type u_6
inst✝⁷ : Monoid R
inst✝⁶ : Monoid S
σ : R → S
inst✝⁵ : MulAction R M
inst✝⁴ : MulAction S N
inst✝³ : MulAction R M₁
inst✝² : MulAction R M₂
F : Type u_7
h : F
inst✝¹ : FunLike F M N
inst✝ : MulActionSemiHomClass F σ M N
c : R
s : Set M
t : Set N
hc : IsUnit c
hc' : IsUnit (σ c)
⊢ Function.Injective fun n => σ c • n
state_after: no goals
Theorem: LinearMap.IsOrthoᵢ.not_isOrtho_basis_self_of_separatingRight
File: Mathlib/LinearAlgebra/SesquilinearForm.lean

tactic: rw [isOrthoᵢ_flip] at h
state_before: R : Type u_1
R₁ : Type u_2
R₂ : Type u_3
R₃ : Type u_4
M : Type u_5
M₁ : Type u_6
M₂ : Type u_7
M₃ : Type u_8
Mₗ₁ : Type u_9
Mₗ₁' : Type u_10
Mₗ₂ : Type u_11
Mₗ₂' : Type u_12
K : Type u_13
K₁ : Type u_14
K₂ : Type u_15
V : Type u_16
V₁ : Type u_17
V₂ : Type u_18
n : Type u_19
inst✝⁵ : CommRing R
inst✝⁴ : AddCommGroup M
inst✝³ : Module R M
inst✝² : AddCommGroup M₁
inst✝¹ : Module R M₁
I I' : R →+* R
inst✝ : Nontrivial R
B : M →ₛₗ[I] M →ₛₗ[I'] M₁
v : Basis n R M
h : B.IsOrthoᵢ ⇑v
hB : B.SeparatingRight
i : n
⊢ ¬B.IsOrtho (v i) (v i)
state_after: R : Type u_1
R₁ : Type u_2
R₂ : Type u_3
R₃ : Type u_4
M : Type u_5
M₁ : Type u_6
M₂ : Type u_7
M₃ : Type u_8
Mₗ₁ : Type u_9
Mₗ₁' : Type u_10
Mₗ₂ : Type u_11
Mₗ₂' : Type u_12
K : Type u_13
K₁ : Type u_14
K₂ : Type u_15
V : Type u_16
V₁ : Type u_17
V₂ : Type u_18
n : Type u_19
inst✝⁵ : CommRing R
inst✝⁴ : AddCommGroup M
inst✝³ : Module R M
inst✝² : AddCommGroup M₁
inst✝¹ : Module R M₁
I I' : R →+* R
inst✝ : Nontrivial R
B : M →ₛₗ[I] M →ₛₗ[I'] M₁
v : Basis n R M
h : B.flip.IsOrthoᵢ ⇑v
hB : B.SeparatingRight
i : n
⊢ ¬B.IsOrtho (v i) (v i)

tactic: rw [isOrtho_flip]
state_before: R : Type u_1
R₁ : Type u_2
R₂ : Type u_3
R₃ : Type u_4
M : Type u_5
M₁ : Type u_6
M₂ : Type u_7
M₃ : Type u_8
Mₗ₁ : Type u_9
Mₗ₁' : Type u_10
Mₗ₂ : Type u_11
Mₗ₂' : Type u_12
K : Type u_13
K₁ : Type u_14
K₂ : Type u_15
V : Type u_16
V₁ : Type u_17
V₂ : Type u_18
n : Type u_19
inst✝⁵ : CommRing R
inst✝⁴ : AddCommGroup M
inst✝³ : Module R M
inst✝² : AddCommGroup M₁
inst✝¹ : Module R M₁
I I' : R →+* R
inst✝ : Nontrivial R
B : M →ₛₗ[I] M →ₛₗ[I'] M₁
v : Basis n R M
h : B.flip.IsOrthoᵢ ⇑v
hB : B.SeparatingRight
i : n
⊢ ¬B.IsOrtho (v i) (v i)
state_after: R : Type u_1
R₁ : Type u_2
R₂ : Type u_3
R₃ : Type u_4
M : Type u_5
M₁ : Type u_6
M₂ : Type u_7
M₃ : Type u_8
Mₗ₁ : Type u_9
Mₗ₁' : Type u_10
Mₗ₂ : Type u_11
Mₗ₂' : Type u_12
K : Type u_13
K₁ : Type u_14
K₂ : Type u_15
V : Type u_16
V₁ : Type u_17
V₂ : Type u_18
n : Type u_19
inst✝⁵ : CommRing R
inst✝⁴ : AddCommGroup M
inst✝³ : Module R M
inst✝² : AddCommGroup M₁
inst✝¹ : Module R M₁
I I' : R →+* R
inst✝ : Nontrivial R
B : M →ₛₗ[I] M →ₛₗ[I'] M₁
v : Basis n R M
h : B.flip.IsOrthoᵢ ⇑v
hB : B.SeparatingRight
i : n
⊢ ¬B.flip.IsOrtho (v i) (v i)

tactic: exact h.not_isOrtho_basis_self_of_separatingLeft (flip_separatingLeft.mpr hB) i
state_before: R : Type u_1
R₁ : Type u_2
R₂ : Type u_3
R₃ : Type u_4
M : Type u_5
M₁ : Type u_6
M₂ : Type u_7
M₃ : Type u_8
Mₗ₁ : Type u_9
Mₗ₁' : Type u_10
Mₗ₂ : Type u_11
Mₗ₂' : Type u_12
K : Type u_13
K₁ : Type u_14
K₂ : Type u_15
V : Type u_16
V₁ : Type u_17
V₂ : Type u_18
n : Type u_19
inst✝⁵ : CommRing R
inst✝⁴ : AddCommGroup M
inst✝³ : Module R M
inst✝² : AddCommGroup M₁
inst✝¹ : Module R M₁
I I' : R →+* R
inst✝ : Nontrivial R
B : M →ₛₗ[I] M →ₛₗ[I'] M₁
v : Basis n R M
h : B.flip.IsOrthoᵢ ⇑v
hB : B.SeparatingRight
i : n
⊢ ¬B.flip.IsOrtho (v i) (v i)
state_after: no goals
Theorem: Subalgebra.rangeS_algebraMap
File: Mathlib/Algebra/Algebra/Subalgebra/Basic.lean

tactic: rw [algebraMap_eq, Algebra.id.map_eq_id, RingHom.id_comp, ← toSubsemiring_subtype,
  Subsemiring.rangeS_subtype]
state_before: R✝ : Type u
A✝ : Type v
B : Type w
inst✝⁷ : CommSemiring R✝
inst✝⁶ : Semiring A✝
inst✝⁵ : Algebra R✝ A✝
inst✝⁴ : Semiring B
inst✝³ : Algebra R✝ B
S✝ : Subalgebra R✝ A✝
α : Type u_1
β : Type u_2
R : Type u_3
A : Type u_4
inst✝² : CommSemiring R
inst✝¹ : CommSemiring A
inst✝ : Algebra R A
S : Subalgebra R A
⊢ (algebraMap (↥S) A).rangeS = S.toSubsemiring
state_after: no goals
Theorem: WeierstrassCurve.Jacobian.eval_polynomialZ
File: Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean

tactic: rw [polynomialZ_eq]
state_before: R : Type u
inst✝¹ : CommRing R
W' : Jacobian R
F : Type v
inst✝ : Field F
W : Jacobian F
P : Fin 3 → R
⊢ (eval P) W'.polynomialZ =
    W'.a₁ * P x * P y + 3 * W'.a₃ * P y * P z ^ 2 -
      (2 * W'.a₂ * P x ^ 2 * P z + 4 * W'.a₄ * P x * P z ^ 3 + 6 * W'.a₆ * P z ^ 5)
state_after: R : Type u
inst✝¹ : CommRing R
W' : Jacobian R
F : Type v
inst✝ : Field F
W : Jacobian F
P : Fin 3 → R
⊢ (eval P)
      (C W'.a₁ * X x * X y + C (3 * W'.a₃) * X y * X z ^ 2 -
        (C (2 * W'.a₂) * X x ^ 2 * X z + C (4 * W'.a₄) * X x * X z ^ 3 + C (6 * W'.a₆) * X z ^ 5)) =
    W'.a₁ * P x * P y + 3 * W'.a₃ * P y * P z ^ 2 -
      (2 * W'.a₂ * P x ^ 2 * P z + 4 * W'.a₄ * P x * P z ^ 3 + 6 * W'.a₆ * P z ^ 5)

tactic: eval_simp
state_before: R : Type u
inst✝¹ : CommRing R
W' : Jacobian R
F : Type v
inst✝ : Field F
W : Jacobian F
P : Fin 3 → R
⊢ (eval P)
      (C W'.a₁ * X x * X y + C (3 * W'.a₃) * X y * X z ^ 2 -
        (C (2 * W'.a₂) * X x ^ 2 * X z + C (4 * W'.a₄) * X x * X z ^ 3 + C (6 * W'.a₆) * X z ^ 5)) =
    W'.a₁ * P x * P y + 3 * W'.a₃ * P y * P z ^ 2 -
      (2 * W'.a₂ * P x ^ 2 * P z + 4 * W'.a₄ * P x * P z ^ 3 + 6 * W'.a₆ * P z ^ 5)
state_after: no goals
Theorem: CategoryTheory.ShortComplex.Exact.isIso_f'
File: Mathlib/Algebra/Homology/ShortComplex/Exact.lean

tactic: have := hS.epi_f' h
state_before: C : Type u_1
D : Type u_2
inst✝⁵ : Category.{u_3, u_1} C
inst✝⁴ : Category.{?u.136410, u_2} D
inst✝³ : Preadditive C
inst✝² : Preadditive D
S : ShortComplex C
inst✝¹ : Balanced C
hS : S.Exact
h : S.LeftHomologyData
inst✝ : Mono S.f
⊢ IsIso h.f'
state_after: C : Type u_1
D : Type u_2
inst✝⁵ : Category.{u_3, u_1} C
inst✝⁴ : Category.{?u.136410, u_2} D
inst✝³ : Preadditive C
inst✝² : Preadditive D
S : ShortComplex C
inst✝¹ : Balanced C
hS : S.Exact
h : S.LeftHomologyData
inst✝ : Mono S.f
this : Epi h.f'
⊢ IsIso h.f'

tactic: have := mono_of_mono_fac h.f'_i
state_before: C : Type u_1
D : Type u_2
inst✝⁵ : Category.{u_3, u_1} C
inst✝⁴ : Category.{?u.136410, u_2} D
inst✝³ : Preadditive C
inst✝² : Preadditive D
S : ShortComplex C
inst✝¹ : Balanced C
hS : S.Exact
h : S.LeftHomologyData
inst✝ : Mono S.f
this : Epi h.f'
⊢ IsIso h.f'
state_after: C : Type u_1
D : Type u_2
inst✝⁵ : Category.{u_3, u_1} C
inst✝⁴ : Category.{?u.136410, u_2} D
inst✝³ : Preadditive C
inst✝² : Preadditive D
S : ShortComplex C
inst✝¹ : Balanced C
hS : S.Exact
h : S.LeftHomologyData
inst✝ : Mono S.f
this✝ : Epi h.f'
this : Mono h.f'
⊢ IsIso h.f'

tactic: exact isIso_of_mono_of_epi h.f'
state_before: C : Type u_1
D : Type u_2
inst✝⁵ : Category.{u_3, u_1} C
inst✝⁴ : Category.{?u.136410, u_2} D
inst✝³ : Preadditive C
inst✝² : Preadditive D
S : ShortComplex C
inst✝¹ : Balanced C
hS : S.Exact
h : S.LeftHomologyData
inst✝ : Mono S.f
this✝ : Epi h.f'
this : Mono h.f'
⊢ IsIso h.f'
state_after: no goals
Theorem: Set.nonempty_of_nonempty_iUnion
File: Mathlib/Data/Set/Lattice.lean

tactic: obtain ⟨x, hx⟩ := h_Union
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
ι₂ : Sort u_6
κ : ι → Sort u_7
κ₁ : ι → Sort u_8
κ₂ : ι → Sort u_9
κ' : ι' → Sort u_10
s : ι → Set α
h_Union : (⋃ i, s i).Nonempty
⊢ Nonempty ι
state_after: case intro
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
ι₂ : Sort u_6
κ : ι → Sort u_7
κ₁ : ι → Sort u_8
κ₂ : ι → Sort u_9
κ' : ι' → Sort u_10
s : ι → Set α
x : α
hx : x ∈ ⋃ i, s i
⊢ Nonempty ι

tactic: exact ⟨Classical.choose <| mem_iUnion.mp hx⟩
state_before: case intro
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
ι₂ : Sort u_6
κ : ι → Sort u_7
κ₁ : ι → Sort u_8
κ₂ : ι → Sort u_9
κ' : ι' → Sort u_10
s : ι → Set α
x : α
hx : x ∈ ⋃ i, s i
⊢ Nonempty ι
state_after: no goals
Theorem: Set.image_inter_preimage
File: Mathlib/Data/Set/Image.lean

tactic: apply Subset.antisymm
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
f✝ : α → β
s✝ t✝ : Set α
f : α → β
s : Set α
t : Set β
⊢ f '' (s ∩ f ⁻¹' t) = f '' s ∩ t
state_after: case h₁
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
f✝ : α → β
s✝ t✝ : Set α
f : α → β
s : Set α
t : Set β
⊢ f '' (s ∩ f ⁻¹' t) ⊆ f '' s ∩ t

case h₂
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
f✝ : α → β
s✝ t✝ : Set α
f : α → β
s : Set α
t : Set β
⊢ f '' s ∩ t ⊆ f '' (s ∩ f ⁻¹' t)

tactic: calc
  f '' (s ∩ f ⁻¹' t) ⊆ f '' s ∩ f '' (f ⁻¹' t) := image_inter_subset _ _ _
  _ ⊆ f '' s ∩ t := inter_subset_inter_right _ (image_preimage_subset f t)
state_before: case h₁
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
f✝ : α → β
s✝ t✝ : Set α
f : α → β
s : Set α
t : Set β
⊢ f '' (s ∩ f ⁻¹' t) ⊆ f '' s ∩ t
state_after: no goals

tactic: rintro _ ⟨⟨x, h', rfl⟩, h⟩
state_before: case h₂
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
f✝ : α → β
s✝ t✝ : Set α
f : α → β
s : Set α
t : Set β
⊢ f '' s ∩ t ⊆ f '' (s ∩ f ⁻¹' t)
state_after: case h₂.intro.intro.intro
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
f✝ : α → β
s✝ t✝ : Set α
f : α → β
s : Set α
t : Set β
x : α
h' : x ∈ s
h : f x ∈ t
⊢ f x ∈ f '' (s ∩ f ⁻¹' t)

tactic: exact ⟨x, ⟨h', h⟩, rfl⟩
state_before: case h₂.intro.intro.intro
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
f✝ : α → β
s✝ t✝ : Set α
f : α → β
s : Set α
t : Set β
x : α
h' : x ∈ s
h : f x ∈ t
⊢ f x ∈ f '' (s ∩ f ⁻¹' t)
state_after: no goals
Theorem: NonUnitalRingHom.range_top_iff_surjective
File: Mathlib/RingTheory/NonUnitalSubring/Basic.lean

tactic: rw [coe_range, coe_top]
state_before: F : Type w
R : Type u
S : Type v
T : Type u_1
inst✝⁴ : NonUnitalNonAssocRing R
inst✝³ : NonUnitalNonAssocRing S
inst✝² : NonUnitalNonAssocRing T
inst✝¹ : FunLike F R S
inst✝ : NonUnitalRingHomClass F R S
g : S →ₙ+* T
f✝ : R →ₙ+* S
s : NonUnitalSubring R
f : R →ₙ+* S
⊢ ↑f.range = ↑⊤ ↔ Set.range ⇑f = Set.univ
state_after: no goals
Theorem: Nat.mem_smoothNumbers_of_dvd
File: Mathlib/NumberTheory/SmoothNumbers.lean

tactic: simp only [smoothNumbers_eq_factoredNumbers] at h ⊢
state_before: n m k : ℕ
h : m ∈ n.smoothNumbers
h' : k ∣ m
⊢ k ∈ n.smoothNumbers
state_after: n m k : ℕ
h' : k ∣ m
h : m ∈ factoredNumbers (Finset.range n)
⊢ k ∈ factoredNumbers (Finset.range n)

tactic: exact mem_factoredNumbers_of_dvd h h'
state_before: n m k : ℕ
h' : k ∣ m
h : m ∈ factoredNumbers (Finset.range n)
⊢ k ∈ factoredNumbers (Finset.range n)
state_after: no goals
Theorem: Set.pairwiseDisjoint_range_iff
File: Mathlib/Data/Set/Pairwise/Basic.lean

tactic: constructor
state_before: α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
⊢ (range f).PairwiseDisjoint id ↔ ∀ (x y : α), f x = f y ∨ Disjoint (f x) (f y)
state_after: case mp
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
⊢ (range f).PairwiseDisjoint id → ∀ (x y : α), f x = f y ∨ Disjoint (f x) (f y)

case mpr
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
⊢ (∀ (x y : α), f x = f y ∨ Disjoint (f x) (f y)) → (range f).PairwiseDisjoint id

tactic: intro h x y
state_before: case mp
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
⊢ (range f).PairwiseDisjoint id → ∀ (x y : α), f x = f y ∨ Disjoint (f x) (f y)
state_after: case mp
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
h : (range f).PairwiseDisjoint id
x y : α
⊢ f x = f y ∨ Disjoint (f x) (f y)

tactic: apply h.eq_or_disjoint (Set.mem_range_self x) (Set.mem_range_self y)
state_before: case mp
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
h : (range f).PairwiseDisjoint id
x y : α
⊢ f x = f y ∨ Disjoint (f x) (f y)
state_after: no goals

tactic: rintro h _ ⟨x, rfl⟩ _ ⟨y, rfl⟩ hxy
state_before: case mpr
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
⊢ (∀ (x y : α), f x = f y ∨ Disjoint (f x) (f y)) → (range f).PairwiseDisjoint id
state_after: case mpr.intro.intro
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
h : ∀ (x y : α), f x = f y ∨ Disjoint (f x) (f y)
x y : α
hxy : f x ≠ f y
⊢ (Disjoint on id) (f x) (f y)

tactic: exact (h x y).resolve_left hxy
state_before: case mpr.intro.intro
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
ι : Type u_4
ι' : Type u_5
r p q : α✝ → α✝ → Prop
inst✝¹ : PartialOrder α✝
inst✝ : OrderBot α✝
s t : Set ι
f✝ g : ι → α✝
α : Type u_6
β : Type u_7
f : α → Set β
h : ∀ (x y : α), f x = f y ∨ Disjoint (f x) (f y)
x y : α
hxy : f x ≠ f y
⊢ (Disjoint on id) (f x) (f y)
state_after: no goals
Theorem: HasFiniteFPowerSeriesOnBall.add
File: Mathlib/Analysis/Analytic/CPolynomial.lean

tactic: rw [Pi.add_apply, hf.finite _ ((le_max_left n m).trans hN),
    hg.finite _ ((le_max_right n m).trans hN), zero_add]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x : E
r r' : ℝ≥0∞
n m : ℕ
hf : HasFiniteFPowerSeriesOnBall f pf x n r
hg : HasFiniteFPowerSeriesOnBall g pg x m r
N : ℕ
hN : max n m ≤ N
⊢ (pf + pg) N = 0
state_after: no goals
Theorem: MvPFunctor.wDest'_wMk'
File: Mathlib/Data/PFunctor/Multivariate/W.lean

tactic: cases' x with a f
state_before: n : ℕ
P : MvPFunctor.{u} (n + 1)
α : TypeVec.{u} n
x : ↑P (α ::: P.W α)
⊢ P.wDest' (P.wMk' x) = x
state_after: case mk
n : ℕ
P : MvPFunctor.{u} (n + 1)
α : TypeVec.{u} n
a : P.A
f : P.B a ⟹ α ::: P.W α
⊢ P.wDest' (P.wMk' ⟨a, f⟩) = ⟨a, f⟩

tactic: rw [wMk', wDest'_wMk, split_dropFun_lastFun]
state_before: case mk
n : ℕ
P : MvPFunctor.{u} (n + 1)
α : TypeVec.{u} n
a : P.A
f : P.B a ⟹ α ::: P.W α
⊢ P.wDest' (P.wMk' ⟨a, f⟩) = ⟨a, f⟩
state_after: no goals
Theorem: cfc_nnreal_eq_real
File: Mathlib/Analysis/NormedSpace/Star/ContinuousFunctionalCalculus/Instances.lean

tactic: have := UniqueContinuousFunctionalCalculus.compactSpace_spectrum a (R := ℝ)
state_before: A : Type u_1
inst✝¹² : TopologicalSpace A
inst✝¹¹ : Ring A
inst✝¹⁰ : PartialOrder A
inst✝⁹ : StarRing A
inst✝⁸ : StarOrderedRing A
inst✝⁷ : Algebra ℝ A
inst✝⁶ : TopologicalRing A
inst✝⁵ : ContinuousStar A
inst✝⁴ : StarModule ℝ A
inst✝³ : ContinuousFunctionalCalculus ℝ IsSelfAdjoint
inst✝² : ContinuousFunctionalCalculus ℝ≥0 fun x => 0 ≤ x
inst✝¹ : UniqueContinuousFunctionalCalculus ℝ A
inst✝ : NonnegSpectrumClass ℝ A
a : A
f : ℝ≥0 → ℝ≥0
ha : autoParam (0 ≤ a) _auto✝
⊢ cfc f a = cfc (fun x => ↑(f x.toNNReal)) a
state_after: A : Type u_1
inst✝¹² : TopologicalSpace A
inst✝¹¹ : Ring A
inst✝¹⁰ : PartialOrder A
inst✝⁹ : StarRing A
inst✝⁸ : StarOrderedRing A
inst✝⁷ : Algebra ℝ A
inst✝⁶ : TopologicalRing A
inst✝⁵ : ContinuousStar A
inst✝⁴ : StarModule ℝ A
inst✝³ : ContinuousFunctionalCalculus ℝ IsSelfAdjoint
inst✝² : ContinuousFunctionalCalculus ℝ≥0 fun x => 0 ≤ x
inst✝¹ : UniqueContinuousFunctionalCalculus ℝ A
inst✝ : NonnegSpectrumClass ℝ A
a : A
f : ℝ≥0 → ℝ≥0
ha : autoParam (0 ≤ a) _auto✝
this : CompactSpace ↑(σ ℝ a)
⊢ cfc f a = cfc (fun x => ↑(f x.toNNReal)) a

tactic: replace ha : 0 ≤ a := ha
state_before: A : Type u_1
inst✝¹² : TopologicalSpace A
inst✝¹¹ : Ring A
inst✝¹⁰ : PartialOrder A
inst✝⁹ : StarRing A
inst✝⁸ : StarOrderedRing A
inst✝⁷ : Algebra ℝ A
inst✝⁶ : TopologicalRing A
inst✝⁵ : ContinuousStar A
inst✝⁴ : StarModule ℝ A
inst✝³ : ContinuousFunctionalCalculus ℝ IsSelfAdjoint
inst✝² : ContinuousFunctionalCalculus ℝ≥0 fun x => 0 ≤ x
inst✝¹ : UniqueContinuousFunctionalCalculus ℝ A
inst✝ : NonnegSpectrumClass ℝ A
a : A
f : ℝ≥0 → ℝ≥0
ha : autoParam (0 ≤ a) _auto✝
this : CompactSpace ↑(σ ℝ a)
⊢ cfc f a = cfc (fun x => ↑(f x.toNNReal)) a
state_after: A : Type u_1
inst✝¹² : TopologicalSpace A
inst✝¹¹ : Ring A
inst✝¹⁰ : PartialOrder A
inst✝⁹ : StarRing A
inst✝⁸ : StarOrderedRing A
inst✝⁷ : Algebra ℝ A
inst✝⁶ : TopologicalRing A
inst✝⁵ : ContinuousStar A
inst✝⁴ : StarModule ℝ A
inst✝³ : ContinuousFunctionalCalculus ℝ IsSelfAdjoint
inst✝² : ContinuousFunctionalCalculus ℝ≥0 fun x => 0 ≤ x
inst✝¹ : UniqueContinuousFunctionalCalculus ℝ A
inst✝ : NonnegSpectrumClass ℝ A
a : A
f : ℝ≥0 → ℝ≥0
this : CompactSpace ↑(σ ℝ a)
ha : 0 ≤ a
⊢ cfc f a = cfc (fun x => ↑(f x.toNNReal)) a

tactic: apply (SpectrumRestricts.nnreal_of_nonneg ha).cfc_eq_restrict
  uniformEmbedding_subtype_val ha (.of_nonneg ha)
state_before: A : Type u_1
inst✝¹² : TopologicalSpace A
inst✝¹¹ : Ring A
inst✝¹⁰ : PartialOrder A
inst✝⁹ : StarRing A
inst✝⁸ : StarOrderedRing A
inst✝⁷ : Algebra ℝ A
inst✝⁶ : TopologicalRing A
inst✝⁵ : ContinuousStar A
inst✝⁴ : StarModule ℝ A
inst✝³ : ContinuousFunctionalCalculus ℝ IsSelfAdjoint
inst✝² : ContinuousFunctionalCalculus ℝ≥0 fun x => 0 ≤ x
inst✝¹ : UniqueContinuousFunctionalCalculus ℝ A
inst✝ : NonnegSpectrumClass ℝ A
a : A
f : ℝ≥0 → ℝ≥0
this : CompactSpace ↑(σ ℝ a)
ha : 0 ≤ a
⊢ cfc f a = cfc (fun x => ↑(f x.toNNReal)) a
state_after: no goals
Theorem: Finset.nonMemberSubfamily_memberSubfamily
File: Mathlib/Combinatorics/SetFamily/Compression/Down.lean

tactic: ext
state_before: α : Type u_1
inst✝ : DecidableEq α
𝒜 ℬ : Finset (Finset α)
s : Finset α
a : α
⊢ nonMemberSubfamily a (memberSubfamily a 𝒜) = memberSubfamily a 𝒜
state_after: case a
α : Type u_1
inst✝ : DecidableEq α
𝒜 ℬ : Finset (Finset α)
s : Finset α
a : α
a✝ : Finset α
⊢ a✝ ∈ nonMemberSubfamily a (memberSubfamily a 𝒜) ↔ a✝ ∈ memberSubfamily a 𝒜

tactic: simp
state_before: case a
α : Type u_1
inst✝ : DecidableEq α
𝒜 ℬ : Finset (Finset α)
s : Finset α
a : α
a✝ : Finset α
⊢ a✝ ∈ nonMemberSubfamily a (memberSubfamily a 𝒜) ↔ a✝ ∈ memberSubfamily a 𝒜
state_after: no goals
Theorem: UniformInducing.mk'
File: Mathlib/Topology/UniformSpace/UniformEmbedding.lean

tactic: simp [eq_comm, Filter.ext_iff, subset_def, h]
state_before: α : Type u
β : Type v
γ : Type w
inst✝² : UniformSpace α
inst✝¹ : UniformSpace β
inst✝ : UniformSpace γ
f : α → β
h : ∀ (s : Set (α × α)), s ∈ 𝓤 α ↔ ∃ t ∈ 𝓤 β, ∀ (x y : α), (f x, f y) ∈ t → (x, y) ∈ s
⊢ comap (fun x => (f x.1, f x.2)) (𝓤 β) = 𝓤 α
state_after: no goals
Theorem: NormedSpace.norm_expSeries_summable_of_mem_ball'
File: Mathlib/Analysis/NormedSpace/Exponential.lean

tactic: change Summable (norm ∘ _)
state_before: 𝕂 : Type u_1
𝔸 : Type u_2
𝔹 : Type u_3
inst✝⁴ : NontriviallyNormedField 𝕂
inst✝³ : NormedRing 𝔸
inst✝² : NormedRing 𝔹
inst✝¹ : NormedAlgebra 𝕂 𝔸
inst✝ : NormedAlgebra 𝕂 𝔹
x : 𝔸
hx : x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
⊢ Summable fun n => ‖(↑n !)⁻¹ • x ^ n‖
state_after: 𝕂 : Type u_1
𝔸 : Type u_2
𝔹 : Type u_3
inst✝⁴ : NontriviallyNormedField 𝕂
inst✝³ : NormedRing 𝔸
inst✝² : NormedRing 𝔹
inst✝¹ : NormedAlgebra 𝕂 𝔸
inst✝ : NormedAlgebra 𝕂 𝔹
x : 𝔸
hx : x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
⊢ Summable (norm ∘ fun n => (↑n !)⁻¹ • x ^ n)

tactic: rw [← expSeries_apply_eq']
state_before: 𝕂 : Type u_1
𝔸 : Type u_2
𝔹 : Type u_3
inst✝⁴ : NontriviallyNormedField 𝕂
inst✝³ : NormedRing 𝔸
inst✝² : NormedRing 𝔹
inst✝¹ : NormedAlgebra 𝕂 𝔸
inst✝ : NormedAlgebra 𝕂 𝔹
x : 𝔸
hx : x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
⊢ Summable (norm ∘ fun n => (↑n !)⁻¹ • x ^ n)
state_after: 𝕂 : Type u_1
𝔸 : Type u_2
𝔹 : Type u_3
inst✝⁴ : NontriviallyNormedField 𝕂
inst✝³ : NormedRing 𝔸
inst✝² : NormedRing 𝔹
inst✝¹ : NormedAlgebra 𝕂 𝔸
inst✝ : NormedAlgebra 𝕂 𝔹
x : 𝔸
hx : x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
⊢ Summable (norm ∘ fun n => (expSeries 𝕂 𝔸 n) fun x_1 => x)

tactic: exact norm_expSeries_summable_of_mem_ball x hx
state_before: 𝕂 : Type u_1
𝔸 : Type u_2
𝔹 : Type u_3
inst✝⁴ : NontriviallyNormedField 𝕂
inst✝³ : NormedRing 𝔸
inst✝² : NormedRing 𝔹
inst✝¹ : NormedAlgebra 𝕂 𝔸
inst✝ : NormedAlgebra 𝕂 𝔹
x : 𝔸
hx : x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
⊢ Summable (norm ∘ fun n => (expSeries 𝕂 𝔸 n) fun x_1 => x)
state_after: no goals
Theorem: mul_self_div_self
File: Mathlib/Algebra/GroupWithZero/Basic.lean

tactic: rw [div_eq_mul_inv, mul_self_mul_inv a]
state_before: α : Type u_1
M₀ : Type u_2
G₀ : Type u_3
M₀' : Type u_4
G₀' : Type u_5
F : Type u_6
F' : Type u_7
inst✝ : GroupWithZero G₀
a✝ b c a : G₀
⊢ a * a / a = a
state_after: no goals