1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: Nat.Prime.multiplicity_factorial_le_div_pred
File: Mathlib/Data/Nat/Multiplicity.lean

tactic: rw [hp.multiplicity_factorial (lt_succ_self _), PartENat.coe_le_coe]
state_before: p : ℕ
hp : Prime p
n : ℕ
⊢ multiplicity p n ! ≤ ↑(n / (p - 1))
state_after: p : ℕ
hp : Prime p
n : ℕ
⊢ ∑ i ∈ Ico 1 (log p n).succ, n / p ^ i ≤ n / (p - 1)

tactic: exact Nat.geom_sum_Ico_le hp.two_le _ _
state_before: p : ℕ
hp : Prime p
n : ℕ
⊢ ∑ i ∈ Ico 1 (log p n).succ, n / p ^ i ≤ n / (p - 1)
state_after: no goals
Theorem: ProbabilityTheory.kernel.IndepSets.bUnion
File: Mathlib/Probability/Independence/Kernel.lean

tactic: intro t1 t2 ht1 ht2
state_before: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
u : Set ι
hyp : ∀ n ∈ u, IndepSets (s n) s' κ μ
⊢ IndepSets (⋃ n ∈ u, s n) s' κ μ
state_after: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
u : Set ι
hyp : ∀ n ∈ u, IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht1 : t1 ∈ ⋃ n ∈ u, s n
ht2 : t2 ∈ s'
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2

tactic: simp_rw [Set.mem_iUnion] at ht1
state_before: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
u : Set ι
hyp : ∀ n ∈ u, IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht1 : t1 ∈ ⋃ n ∈ u, s n
ht2 : t2 ∈ s'
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2
state_after: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
u : Set ι
hyp : ∀ n ∈ u, IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht2 : t2 ∈ s'
ht1 : ∃ i, ∃ (_ : i ∈ u), t1 ∈ s i
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2

tactic: rcases ht1 with ⟨n, hpn, ht1⟩
state_before: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
u : Set ι
hyp : ∀ n ∈ u, IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht2 : t2 ∈ s'
ht1 : ∃ i, ∃ (_ : i ∈ u), t1 ∈ s i
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2
state_after: case intro.intro
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
u : Set ι
hyp : ∀ n ∈ u, IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht2 : t2 ∈ s'
n : ι
hpn : n ∈ u
ht1 : t1 ∈ s n
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2

tactic: exact hyp n hpn t1 t2 ht1 ht2
state_before: case intro.intro
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s : ι → Set (Set Ω)
s' : Set (Set Ω)
_mΩ : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
u : Set ι
hyp : ∀ n ∈ u, IndepSets (s n) s' κ μ
t1 t2 : Set Ω
ht2 : t2 ∈ s'
n : ι
hpn : n ∈ u
ht1 : t1 ∈ s n
⊢ ∀ᵐ (a : α) ∂μ, (κ a) (t1 ∩ t2) = (κ a) t1 * (κ a) t2
state_after: no goals
Theorem: Polynomial.degree_lt_degree_mul_X
File: Mathlib/Algebra/Polynomial/Degree/Definitions.lean

tactic: haveI := Nontrivial.of_polynomial_ne hp
state_before: R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Semiring R
p✝ p q : R[X]
ι : Type u_1
hp : p ≠ 0
⊢ p.degree < (p * X).degree
state_after: R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Semiring R
p✝ p q : R[X]
ι : Type u_1
hp : p ≠ 0
this : Nontrivial R
⊢ p.degree < (p * X).degree

tactic: have : leadingCoeff p * leadingCoeff X ≠ 0 := by simpa
state_before: R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Semiring R
p✝ p q : R[X]
ι : Type u_1
hp : p ≠ 0
this : Nontrivial R
⊢ p.degree < (p * X).degree
state_after: R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Semiring R
p✝ p q : R[X]
ι : Type u_1
hp : p ≠ 0
this✝ : Nontrivial R
this : p.leadingCoeff * X.leadingCoeff ≠ 0
⊢ p.degree < (p * X).degree

tactic: erw [degree_mul' this, degree_eq_natDegree hp, degree_X, ← WithBot.coe_one,
  ← WithBot.coe_add, WithBot.coe_lt_coe]
