ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
Theorem: Module.AEval.of_symm_X_smul
File: Mathlib/Algebra/Polynomial/Module/AEval.lean

Proof steps:
state_before: R : Type u_1
A : Type u_3
M : Type u_2
inst✝⁶ : CommSemiring R
inst✝⁵ : Semiring A
a : A
inst✝⁴ : Algebra R A
inst✝³ : AddCommMonoid M
inst✝² : Module A M
inst✝¹ : Module R M
inst✝ : IsScalarTower R A M
m : AEval R M a
⊢ (of R M a).symm (X • m) = a • (of R M a).symm m
state_after: no goals
tactic: rw [of_symm_smul, aeval_X]
Theorem: AlgHom.map_adjoin_singleton
File: Mathlib/RingTheory/Adjoin/Basic.lean

Proof steps:
state_before: R : Type uR
S : Type uS
A : Type uA
B : Type uB
inst✝⁴ : CommSemiring R
inst✝³ : Semiring A
inst✝² : Semiring B
inst✝¹ : Algebra R A
inst✝ : Algebra R B
e : A →ₐ[R] B
x : A
⊢ Subalgebra.map e (adjoin R {x}) = adjoin R {e x}
state_after: no goals
tactic: rw [map_adjoin, Set.image_singleton]
Theorem: Matrix.det_mul_add_one_comm
File: Mathlib/LinearAlgebra/Matrix/SchurComplement.lean

Proof steps:
state_before: l : Type u_1
m : Type u_2
n : Type u_3
α : Type u_4
inst✝⁶ : Fintype l
inst✝⁵ : Fintype m
inst✝⁴ : Fintype n
inst✝³ : DecidableEq l
inst✝² : DecidableEq m
inst✝¹ : DecidableEq n
inst✝ : CommRing α
A : Matrix m n α
B : Matrix n m α
⊢ (A * B + 1).det = (B * A + 1).det
state_after: no goals
tactic: rw [add_comm, det_one_add_mul_comm, add_comm]
Theorem: IsSepClosed.roots_eq_zero_iff
File: Mathlib/FieldTheory/IsSepClosed.lean

Proof steps:
state_before: k : Type u
inst✝² : Field k
K : Type v
inst✝¹ : Field K
inst✝ : IsSepClosed k
p : k[X]
hsep : p.Separable
⊢ p.roots = 0 ↔ p = C (p.coeff 0)
state_after: k : Type u
inst✝² : Field k
K : Type v
inst✝¹ : Field K
inst✝ : IsSepClosed k
p : k[X]
hsep : p.Separable
h : p.roots = 0
⊢ p = C (p.coeff 0)
tactic: refine ⟨fun h => ?_, fun hp => by rw [hp, roots_C]⟩
state_before: k : Type u
inst✝² : Field k
K : Type v
inst✝¹ : Field K
inst✝ : IsSepClosed k
p : k[X]
hsep : p.Separable
h : p.roots = 0
⊢ p = C (p.coeff 0)
state_after: case inl
k : Type u
inst✝² : Field k
K : Type v
inst✝¹ : Field K
inst✝ : IsSepClosed k
p : k[X]
hsep : p.Separable
h : p.roots = 0
hd : p.degree ≤ 0
⊢ p = C (p.coeff 0)