state_before: R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Semiring R
p✝ p q : R[X]
ι : Type u_1
hp : p ≠ 0
this✝ : Nontrivial R
this : p.leadingCoeff * X.leadingCoeff ≠ 0
⊢ p.degree < (p * X).degree
state_after: R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Semiring R
p✝ p q : R[X]
ι : Type u_1
hp : p ≠ 0
this✝ : Nontrivial R
this : p.leadingCoeff * X.leadingCoeff ≠ 0
⊢ ↑p.natDegree < ↑p.natDegree + 1

tactic: exact Nat.lt_succ_self _
state_before: R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Semiring R
p✝ p q : R[X]
ι : Type u_1
hp : p ≠ 0
this✝ : Nontrivial R
this : p.leadingCoeff * X.leadingCoeff ≠ 0
⊢ ↑p.natDegree < ↑p.natDegree + 1
state_after: no goals

tactic: simpa
state_before: R : Type u
S : Type v
a b c d : R
n m : ℕ
inst✝ : Semiring R
p✝ p q : R[X]
ι : Type u_1
hp : p ≠ 0
this : Nontrivial R
⊢ p.leadingCoeff * X.leadingCoeff ≠ 0
state_after: no goals
Theorem: Polynomial.reverse_add_C
File: Mathlib/Algebra/Polynomial/Reverse.lean

tactic: simp [reverse]
state_before: R : Type u_1
inst✝ : Semiring R
f p : R[X]
t : R
⊢ (p + C t).reverse = p.reverse + C t * X ^ p.natDegree
state_after: no goals
Theorem: MvPolynomial.totalDegree_mul
File: Mathlib/Algebra/MvPolynomial/Degrees.lean