case inr
k : Type u
inst✝² : Field k
K : Type v
inst✝¹ : Field K
inst✝ : IsSepClosed k
p : k[X]
hsep : p.Separable
h : p.roots = 0
hd : 0 < p.degree
⊢ p = C (p.coeff 0)
tactic: rcases le_or_lt (degree p) 0 with hd | hd
Theorem: ProbabilityTheory.IsMeasurableRatCDF.stieltjesFunctionAux_unit_prod
File: Mathlib/Probability/Kernel/Disintegration/MeasurableStieltjes.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
ι : Type u_3
inst✝ : MeasurableSpace α
f : α → ℚ → ℝ
a : α
⊢ stieltjesFunctionAux (fun p => f p.2) ((), a) = stieltjesFunctionAux f a
state_after: no goals
tactic: simp_rw [IsMeasurableRatCDF.stieltjesFunctionAux_def']
Theorem: Matrix.fromBlocks_submatrix_sum_swap_right
File: Mathlib/Data/Matrix/Block.lean

Proof steps:
state_before: l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
p : Type u_5
q : Type u_6
m' : o → Type u_7
n' : o → Type u_8
p' : o → Type u_9
R : Type u_10
S : Type u_11
α : Type u_12
β : Type u_13
A : Matrix n l α
B : Matrix n m α
C : Matrix o l α
D : Matrix o m α
f : p → n ⊕ o
⊢ (fromBlocks A B C D).submatrix f Sum.swap = (fromBlocks B A D C).submatrix f id
state_after: case a
l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
p : Type u_5
q : Type u_6
m' : o → Type u_7
n' : o → Type u_8
p' : o → Type u_9
R : Type u_10
S : Type u_11
α : Type u_12
β : Type u_13
A : Matrix n l α
B : Matrix n m α
C : Matrix o l α
D : Matrix o m α
f : p → n ⊕ o
i : p
j : m ⊕ l
⊢ (fromBlocks A B C D).submatrix f Sum.swap i j = (fromBlocks B A D C).submatrix f id i j
tactic: ext i j
state_before: case a
l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
p : Type u_5
q : Type u_6
m' : o → Type u_7
n' : o → Type u_8
p' : o → Type u_9
R : Type u_10
S : Type u_11
α : Type u_12
β : Type u_13
A : Matrix n l α
B : Matrix n m α
C : Matrix o l α
D : Matrix o m α
f : p → n ⊕ o
i : p
j : m ⊕ l
⊢ (fromBlocks A B C D).submatrix f Sum.swap i j = (fromBlocks B A D C).submatrix f id i j
state_after: no goals
tactic: cases j <;> dsimp <;> cases f i <;> rfl
Theorem: FirstOrder.Language.Substructure.comap_id
File: Mathlib/ModelTheory/Substructures.lean

Proof steps:
state_before: L : Language
M : Type w
N : Type u_1
P : Type u_2
inst✝² : L.Structure M
inst✝¹ : L.Structure N
inst✝ : L.Structure P
S✝ : L.Substructure M
s : Set M
S : L.Substructure P
⊢ ∀ (x : P), x ∈ comap (Hom.id L P) S ↔ x ∈ S
state_after: no goals
tactic: simp
Theorem: Batteries.RBNode.RedRed.balance1
File: .lake/packages/batteries/Batteries/Data/RBMap/WF.lean

Proof steps:
state_before: α : Type u_1
p : Prop
n : Nat
c : RBColor
l : RBNode α
v : α
r : RBNode α
hl : RedRed p l n
hr : r.Balanced c n
⊢ ∃ c, (l.balance1 v r).Balanced c (n + 1)
state_after: α : Type u_1
p : Prop
n : Nat
c : RBColor
l : RBNode α
v : α
r : RBNode α
hl : RedRed p l n
hr : r.Balanced c n
⊢ ∃ c,
    (match l, v, r with
        | node red (node red a x b) y c, z, d => node red (node black a x b) y (node black c z d)
        | node red a x (node red b y c), z, d => node red (node black a x b) y (node black c z d)
        | a, x, b => node black a x b).Balanced
      c (n + 1)
tactic: unfold balance1
state_before: α : Type u_1
p : Prop
n : Nat
c : RBColor
l : RBNode α
v : α
r : RBNode α
hl : RedRed p l n
hr : r.Balanced c n
⊢ ∃ c,
    (match l, v, r with
        | node red (node red a x b) y c, z, d => node red (node black a x b) y (node black c z d)
        | node red a x (node red b y c), z, d => node red (node black a x b) y (node black c z d)
        | a, x, b => node black a x b).Balanced
      c (n + 1)
state_after: case h_1
α : Type u_1
p : Prop
n : Nat
c : RBColor
v : α
r : RBNode α
hr : r.Balanced c n
x✝³ : RBNode α
x✝² : α
x✝¹ a✝ : RBNode α
x✝ : α
b✝ : RBNode α
y✝ : α
c✝ : RBNode α
hl : RedRed p (node red (node red a✝ x✝ b✝) y✝ c✝) n
⊢ ∃ c, (node red (node black a✝ x✝ b✝) y✝ (node black c✝ v r)).Balanced c (n + 1)

case h_2
α : Type u_1
p : Prop
n : Nat
c : RBColor
v : α
r : RBNode α
hr : r.Balanced c n
x✝⁴ : RBNode α
x✝³ : α
x✝² a✝ : RBNode α
x✝¹ : α
b✝ : RBNode α
y✝ : α
c✝ : RBNode α
x✝ : ∀ (a : RBNode α) (x : α) (b : RBNode α), a✝ = node red a x b → False
hl : RedRed p (node red a✝ x✝¹ (node red b✝ y✝ c✝)) n
⊢ ∃ c, (node red (node black a✝ x✝¹ b✝) y✝ (node black c✝ v r)).Balanced c (n + 1)

case h_3
α : Type u_1
p : Prop
n : Nat
c : RBColor
l : RBNode α
v : α
r : RBNode α
hl : RedRed p l n
hr : r.Balanced c n
x✝⁴ : RBNode α
x✝³ : α
x✝² : RBNode α
x✝¹ : ∀ (a : RBNode α) (x : α) (b : RBNode α) (y : α) (c : RBNode α), l = node red (node red a x b) y c → False
x✝ : ∀ (a : RBNode α) (x : α) (b : RBNode α) (y : α) (c : RBNode α), l = node red a x (node red b y c) → False
⊢ ∃ c, (node black l v r).Balanced c (n + 1)
tactic: split
Theorem: Filter.limsup_eq_sInf_sSup
File: Mathlib/Order/LiminfLimsup.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
ι✝ : Type u_4
ι' : Type u_5
inst✝¹ : CompleteLattice α
ι : Type u_6
R : Type u_7
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ limsup a F = sInf ((fun I => sSup (a '' I)) '' F.sets)
state_after: case a
α : Type u_1
β : Type u_2
γ : Type u_3
ι✝ : Type u_4
ι' : Type u_5
inst✝¹ : CompleteLattice α
ι : Type u_6
R : Type u_7
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ limsup a F ≤ sInf ((fun I => sSup (a '' I)) '' F.sets)

case a
α : Type u_1
β : Type u_2
γ : Type u_3
ι✝ : Type u_4
ι' : Type u_5
inst✝¹ : CompleteLattice α
ι : Type u_6
R : Type u_7
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ sInf ((fun I => sSup (a '' I)) '' F.sets) ≤ limsup a F
tactic: apply le_antisymm
Theorem: AlgebraicGeometry.Scheme.Pullback.openCoverOfLeftRight_map
File: Mathlib/AlgebraicGeometry/Pullbacks.lean

Proof steps:
state_before: C : Type u
inst✝¹ : Category.{v, u} C
X Y Z : Scheme
𝒰 : X.OpenCover
f✝ : X ⟶ Z
g✝ : Y ⟶ Z
inst✝ : ∀ (i : 𝒰.J), HasPullback (𝒰.map i ≫ f✝) g✝
s : PullbackCone f✝ g✝
𝒰X : X.OpenCover
𝒰Y : Y.OpenCover
f : X ⟶ Z
g : Y ⟶ Z
⊢ (pullback f g).OpenCover
state_after: C : Type u
inst✝¹ : Category.{v, u} C
X Y Z : Scheme
𝒰 : X.OpenCover
f✝ : X ⟶ Z
g✝ : Y ⟶ Z
inst✝ : ∀ (i : 𝒰.J), HasPullback (𝒰.map i ≫ f✝) g✝
s : PullbackCone f✝ g✝
𝒰X : X.OpenCover
𝒰Y : Y.OpenCover
f : X ⟶ Z
g : Y ⟶ Z
⊢ ∀ (i : 𝒰X.J × 𝒰Y.J),
    pullback.map (𝒰X.map i.1 ≫ f) (𝒰Y.map i.2 ≫ g) f g (𝒰X.map i.1) (𝒰Y.map i.2) (𝟙 Z) ⋯ ⋯ =
      (Iso.refl ((fun ij => pullback (𝒰X.map ij.1 ≫ f) (𝒰Y.map ij.2 ≫ g)) i)).hom ≫
        ((openCoverOfLeft 𝒰X f g).bind fun x => openCoverOfRight 𝒰Y (𝒰X.map x ≫ f) g).map
          ((Equiv.sigmaEquivProd 𝒰X.J 𝒰Y.J).symm i)
tactic: fapply
    ((openCoverOfLeft 𝒰X f g).bind fun x => openCoverOfRight 𝒰Y (𝒰X.map x ≫ f) g).copy
      (𝒰X.J × 𝒰Y.J) (fun ij => pullback (𝒰X.map ij.1 ≫ f) (𝒰Y.map ij.2 ≫ g))
      (fun ij =>
        pullback.map _ _ _ _ (𝒰X.map ij.1) (𝒰Y.map ij.2) (𝟙 _) (Category.comp_id _)
          (Category.comp_id _))
      (Equiv.sigmaEquivProd _ _).symm fun _ => Iso.refl _
state_before: C : Type u
inst✝¹ : Category.{v, u} C
X Y Z : Scheme
𝒰 : X.OpenCover
f✝ : X ⟶ Z
g✝ : Y ⟶ Z
inst✝ : ∀ (i : 𝒰.J), HasPullback (𝒰.map i ≫ f✝) g✝
s : PullbackCone f✝ g✝
𝒰X : X.OpenCover
𝒰Y : Y.OpenCover
f : X ⟶ Z
g : Y ⟶ Z
⊢ ∀ (i : 𝒰X.J × 𝒰Y.J),
    pullback.map (𝒰X.map i.1 ≫ f) (𝒰Y.map i.2 ≫ g) f g (𝒰X.map i.1) (𝒰Y.map i.2) (𝟙 Z) ⋯ ⋯ =
      (Iso.refl ((fun ij => pullback (𝒰X.map ij.1 ≫ f) (𝒰Y.map ij.2 ≫ g)) i)).hom ≫
        ((openCoverOfLeft 𝒰X f g).bind fun x => openCoverOfRight 𝒰Y (𝒰X.map x ≫ f) g).map
          ((Equiv.sigmaEquivProd 𝒰X.J 𝒰Y.J).symm i)
state_after: case mk
C : Type u
inst✝¹ : Category.{v, u} C
X Y Z : Scheme
𝒰 : X.OpenCover
f✝ : X ⟶ Z
g✝ : Y ⟶ Z
inst✝ : ∀ (i : 𝒰.J), HasPullback (𝒰.map i ≫ f✝) g✝
s : PullbackCone f✝ g✝
𝒰X : X.OpenCover
𝒰Y : Y.OpenCover
f : X ⟶ Z
g : Y ⟶ Z
i : 𝒰X.J
j : 𝒰Y.J
⊢ pullback.map (𝒰X.map (i, j).1 ≫ f) (𝒰Y.map (i, j).2 ≫ g) f g (𝒰X.map (i, j).1) (𝒰Y.map (i, j).2) (𝟙 Z) ⋯ ⋯ =
    (Iso.refl ((fun ij => pullback (𝒰X.map ij.1 ≫ f) (𝒰Y.map ij.2 ≫ g)) (i, j))).hom ≫
      ((openCoverOfLeft 𝒰X f g).bind fun x => openCoverOfRight 𝒰Y (𝒰X.map x ≫ f) g).map
        ((Equiv.sigmaEquivProd 𝒰X.J 𝒰Y.J).symm (i, j))
tactic: rintro ⟨i, j⟩
state_before: case mk
C : Type u
inst✝¹ : Category.{v, u} C
X Y Z : Scheme
𝒰 : X.OpenCover
f✝ : X ⟶ Z
g✝ : Y ⟶ Z
inst✝ : ∀ (i : 𝒰.J), HasPullback (𝒰.map i ≫ f✝) g✝
s : PullbackCone f✝ g✝
𝒰X : X.OpenCover
𝒰Y : Y.OpenCover
f : X ⟶ Z
g : Y ⟶ Z
i : 𝒰X.J
j : 𝒰Y.J
⊢ pullback.map (𝒰X.map (i, j).1 ≫ f) (𝒰Y.map (i, j).2 ≫ g) f g (𝒰X.map (i, j).1) (𝒰Y.map (i, j).2) (𝟙 Z) ⋯ ⋯ =
    (Iso.refl ((fun ij => pullback (𝒰X.map ij.1 ≫ f) (𝒰Y.map ij.2 ≫ g)) (i, j))).hom ≫
      ((openCoverOfLeft 𝒰X f g).bind fun x => openCoverOfRight 𝒰Y (𝒰X.map x ≫ f) g).map
        ((Equiv.sigmaEquivProd 𝒰X.J 𝒰Y.J).symm (i, j))
state_after: no goals
tactic: apply pullback.hom_ext <;> simp
Theorem: NumberField.mixedEmbedding.norm_eq_norm
File: Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean

Proof steps:
state_before: K : Type u_1
inst✝¹ : Field K
inst✝ : NumberField K
x : K
⊢ mixedEmbedding.norm ((mixedEmbedding K) x) = ↑|(Algebra.norm ℚ) x|
state_after: no goals
tactic: simp_rw [mixedEmbedding.norm_apply, normAtPlace_apply, prod_eq_abs_norm]
Theorem: Finset.mem_mulAntidiagonal
File: Mathlib/Data/Finset/MulAntidiagonal.lean

Proof steps:
state_before: α : Type u_1
inst✝ : OrderedCancelCommMonoid α
s t : Set α
hs : s.IsPWO
ht : t.IsPWO
a : α
u : Set α
hu : u.IsPWO
x : α × α
⊢ x ∈ mulAntidiagonal hs ht a ↔ x.1 ∈ s ∧ x.2 ∈ t ∧ x.1 * x.2 = a
state_after: no goals
tactic: simp only [mulAntidiagonal, Set.Finite.mem_toFinset, Set.mem_mulAntidiagonal]
Theorem: Stream'.append_stream_head_tail
File: Mathlib/Data/Stream/Init.lean

Proof steps:
state_before: α : Type u
β : Type v
δ : Type w
s : Stream' α
⊢ [s.head] ++ₛ s.tail = s
state_after: no goals
tactic: rw [cons_append_stream, nil_append_stream, Stream'.eta]
Theorem: Equiv.Perm.cycleFactorsFinset_mul_inv_mem_eq_sdiff
File: Mathlib/GroupTheory/Perm/Cycle/Factors.lean

Proof steps:
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
f g : Perm α
h : f ∈ g.cycleFactorsFinset
⊢ (g * f⁻¹).cycleFactorsFinset = g.cycleFactorsFinset \ {f}
state_after: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
g : Perm α
⊢ ∀ {f : Perm α}, f ∈ g.cycleFactorsFinset → (g * f⁻¹).cycleFactorsFinset = g.cycleFactorsFinset \ {f}
tactic: revert f
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
g : Perm α
⊢ ∀ {f : Perm α}, f ∈ g.cycleFactorsFinset → (g * f⁻¹).cycleFactorsFinset = g.cycleFactorsFinset \ {f}
state_after: case refine_1
ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
g f✝ : Perm α
⊢ fun {g} => ∀ {f : Perm α}, f ∈ g.cycleFactorsFinset → (g * f⁻¹).cycleFactorsFinset = g.cycleFactorsFinset \ {f}

case refine_2
ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
g f✝ : Perm α
⊢ ∀ (σ : Perm α),
    σ.IsCycle → fun {g} =>
      ∀ {f : Perm α}, f ∈ g.cycleFactorsFinset → (g * f⁻¹).cycleFactorsFinset = g.cycleFactorsFinset \ {f}

case refine_3
ι : Type u_1
α : Type u_2
β : Type u_3
inst✝¹ : DecidableEq α
inst✝ : Fintype α
g f✝ : Perm α
⊢ ∀ (σ τ : Perm α),
    σ.Disjoint τ →
      σ.IsCycle →
        (fun {g} =>
            ∀ {f : Perm α}, f ∈ g.cycleFactorsFinset → (g * f⁻¹).cycleFactorsFinset = g.cycleFactorsFinset \ {f}) →
          (fun {g} =>
              ∀ {f : Perm α}, f ∈ g.cycleFactorsFinset → (g * f⁻¹).cycleFactorsFinset = g.cycleFactorsFinset \ {f}) →
            fun {g} =>
            ∀ {f : Perm α}, f ∈ g.cycleFactorsFinset → (g * f⁻¹).cycleFactorsFinset = g.cycleFactorsFinset \ {f}
tactic: refine
    cycle_induction_on (P := fun {g : Perm α} ↦
      ∀ {f}, (f ∈ cycleFactorsFinset g)
        → cycleFactorsFinset (g * f⁻¹) = cycleFactorsFinset g \ {f}) _ ?_ ?_ ?_
Theorem: List.length_permutations'Aux
File: Mathlib/Data/List/Perm.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a : α
s : List α
x : α
⊢ (permutations'Aux x s).length = s.length + 1
state_after: case nil
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a x : α
⊢ (permutations'Aux x []).length = [].length + 1

case cons
α : Type u_1
β : Type u_2
l l₁ l₂ : List α
a x y : α
s : List α
IH : (permutations'Aux x s).length = s.length + 1
⊢ (permutations'Aux x (y :: s)).length = (y :: s).length + 1
tactic: induction' s with y s IH
Theorem: Nat.le_sqrt'
File: Mathlib/Data/Nat/Defs.lean

Proof steps:
state_before: a b c d m n k : ℕ
p q : ℕ → Prop
⊢ m ≤ n.sqrt ↔ m ^ 2 ≤ n
state_after: no goals
tactic: simpa only [Nat.pow_two] using le_sqrt
Theorem: WeierstrassCurve.Jacobian.negAddY_of_X_eq
File: Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean

Proof steps:
state_before: R : Type u
inst✝¹ : CommRing R
W' : Jacobian R
F : Type v
inst✝ : Field F
W : Jacobian F
P Q : Fin 3 → F
hP : W.Equation P
hQ : W.Equation Q
hPz : P z ≠ 0
hQz : Q z ≠ 0
hx : P x * Q z ^ 2 = Q x * P z ^ 2
⊢ W.negAddY P Q = (-addU P Q) ^ 3
state_after: no goals
tactic: rw [addU, neg_neg, div_pow, ← negAddY_of_X_eq' hP hQ hx,
    mul_div_cancel_right₀ _ <| pow_ne_zero 3 <| mul_ne_zero hPz hQz]
Theorem: circleMap_eq_center_iff
File: Mathlib/MeasureTheory/Integral/CircleIntegral.lean

Proof steps:
state_before: E : Type u_1
inst✝ : NormedAddCommGroup E
c : ℂ
R θ : ℝ
⊢ circleMap c R θ = c ↔ R = 0
state_after: no goals
tactic: simp [circleMap, exp_ne_zero]
Theorem: ContinuousAt.finset_sup
File: Mathlib/Topology/Order/Lattice.lean

Proof steps:
state_before: L : Type u_1
X : Type u_2
inst✝⁴ : TopologicalSpace L
inst✝³ : TopologicalSpace X
ι : Type u_3
inst✝² : SemilatticeSup L
inst✝¹ : OrderBot L
inst✝ : ContinuousSup L
s : Finset ι
f : ι → X → L
t : Set X
x : X
hs : ∀ i ∈ s, ContinuousAt (f i) x
⊢ ContinuousAt (s.sup f) x
state_after: no goals
tactic: simpa only [← Finset.sup_apply] using finset_sup_apply hs
Theorem: BoundedContinuousFunction.lintegral_nnnorm_le
File: Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean

Proof steps:
state_before: X : Type u_1
inst✝⁶ : MeasurableSpace X
inst✝⁵ : TopologicalSpace X
inst✝⁴ : OpensMeasurableSpace X
μ : Measure X
E : Type u_2
inst✝³ : NormedAddCommGroup E
inst✝² : SecondCountableTopology E
inst✝¹ : MeasurableSpace E
inst✝ : BorelSpace E
f : X →ᵇ E
⊢ ∫⁻ (x : X), ↑‖f x‖₊ ∂μ ≤ ↑‖f‖₊ * μ Set.univ
state_after: no goals
tactic: calc  ∫⁻ x, ‖f x‖₊ ∂μ
    _ ≤ ∫⁻ _, ‖f‖₊ ∂μ         := by gcongr; apply nnnorm_coe_le_nnnorm
    _ = ‖f‖₊ * (μ Set.univ)   := by rw [lintegral_const]
Theorem: IntermediateField.adjoin_simple_le_iff
File: Mathlib/FieldTheory/Adjoin.lean

Proof steps:
state_before: F : Type u_1
inst✝² : Field F
E : Type u_2
inst✝¹ : Field E
inst✝ : Algebra F E
S : Set E
α : E
K : IntermediateField F E
⊢ F⟮α⟯ ≤ K ↔ α ∈ K
state_after: no goals
tactic: simp
Theorem: HomotopyCategory.Pretriangulated.shift_distinguished_triangle
File: Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean

Proof steps:
state_before: C : Type u_1
D : Type u_2
inst✝⁷ : Category.{u_3, u_1} C
inst✝⁶ : Category.{?u.442474, u_2} D
inst✝⁵ : Preadditive C
inst✝⁴ : HasZeroObject C
inst✝³ : HasBinaryBiproducts C
inst✝² : Preadditive D
inst✝¹ : HasZeroObject D
inst✝ : HasBinaryBiproducts D
K L : CochainComplex C ℤ
φ : K ⟶ L
T : Triangle (HomotopyCategory C (ComplexShape.up ℤ))
hT : T ∈ distinguishedTriangles C
n : ℤ
⊢ (Triangle.shiftFunctor (HomotopyCategory C (ComplexShape.up ℤ)) n).obj T ∈ distinguishedTriangles C
state_after: case intro.intro.intro.intro
C : Type u_1
D : Type u_2
inst✝⁷ : Category.{u_3, u_1} C
inst✝⁶ : Category.{?u.442474, u_2} D
inst✝⁵ : Preadditive C
inst✝⁴ : HasZeroObject C
inst✝³ : HasBinaryBiproducts C
inst✝² : Preadditive D
inst✝¹ : HasZeroObject D
inst✝ : HasBinaryBiproducts D
K✝ L✝ : CochainComplex C ℤ
φ✝ : K✝ ⟶ L✝
T : Triangle (HomotopyCategory C (ComplexShape.up ℤ))
n : ℤ
K L : CochainComplex C ℤ
φ : K ⟶ L
e : T ≅ CochainComplex.mappingCone.triangleh φ
⊢ (Triangle.shiftFunctor (HomotopyCategory C (ComplexShape.up ℤ)) n).obj T ∈ distinguishedTriangles C
tactic: obtain ⟨K, L, φ, ⟨e⟩⟩ := hT
state_before: case intro.intro.intro.intro
C : Type u_1
D : Type u_2
inst✝⁷ : Category.{u_3, u_1} C
inst✝⁶ : Category.{?u.442474, u_2} D
inst✝⁵ : Preadditive C
inst✝⁴ : HasZeroObject C
inst✝³ : HasBinaryBiproducts C
inst✝² : Preadditive D
inst✝¹ : HasZeroObject D
inst✝ : HasBinaryBiproducts D
K✝ L✝ : CochainComplex C ℤ
φ✝ : K✝ ⟶ L✝
T : Triangle (HomotopyCategory C (ComplexShape.up ℤ))
n : ℤ
K L : CochainComplex C ℤ
φ : K ⟶ L
e : T ≅ CochainComplex.mappingCone.triangleh φ
⊢ (Triangle.shiftFunctor (HomotopyCategory C (ComplexShape.up ℤ)) n).obj T ∈ distinguishedTriangles C
state_after: no goals
tactic: exact ⟨_, _, _, ⟨Functor.mapIso _ e ≪≫ CochainComplex.mappingCone.shiftTrianglehIso φ n⟩⟩
Theorem: Ordinal.nmul_lt_nmul_of_pos_left
File: Mathlib/SetTheory/Ordinal/NaturalOps.lean

Proof steps:
state_before: a b c d : Ordinal.{u}
h₁ : a < b
h₂ : 0 < c
⊢ c ⨳ a ♯ 0 ⨳ a ≤ 0 ⨳ b ♯ c ⨳ a
state_after: no goals
tactic: simp
Theorem: QuadraticMap.associated_linMulLin
File: Mathlib/LinearAlgebra/QuadraticForm/Basic.lean

Proof steps:
state_before: S : Type u_1
T : Type u_2
R : Type u_3
M : Type u_4
N : Type u_5
P : Type u_6
A : Type u_7
inst✝⁹ : CommSemiring S
inst✝⁸ : CommRing R
inst✝⁷ : AddCommGroup M
inst✝⁶ : Algebra S R
inst✝⁵ : Module R M
inst✝⁴ : AddCommGroup N
inst✝³ : Module R N
inst✝² : Module S N
inst✝¹ : IsScalarTower S R N
inst✝ : Invertible 2
f g : M →ₗ[R] R
⊢ associated (linMulLin f g) = ⅟2 • ((mul R R).compl₁₂ f g + (mul R R).compl₁₂ g f)
state_after: case h.h
S : Type u_1
T : Type u_2
R : Type u_3
M : Type u_4
N : Type u_5
P : Type u_6
A : Type u_7
inst✝⁹ : CommSemiring S
inst✝⁸ : CommRing R
inst✝⁷ : AddCommGroup M
inst✝⁶ : Algebra S R
inst✝⁵ : Module R M
inst✝⁴ : AddCommGroup N
inst✝³ : Module R N
inst✝² : Module S N
inst✝¹ : IsScalarTower S R N
inst✝ : Invertible 2
f g : M →ₗ[R] R
x✝¹ x✝ : M
⊢ ((associated (linMulLin f g)) x✝¹) x✝ = ((⅟2 • ((mul R R).compl₁₂ f g + (mul R R).compl₁₂ g f)) x✝¹) x✝
tactic: ext
state_before: case h.h
S : Type u_1
T : Type u_2
R : Type u_3
M : Type u_4
N : Type u_5
P : Type u_6
A : Type u_7
inst✝⁹ : CommSemiring S
inst✝⁸ : CommRing R
inst✝⁷ : AddCommGroup M
inst✝⁶ : Algebra S R
inst✝⁵ : Module R M
inst✝⁴ : AddCommGroup N
inst✝³ : Module R N
inst✝² : Module S N
inst✝¹ : IsScalarTower S R N
inst✝ : Invertible 2
f g : M →ₗ[R] R
x✝¹ x✝ : M
⊢ ((associated (linMulLin f g)) x✝¹) x✝ = ((⅟2 • ((mul R R).compl₁₂ f g + (mul R R).compl₁₂ g f)) x✝¹) x✝
state_after: case h.h
S : Type u_1
T : Type u_2
R : Type u_3
M : Type u_4
N : Type u_5
P : Type u_6
A : Type u_7
inst✝⁹ : CommSemiring S
inst✝⁸ : CommRing R
inst✝⁷ : AddCommGroup M
inst✝⁶ : Algebra S R
inst✝⁵ : Module R M
inst✝⁴ : AddCommGroup N
inst✝³ : Module R N
inst✝² : Module S N
inst✝¹ : IsScalarTower S R N
inst✝ : Invertible 2
f g : M →ₗ[R] R
x✝¹ x✝ : M
⊢ ⅟2 * ((f x✝¹ + f x✝) * (g x✝¹ + g x✝) - f x✝¹ * g x✝¹ - f x✝ * g x✝) = ⅟2 * (f x✝¹ * g x✝) + ⅟2 * (g x✝¹ * f x✝)
tactic: simp only [associated_apply, linMulLin_apply, map_add, smul_add, LinearMap.add_apply,
    LinearMap.smul_apply, compl₁₂_apply, mul_apply', smul_eq_mul]
state_before: case h.h
S : Type u_1
T : Type u_2
R : Type u_3
M : Type u_4
N : Type u_5
P : Type u_6
A : Type u_7
inst✝⁹ : CommSemiring S
inst✝⁸ : CommRing R
inst✝⁷ : AddCommGroup M
inst✝⁶ : Algebra S R
inst✝⁵ : Module R M
inst✝⁴ : AddCommGroup N
inst✝³ : Module R N
inst✝² : Module S N
inst✝¹ : IsScalarTower S R N
inst✝ : Invertible 2
f g : M →ₗ[R] R
x✝¹ x✝ : M
⊢ ⅟2 * ((f x✝¹ + f x✝) * (g x✝¹ + g x✝) - f x✝¹ * g x✝¹ - f x✝ * g x✝) = ⅟2 * (f x✝¹ * g x✝) + ⅟2 * (g x✝¹ * f x✝)
state_after: no goals
tactic: ring_nf
Theorem: CompHausLike.finiteCoproduct.ι_desc_apply
File: Mathlib/Topology/Category/CompHausLike/Limits.lean

Proof steps:
state_before: P : TopCat → Prop
α : Type w
inst✝¹ : Finite α
X : α → CompHausLike P
inst✝ : HasExplicitFiniteCoproduct X
B : CompHausLike P
π : (a : α) → X a ⟶ B
a : α
⊢ ∀ (x : (forget (CompHausLike P)).obj (X a)), (desc X π) ((ι X a) x) = (π a) x
state_after: P : TopCat → Prop
α : Type w
inst✝¹ : Finite α
X : α → CompHausLike P
inst✝ : HasExplicitFiniteCoproduct X
B : CompHausLike P
π : (a : α) → X a ⟶ B
a : α
x : (forget (CompHausLike P)).obj (X a)
⊢ (desc X π) ((ι X a) x) = (π a) x
tactic: intro x
state_before: P : TopCat → Prop
α : Type w
inst✝¹ : Finite α
X : α → CompHausLike P
inst✝ : HasExplicitFiniteCoproduct X
B : CompHausLike P
π : (a : α) → X a ⟶ B
a : α
x : (forget (CompHausLike P)).obj (X a)
⊢ (desc X π) ((ι X a) x) = (π a) x
state_after: P : TopCat → Prop
α : Type w
inst✝¹ : Finite α
X : α → CompHausLike P
inst✝ : HasExplicitFiniteCoproduct X
B : CompHausLike P
π : (a : α) → X a ⟶ B
a : α
x : (forget (CompHausLike P)).obj (X a)
⊢ (ι X a ≫ desc X π) x = (π a) x
tactic: change (ι X a ≫ desc X π) _ = _
state_before: P : TopCat → Prop
α : Type w
inst✝¹ : Finite α
X : α → CompHausLike P
inst✝ : HasExplicitFiniteCoproduct X
B : CompHausLike P
π : (a : α) → X a ⟶ B
a : α
x : (forget (CompHausLike P)).obj (X a)
⊢ (ι X a ≫ desc X π) x = (π a) x
state_after: no goals
tactic: simp only [ι_desc]