tactic: exact (Finsupp.sum_add_index' (fun _ => rfl) (fun _ _ _ => rfl)).le
state_before: R : Type u
S : Type v
σ : Type u_1
τ : Type u_2
r : R
e : ℕ
n m : σ
s : σ →₀ ℕ
inst✝ : CommSemiring R
p q a b : MvPolynomial σ R
⊢ ∀ {a b : σ →₀ ℕ}, ((a + b).sum fun x e => e) ≤ (a.sum fun x e => e) + b.sum fun x e => e
state_after: no goals
Theorem: CategoryTheory.Limits.limitOpIsoOpColimit_hom_comp_ι
File: Mathlib/CategoryTheory/Limits/IndYoneda.lean

tactic: rw [← limitOpIsoOpColimit_inv_comp_π, ← Category.assoc, Iso.hom_inv_id, Category.id_comp]
state_before: C : Type u₁
inst✝² : Category.{u₂, u₁} C
I : Type v₁
inst✝¹ : Category.{v₂, v₁} I
F : I ⥤ C
inst✝ : HasColimit F
i : I
⊢ (limitOpIsoOpColimit F).hom ≫ (colimit.ι F i).op = limit.π F.op { unop := i }
state_after: no goals
Theorem: archimedean_iff_int_lt
File: Mathlib/Algebra/Order/Archimedean.lean

tactic: rw [archimedean_iff_nat_lt]
state_before: α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
⊢ (∀ (x : α), ∃ n, x < ↑n) → Archimedean α
state_after: α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
⊢ (∀ (x : α), ∃ n, x < ↑n) → ∀ (x : α), ∃ n, x < ↑n

tactic: intro h x
state_before: α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
⊢ (∀ (x : α), ∃ n, x < ↑n) → ∀ (x : α), ∃ n, x < ↑n
state_after: α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
h : ∀ (x : α), ∃ n, x < ↑n
x : α
⊢ ∃ n, x < ↑n

tactic: obtain ⟨n, h⟩ := h x
state_before: α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
h : ∀ (x : α), ∃ n, x < ↑n
x : α
⊢ ∃ n, x < ↑n
state_after: case intro
α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
h✝ : ∀ (x : α), ∃ n, x < ↑n
x : α
n : ℤ
h : x < ↑n
⊢ ∃ n, x < ↑n

tactic: refine ⟨n.toNat, h.trans_le ?_⟩
state_before: case intro
α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
h✝ : ∀ (x : α), ∃ n, x < ↑n
x : α
n : ℤ
h : x < ↑n
⊢ ∃ n, x < ↑n
state_after: case intro
α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
h✝ : ∀ (x : α), ∃ n, x < ↑n
x : α
n : ℤ
h : x < ↑n
⊢ ↑n ≤ ↑n.toNat

tactic: exact mod_cast Int.self_le_toNat _
state_before: case intro
α : Type u_1
M : Type u_2
inst✝ : LinearOrderedField α
h✝ : ∀ (x : α), ∃ n, x < ↑n
x : α
n : ℤ
h : x < ↑n
⊢ ↑n ≤ ↑n.toNat
state_after: no goals
Theorem: Finset.isUnit_iff_singleton_aux
File: Mathlib/Data/Finset/Pointwise.lean

tactic: simp only [Group.isUnit, and_true_iff]
state_before: F : Type u_1
α : Type u_2
β : Type u_3
γ : Type u_4
inst✝⁵ : DecidableEq α
inst✝⁴ : DecidableEq β
inst✝³ : Group α
inst✝² : DivisionMonoid β
inst✝¹ : FunLike F α β
inst✝ : MonoidHomClass F α β
f : F
s t : Finset α
a b : α
⊢ (∃ a, s = {a} ∧ IsUnit a) ↔ ∃ a, s = {a}
state_after: no goals
Theorem: continuousWithinAt_iff_continuousAt
File: Mathlib/Topology/ContinuousOn.lean

tactic: rw [← univ_inter s, continuousWithinAt_inter h, continuousWithinAt_univ]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
inst✝⁴ : TopologicalSpace α
ι : Type u_5
π : ι → Type u_6
inst✝³ : (i : ι) → TopologicalSpace (π i)
inst✝² : TopologicalSpace β
inst✝¹ : TopologicalSpace γ
inst✝ : TopologicalSpace δ
f : α → β
s : Set α
x : α
h : s ∈ 𝓝 x
⊢ ContinuousWithinAt f s x ↔ ContinuousAt f x
state_after: no goals
Theorem: PartitionOfUnity.coe_finsupport
File: Mathlib/Topology/PartitionOfUnity.lean

tactic: ext
state_before: ι : Type u
X : Type v
inst✝⁴ : TopologicalSpace X
E : Type u_1
inst✝³ : AddCommMonoid E
inst✝² : SMulWithZero ℝ E
inst✝¹ : TopologicalSpace E
inst✝ : ContinuousSMul ℝ E
s✝ : Set X
f : PartitionOfUnity ι X s✝
s : Set X
ρ : PartitionOfUnity ι X s
x₀✝ x₀ : X
⊢ ↑(ρ.finsupport x₀) = support fun i => (ρ i) x₀
state_after: case h
ι : Type u
X : Type v
inst✝⁴ : TopologicalSpace X
E : Type u_1
inst✝³ : AddCommMonoid E
inst✝² : SMulWithZero ℝ E
inst✝¹ : TopologicalSpace E
inst✝ : ContinuousSMul ℝ E
s✝ : Set X
f : PartitionOfUnity ι X s✝
s : Set X
ρ : PartitionOfUnity ι X s
x₀✝ x₀ : X
x✝ : ι
⊢ x✝ ∈ ↑(ρ.finsupport x₀) ↔ x✝ ∈ support fun i => (ρ i) x₀

tactic: rw [Finset.mem_coe, mem_finsupport]
state_before: case h
ι : Type u
X : Type v
inst✝⁴ : TopologicalSpace X
E : Type u_1
inst✝³ : AddCommMonoid E
inst✝² : SMulWithZero ℝ E
inst✝¹ : TopologicalSpace E
inst✝ : ContinuousSMul ℝ E
s✝ : Set X
f : PartitionOfUnity ι X s✝
s : Set X
ρ : PartitionOfUnity ι X s
x₀✝ x₀ : X
x✝ : ι
⊢ x✝ ∈ ↑(ρ.finsupport x₀) ↔ x✝ ∈ support fun i => (ρ i) x₀
state_after: no goals
Theorem: FirstOrder.Language.DirectLimit.lift_of
File: Mathlib/ModelTheory/DirectLimit.lean

tactic: simp
state_before: L : Language
ι : Type v
inst✝⁵ : Preorder ι
G : ι → Type w
inst✝⁴ : (i : ι) → L.Structure (G i)
f : (i j : ι) → i ≤ j → G i ↪[L] G j
inst✝³ : IsDirected ι fun x x_1 => x ≤ x_1
inst✝² : DirectedSystem G fun i j h => ⇑(f i j h)
inst✝¹ : Nonempty ι
P : Type u₁
inst✝ : L.Structure P
g : (i : ι) → G i ↪[L] P
Hg : ∀ (i j : ι) (hij : i ≤ j) (x : G i), (g j) ((f i j hij) x) = (g i) x
i : ι
x : G i
⊢ (lift L ι G f g Hg) ((of L ι G f i) x) = (g i) x
state_after: no goals
Theorem: Filter.map_map₂_antidistrib
File: Mathlib/Order/Filter/NAry.lean

tactic: rw [map₂_swap m]
state_before: α : Type u_1
α' : Type u_2
β : Type u_3
β' : Type u_4
γ : Type u_5
γ' : Type u_6
δ : Type u_7
δ' : Type u_8
ε : Type u_9
ε' : Type u_10
m : α → β → γ
f f₁ f₂ : Filter α
g g₁ g₂ : Filter β
h h₁ h₂ : Filter γ
s s₁ s₂ : Set α
t t₁ t₂ : Set β
u : Set γ
v : Set δ
a : α
b : β
c : γ
n : γ → δ
m' : β' → α' → δ
n₁ : β → β'
n₂ : α → α'
h_antidistrib : ∀ (a : α) (b : β), n (m a b) = m' (n₁ b) (n₂ a)
⊢ map n (map₂ m f g) = map₂ m' (map n₁ g) (map n₂ f)
state_after: α : Type u_1
α' : Type u_2
β : Type u_3
β' : Type u_4
γ : Type u_5
γ' : Type u_6
δ : Type u_7
δ' : Type u_8
ε : Type u_9
ε' : Type u_10
m : α → β → γ
f f₁ f₂ : Filter α
g g₁ g₂ : Filter β
h h₁ h₂ : Filter γ
s s₁ s₂ : Set α
t t₁ t₂ : Set β
u : Set γ
v : Set δ
a : α
b : β
c : γ
n : γ → δ
m' : β' → α' → δ
n₁ : β → β'
n₂ : α → α'
h_antidistrib : ∀ (a : α) (b : β), n (m a b) = m' (n₁ b) (n₂ a)
⊢ map n (map₂ (fun a b => m b a) g f) = map₂ m' (map n₁ g) (map n₂ f)

tactic: exact map_map₂_distrib fun _ _ => h_antidistrib _ _
state_before: α : Type u_1
α' : Type u_2
β : Type u_3
β' : Type u_4
γ : Type u_5
γ' : Type u_6
δ : Type u_7
δ' : Type u_8
ε : Type u_9
ε' : Type u_10
m : α → β → γ
f f₁ f₂ : Filter α
g g₁ g₂ : Filter β
h h₁ h₂ : Filter γ
s s₁ s₂ : Set α
t t₁ t₂ : Set β
u : Set γ
v : Set δ
a : α
b : β
c : γ
n : γ → δ
m' : β' → α' → δ
n₁ : β → β'
n₂ : α → α'
h_antidistrib : ∀ (a : α) (b : β), n (m a b) = m' (n₁ b) (n₂ a)
⊢ map n (map₂ (fun a b => m b a) g f) = map₂ m' (map n₁ g) (map n₂ f)
state_after: no goals
Theorem: FirstOrder.Language.BoundedFormula.semanticallyEquivalent_toPrenex
File: Mathlib/ModelTheory/Satisfiability.lean

tactic: rw [realize_iff, realize_toPrenex]
state_before: L : Language
T : L.Theory
α : Type w
n : ℕ
φ : L.BoundedFormula α n
M : ∅.ModelType
v : α → ↑M
xs : Fin n → ↑M
⊢ (φ ⇔ φ.toPrenex).Realize v xs
state_after: no goals
Theorem: MeasureTheory.VectorMeasure.ennrealToMeasure_toENNRealVectorMeasure
File: Mathlib/MeasureTheory/Measure/VectorMeasure.lean

tactic: rw [ennrealToMeasure_apply hs, toENNRealVectorMeasure_apply_measurable hs]
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ : Measure α
s : Set α
hs : MeasurableSet s
⊢ μ.toENNRealVectorMeasure.ennrealToMeasure s = μ s
state_after: no goals
Theorem: PNat.XgcdType.finish_isReduced
File: Mathlib/Data/PNat/Xgcd.lean

tactic: dsimp [IsReduced]
state_before: u : XgcdType
⊢ u.finish.IsReduced
state_after: u : XgcdType
⊢ u.finish.ap = u.finish.bp

tactic: rfl
state_before: u : XgcdType
⊢ u.finish.ap = u.finish.bp
state_after: no goals
Theorem: Polynomial.smul_X_eq_monomial
File: Mathlib/Algebra/Polynomial/Basic.lean

tactic: rw [X_pow_eq_monomial, smul_monomial, smul_eq_mul, mul_one]
state_before: R : Type u
a b : R
m n✝ : ℕ
inst✝ : Semiring R
p q : R[X]
n : ℕ
⊢ a • X ^ n = (monomial n) a
state_after: no goals
Theorem: orthogonalProjection_mem_subspace_orthogonalComplement_eq_zero
File: Mathlib/Analysis/InnerProductSpace/Projection.lean

tactic: ext
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁵ : _root_.RCLike 𝕜
inst✝⁴ : NormedAddCommGroup E
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace 𝕜 E
inst✝¹ : InnerProductSpace ℝ F
K : Submodule 𝕜 E
inst✝ : HasOrthogonalProjection K
v : E
hv : v ∈ Kᗮ
⊢ (orthogonalProjection K) v = 0
state_after: case a
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁵ : _root_.RCLike 𝕜
inst✝⁴ : NormedAddCommGroup E
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace 𝕜 E
inst✝¹ : InnerProductSpace ℝ F
K : Submodule 𝕜 E
inst✝ : HasOrthogonalProjection K
v : E
hv : v ∈ Kᗮ
⊢ ↑((orthogonalProjection K) v) = ↑0

tactic: convert eq_orthogonalProjection_of_mem_orthogonal (K := K) _ _ <;> simp [hv]
state_before: case a
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁵ : _root_.RCLike 𝕜
inst✝⁴ : NormedAddCommGroup E
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace 𝕜 E
inst✝¹ : InnerProductSpace ℝ F
K : Submodule 𝕜 E
inst✝ : HasOrthogonalProjection K
v : E
hv : v ∈ Kᗮ
⊢ ↑((orthogonalProjection K) v) = ↑0
state_after: no goals
Theorem: Rack.left_cancel
File: Mathlib/Algebra/Quandle.lean

tactic: constructor
state_before: R : Type u_1
inst✝ : Rack R
x y y' : R
⊢ x ◃ y = x ◃ y' ↔ y = y'
state_after: case mp
R : Type u_1
inst✝ : Rack R
x y y' : R
⊢ x ◃ y = x ◃ y' → y = y'

case mpr
R : Type u_1
inst✝ : Rack R
x y y' : R
⊢ y = y' → x ◃ y = x ◃ y'

tactic: rintro rfl
state_before: case mpr
R : Type u_1
inst✝ : Rack R
x y y' : R
⊢ y = y' → x ◃ y = x ◃ y'
state_after: case mpr
R : Type u_1
inst✝ : Rack R
x y : R
⊢ x ◃ y = x ◃ y

tactic: rfl
state_before: case mpr
R : Type u_1
inst✝ : Rack R
x y : R
⊢ x ◃ y = x ◃ y
state_after: no goals

tactic: apply (act' x).injective
state_before: case mp
R : Type u_1
inst✝ : Rack R
x y y' : R
⊢ x ◃ y = x ◃ y' → y = y'
state_after: no goals
Theorem: ContDiff.lipschitzWith_of_hasCompactSupport
File: Mathlib/Analysis/Calculus/ContDiff/RCLike.lean

tactic: obtain ⟨C, hC⟩ := (hf.fderiv 𝕂).exists_bound_of_continuous (h'f.continuous_fderiv hn)
state_before: n✝ : ℕ∞
𝕂 : Type u_1
inst✝⁴ : RCLike 𝕂
E' : Type u_2
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕂 E'
F' : Type u_3
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕂 F'
f : E' → F'
n : ℕ∞
hf : HasCompactSupport f
h'f : ContDiff 𝕂 n f
hn : 1 ≤ n
⊢ ∃ C, LipschitzWith C f
state_after: case intro
n✝ : ℕ∞
𝕂 : Type u_1
inst✝⁴ : RCLike 𝕂
E' : Type u_2
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕂 E'
F' : Type u_3
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕂 F'
f : E' → F'
n : ℕ∞
hf : HasCompactSupport f
h'f : ContDiff 𝕂 n f
hn : 1 ≤ n
C : ℝ
hC : ∀ (x : E'), ‖fderiv 𝕂 f x‖ ≤ C
⊢ ∃ C, LipschitzWith C f

tactic: refine ⟨⟨max C 0, le_max_right _ _⟩, ?_⟩
state_before: case intro
n✝ : ℕ∞
𝕂 : Type u_1
inst✝⁴ : RCLike 𝕂
E' : Type u_2
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕂 E'
F' : Type u_3
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕂 F'
f : E' → F'
n : ℕ∞
hf : HasCompactSupport f
h'f : ContDiff 𝕂 n f
hn : 1 ≤ n
C : ℝ
hC : ∀ (x : E'), ‖fderiv 𝕂 f x‖ ≤ C
⊢ ∃ C, LipschitzWith C f
state_after: case intro
n✝ : ℕ∞
𝕂 : Type u_1
inst✝⁴ : RCLike 𝕂
E' : Type u_2
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕂 E'
F' : Type u_3
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕂 F'
f : E' → F'
n : ℕ∞
hf : HasCompactSupport f
h'f : ContDiff 𝕂 n f
hn : 1 ≤ n
C : ℝ
hC : ∀ (x : E'), ‖fderiv 𝕂 f x‖ ≤ C
⊢ LipschitzWith ⟨max C 0, ⋯⟩ f

tactic: apply lipschitzWith_of_nnnorm_fderiv_le (h'f.differentiable hn) (fun x ↦ ?_)
state_before: case intro
n✝ : ℕ∞
𝕂 : Type u_1
inst✝⁴ : RCLike 𝕂
E' : Type u_2
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕂 E'
F' : Type u_3
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕂 F'
f : E' → F'
n : ℕ∞
hf : HasCompactSupport f
h'f : ContDiff 𝕂 n f
hn : 1 ≤ n
C : ℝ
hC : ∀ (x : E'), ‖fderiv 𝕂 f x‖ ≤ C
⊢ LipschitzWith ⟨max C 0, ⋯⟩ f
state_after: n✝ : ℕ∞
𝕂 : Type u_1
inst✝⁴ : RCLike 𝕂
E' : Type u_2
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕂 E'
F' : Type u_3
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕂 F'
f : E' → F'
n : ℕ∞
hf : HasCompactSupport f
h'f : ContDiff 𝕂 n f
hn : 1 ≤ n
C : ℝ
hC : ∀ (x : E'), ‖fderiv 𝕂 f x‖ ≤ C
x : E'
⊢ ‖fderiv 𝕂 f x‖₊ ≤ ⟨max C 0, ⋯⟩

tactic: simp [← NNReal.coe_le_coe, hC x]
state_before: n✝ : ℕ∞
𝕂 : Type u_1
inst✝⁴ : RCLike 𝕂
E' : Type u_2
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕂 E'
F' : Type u_3
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕂 F'
f : E' → F'
n : ℕ∞
hf : HasCompactSupport f
h'f : ContDiff 𝕂 n f
hn : 1 ≤ n
C : ℝ
hC : ∀ (x : E'), ‖fderiv 𝕂 f x‖ ≤ C
x : E'
⊢ ‖fderiv 𝕂 f x‖₊ ≤ ⟨max C 0, ⋯⟩
state_after: no goals
Theorem: Real.monotone_rpow_of_base_ge_one
File: Mathlib/Analysis/SpecialFunctions/Pow/Real.lean

tactic: rcases lt_or_eq_of_le hb with hb | rfl
state_before: x y z : ℝ
n : ℕ
b : ℝ
hb : 1 ≤ b
⊢ Monotone fun x => b ^ x
state_after: case inl
x y z : ℝ
n : ℕ
b : ℝ
hb✝ : 1 ≤ b
hb : 1 < b
⊢ Monotone fun x => b ^ x

case inr
x y z : ℝ
n : ℕ
hb : 1 ≤ 1
⊢ Monotone fun x => 1 ^ x

tactic: case inl => exact (strictMono_rpow_of_base_gt_one hb).monotone
state_before: case inl
x y z : ℝ
n : ℕ
b : ℝ
hb✝ : 1 ≤ b
hb : 1 < b
⊢ Monotone fun x => b ^ x

case inr
x y z : ℝ
n : ℕ
hb : 1 ≤ 1
⊢ Monotone fun x => 1 ^ x
state_after: case inr
x y z : ℝ
n : ℕ
hb : 1 ≤ 1
⊢ Monotone fun x => 1 ^ x

tactic: case inr => intro _ _ _; simp
state_before: case inr
x y z : ℝ
n : ℕ
hb : 1 ≤ 1
⊢ Monotone fun x => 1 ^ x
state_after: no goals

tactic: exact (strictMono_rpow_of_base_gt_one hb).monotone
state_before: x y z : ℝ
n : ℕ
b : ℝ
hb✝ : 1 ≤ b
hb : 1 < b
⊢ Monotone fun x => b ^ x
state_after: no goals

tactic: intro _ _ _
state_before: x y z : ℝ
n : ℕ
hb : 1 ≤ 1
⊢ Monotone fun x => 1 ^ x
state_after: x y z : ℝ
n : ℕ
hb : 1 ≤ 1
a✝¹ b✝ : ℝ
a✝ : a✝¹ ≤ b✝
⊢ (fun x => 1 ^ x) a✝¹ ≤ (fun x => 1 ^ x) b✝

tactic: simp
state_before: x y z : ℝ
n : ℕ
hb : 1 ≤ 1
a✝¹ b✝ : ℝ
a✝ : a✝¹ ≤ b✝
⊢ (fun x => 1 ^ x) a✝¹ ≤ (fun x => 1 ^ x) b✝
state_after: no goals
Theorem: Set.forall_subset_image_iff
File: Mathlib/Data/Set/Image.lean

tactic: simp [subset_image_iff]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
f : α → β
s t : Set α
p : Set β → Prop
⊢ (∀ t ⊆ f '' s, p t) ↔ ∀ t ⊆ s, p (f '' t)
state_after: no goals
Theorem: CategoryTheory.MonoidalClosed.uncurry_id_eq_ev
File: Mathlib/CategoryTheory/Closed/Monoidal.lean

tactic: simp [uncurry_eq]
state_before: C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : MonoidalCategory C
A B X X' Y Y' Z : C
inst✝ : Closed A
⊢ uncurry (𝟙 ((ihom A).obj X)) = (ihom.ev A).app X
state_after: no goals
Theorem: ProbabilityTheory.lintegral_condKernel
File: Mathlib/Probability/Kernel/Disintegration/Integral.lean

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

tactic: rw [kernel.lintegral_compProd _ _ _ hf]
state_before: α : Type u_1
β : Type u_2
Ω : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
inst✝⁴ : MeasurableSpace Ω
inst✝³ : StandardBorelSpace Ω
inst✝² : Nonempty Ω
inst✝¹ : CountableOrCountablyGenerated α β
κ : ↥(kernel α (β × Ω))
inst✝ : IsFiniteKernel κ
f : β × Ω → ℝ≥0∞
hf : Measurable f
a : α
⊢ ∫⁻ (b : β), ∫⁻ (ω : Ω), f (b, ω) ∂(kernel.condKernel κ) (a, b) ∂(kernel.fst κ) a =
    ∫⁻ (x : β × Ω), f x ∂(kernel.fst κ ⊗ₖ kernel.condKernel κ) a
state_after: no goals
Theorem: MeasureTheory.laverage_congr
File: Mathlib/MeasureTheory/Integral/Average.lean

tactic: simp only [laverage_eq, lintegral_congr_ae h]
state_before: α : Type u_1
E : Type u_2
F : Type u_3
m0 : MeasurableSpace α
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace ℝ E
inst✝³ : CompleteSpace E
inst✝² : NormedAddCommGroup F
inst✝¹ : NormedSpace ℝ F
inst✝ : CompleteSpace F
μ ν : Measure α
s t : Set α
f✝ g✝ f g : α → ℝ≥0∞
h : f =ᶠ[ae μ] g
⊢ ⨍⁻ (x : α), f x ∂μ = ⨍⁻ (x : α), g x ∂μ
state_after: no goals
Theorem: MeasureTheory.Content.empty
File: Mathlib/MeasureTheory/Measure/Content.lean

tactic: have := μ.sup_disjoint' ⊥ ⊥
state_before: G : Type w
inst✝ : TopologicalSpace G
μ : Content G
⊢ (fun s => ↑(μ.toFun s)) ⊥ = 0
state_after: G : Type w
inst✝ : TopologicalSpace G
μ : Content G
this : Disjoint ↑⊥ ↑⊥ → IsClosed ↑⊥ → IsClosed ↑⊥ → μ.toFun (⊥ ⊔ ⊥) = μ.toFun ⊥ + μ.toFun ⊥
⊢ (fun s => ↑(μ.toFun s)) ⊥ = 0

tactic: simpa [apply_eq_coe_toFun] using this
state_before: G : Type w
inst✝ : TopologicalSpace G
μ : Content G
this : Disjoint ↑⊥ ↑⊥ → IsClosed ↑⊥ → IsClosed ↑⊥ → μ.toFun (⊥ ⊔ ⊥) = μ.toFun ⊥ + μ.toFun ⊥
⊢ (fun s => ↑(μ.toFun s)) ⊥ = 0
state_after: no goals
Theorem: HomologicalComplex.liftCycles_comp_cyclesMap
File: Mathlib/Algebra/Homology/ShortComplex/HomologicalComplex.lean

tactic: rw [assoc, φ.comm, reassoc_of% hk, zero_comp]
state_before: C : Type u_1
inst✝⁴ : Category.{?u.101332, u_1} C
inst✝³ : HasZeroMorphisms C
ι : Type u_2
c : ComplexShape ι
K L M : HomologicalComplex C c
φ✝ : K ⟶ L
ψ : L ⟶ M
i j✝ k✝ : ι
inst✝² : K.HasHomology i
inst✝¹ : L.HasHomology i
inst✝ : M.HasHomology i
A : C
k : A ⟶ K.X i
j : ι
hj : c.next i = j
hk : k ≫ K.d i j = 0
φ : K ⟶ L
⊢ (k ≫ φ.f i) ≫ L.d i j = 0
state_after: no goals

tactic: simp only [← cancel_mono (L.iCycles i), assoc, cyclesMap_i, liftCycles_i_assoc, liftCycles_i]
state_before: C : Type u_1
inst✝⁴ : Category.{u_3, u_1} C
inst✝³ : HasZeroMorphisms C
ι : Type u_2
c : ComplexShape ι
K L M : HomologicalComplex C c
φ✝ : K ⟶ L
ψ : L ⟶ M
i j✝ k✝ : ι
inst✝² : K.HasHomology i
inst✝¹ : L.HasHomology i
inst✝ : M.HasHomology i
A : C
k : A ⟶ K.X i
j : ι
hj : c.next i = j
hk : k ≫ K.d i j = 0
φ : K ⟶ L
⊢ K.liftCycles k j hj hk ≫ cyclesMap φ i = L.liftCycles (k ≫ φ.f i) j hj ⋯
state_after: no goals
Theorem: linearIndependent_subtype
File: Mathlib/LinearAlgebra/LinearIndependent.lean

tactic: apply linearIndependent_comp_subtype (v := id)
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✝⁶ : Semiring R
inst✝⁵ : AddCommMonoid M
inst✝⁴ : AddCommMonoid M'
inst✝³ : AddCommMonoid M''
inst✝² : Module R M
inst✝¹ : Module R M'
inst✝ : Module R M''
a b : R
x y : M
s : Set M
⊢ (LinearIndependent R fun (x : ↑s) => ↑x) ↔ ∀ l ∈ Finsupp.supported R R s, (Finsupp.total M M R id) l = 0 → l = 0
state_after: no goals