1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: mem_convexJoin
File: Mathlib/Analysis/Convex/Join.lean

tactic: simp [convexJoin]
state_before: ι : Sort u_1
𝕜 : Type u_2
E : Type u_3
inst✝² : OrderedSemiring 𝕜
inst✝¹ : AddCommMonoid E
inst✝ : Module 𝕜 E
s t s₁ s₂ t₁ t₂ u : Set E
x y : E
⊢ x ∈ convexJoin 𝕜 s t ↔ ∃ a ∈ s, ∃ b ∈ t, x ∈ segment 𝕜 a b
state_after: no goals
Theorem: MvPolynomial.vars_neg
File: Mathlib/Algebra/MvPolynomial/CommRing.lean

tactic: simp [vars, degrees_neg]
state_before: R : Type u
S : Type v
σ : Type u_1
a a' a₁ a₂ : R
e : ℕ
n m : σ
s : σ →₀ ℕ
inst✝ : CommRing R
p q : MvPolynomial σ R
⊢ (-p).vars = p.vars
state_after: no goals
Theorem: Set.PartiallyWellOrderedOn.iff_forall_not_isBadSeq
File: Mathlib/Order/WellFoundedSet.lean

tactic: simp [IsBadSeq]
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
γ : Type u_4
π : ι → Type u_5
r✝ r : α → α → Prop
s : Set α
f : ℕ → α
⊢ ((∀ (n : ℕ), f n ∈ s) → ∃ m n, m < n ∧ r (f m) (f n)) ↔ ¬IsBadSeq r s f
state_after: no goals
Theorem: SimpleGraph.CliqueFree.mono
File: Mathlib/Combinatorics/SimpleGraph/Clique.lean

tactic: intro hG s hs
state_before: α : Type u_1
β : Type u_2
G H : SimpleGraph α
m n : ℕ
s : Finset α
h : m ≤ n
⊢ G.CliqueFree m → G.CliqueFree n
state_after: α : Type u_1
β : Type u_2
G H : SimpleGraph α
m n : ℕ
s✝ : Finset α
h : m ≤ n
hG : G.CliqueFree m
s : Finset α
hs : G.IsNClique n s
⊢ False

tactic: obtain ⟨t, hts, ht⟩ := exists_subset_card_eq (h.trans hs.card_eq.ge)
state_before: α : Type u_1
β : Type u_2
G H : SimpleGraph α
m n : ℕ
s✝ : Finset α
h : m ≤ n
hG : G.CliqueFree m
s : Finset α
hs : G.IsNClique n s
⊢ False
state_after: case intro.intro
α : Type u_1
β : Type u_2
G H : SimpleGraph α
m n : ℕ
s✝ : Finset α
h : m ≤ n
hG : G.CliqueFree m
s : Finset α
hs : G.IsNClique n s
t : Finset α
hts : t ⊆ s
ht : t.card = m
⊢ False

tactic: exact hG _ ⟨hs.clique.subset hts, ht⟩
state_before: case intro.intro
α : Type u_1
β : Type u_2
G H : SimpleGraph α
m n : ℕ
s✝ : Finset α
h : m ≤ n
hG : G.CliqueFree m
s : Finset α
hs : G.IsNClique n s
t : Finset α
hts : t ⊆ s
ht : t.card = m
⊢ False
state_after: no goals
Theorem: IsUnit.isRegular
File: Mathlib/Algebra/Regular/Basic.lean

tactic: rcases ua with ⟨a, rfl⟩
state_before: R : Type u_1
inst✝ : Monoid R
a b : R
ua : IsUnit a
⊢ IsRegular a
state_after: case intro
R : Type u_1
inst✝ : Monoid R
b : R
a : Rˣ
⊢ IsRegular ↑a

tactic: exact Units.isRegular a
state_before: case intro
R : Type u_1
inst✝ : Monoid R
b : R
a : Rˣ
⊢ IsRegular ↑a
state_after: no goals
Theorem: Filter.rcomap_rcomap
File: Mathlib/Order/Filter/Partial.lean

tactic: ext t
state_before: α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
⊢ (rcomap r (rcomap s l)).sets = (rcomap (r.comp s) l).sets
state_after: case h
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
⊢ t ∈ (rcomap r (rcomap s l)).sets ↔ t ∈ (rcomap (r.comp s) l).sets

tactic: simp [rcomap_sets, Rel.image, Rel.core_comp]
state_before: case h
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
⊢ t ∈ (rcomap r (rcomap s l)).sets ↔ t ∈ (rcomap (r.comp s) l).sets
state_after: case h
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
⊢ (∃ x, (∃ x_1 ∈ l, s.core x_1 ⊆ x) ∧ r.core x ⊆ t) ↔ ∃ x ∈ l, r.core (s.core x) ⊆ t

tactic: constructor
state_before: case h
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
⊢ (∃ x, (∃ x_1 ∈ l, s.core x_1 ⊆ x) ∧ r.core x ⊆ t) ↔ ∃ x ∈ l, r.core (s.core x) ⊆ t
state_after: case h.mp
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
⊢ (∃ x, (∃ x_1 ∈ l, s.core x_1 ⊆ x) ∧ r.core x ⊆ t) → ∃ x ∈ l, r.core (s.core x) ⊆ t

case h.mpr
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
⊢ (∃ x ∈ l, r.core (s.core x) ⊆ t) → ∃ x, (∃ x_1 ∈ l, s.core x_1 ⊆ x) ∧ r.core x ⊆ t

tactic: rintro ⟨t, tsets, ht⟩
state_before: case h.mpr
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
⊢ (∃ x ∈ l, r.core (s.core x) ⊆ t) → ∃ x, (∃ x_1 ∈ l, s.core x_1 ⊆ x) ∧ r.core x ⊆ t
state_after: case h.mpr.intro.intro
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t✝ : Set α
t : Set γ
tsets : t ∈ l
ht : r.core (s.core t) ⊆ t✝
⊢ ∃ x, (∃ x_1 ∈ l, s.core x_1 ⊆ x) ∧ r.core x ⊆ t✝

tactic: exact ⟨Rel.core s t, ⟨t, tsets, Set.Subset.rfl⟩, ht⟩
state_before: case h.mpr.intro.intro
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t✝ : Set α
t : Set γ
tsets : t ∈ l
ht : r.core (s.core t) ⊆ t✝
⊢ ∃ x, (∃ x_1 ∈ l, s.core x_1 ⊆ x) ∧ r.core x ⊆ t✝
state_after: no goals

tactic: rintro ⟨u, ⟨v, vsets, hv⟩, h⟩
state_before: case h.mp
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
⊢ (∃ x, (∃ x_1 ∈ l, s.core x_1 ⊆ x) ∧ r.core x ⊆ t) → ∃ x ∈ l, r.core (s.core x) ⊆ t
state_after: case h.mp.intro.intro.intro.intro
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
u : Set β
h : r.core u ⊆ t
v : Set γ
vsets : v ∈ l
hv : s.core v ⊆ u
⊢ ∃ x ∈ l, r.core (s.core x) ⊆ t

tactic: exact ⟨v, vsets, Set.Subset.trans (Rel.core_mono _ hv) h⟩
state_before: case h.mp.intro.intro.intro.intro
α : Type u
β : Type v
γ : Type w
r : Rel α β
s : Rel β γ
l : Filter γ
t : Set α
u : Set β
h : r.core u ⊆ t
v : Set γ
vsets : v ∈ l
hv : s.core v ⊆ u
⊢ ∃ x ∈ l, r.core (s.core x) ⊆ t
state_after: no goals
Theorem: ContractingWith.edist_efixedPoint_le'
File: Mathlib/Topology/MetricSpace/Contracting.lean

tactic: convert hf.apriori_edist_iterate_efixedPoint_le' hsc hsf hxs hx 0
state_before: α : Type u_1
inst✝ : EMetricSpace α
cs : CompleteSpace α
K : ℝ≥0
f : α → α
s : Set α
hsc : IsComplete s
hsf : MapsTo f s s
hf : ContractingWith K (MapsTo.restrict f s s hsf)
x : α
hxs : x ∈ s
hx : edist x (f x) ≠ ⊤
⊢ edist x (efixedPoint' f hsc hsf hf x hxs hx) ≤ edist x (f x) / (1 - ↑K)
state_after: case h.e'_4.h.e'_5
α : Type u_1
inst✝ : EMetricSpace α
cs : CompleteSpace α
K : ℝ≥0
f : α → α
s : Set α
hsc : IsComplete s
hsf : MapsTo f s s
hf : ContractingWith K (MapsTo.restrict f s s hsf)
x : α
hxs : x ∈ s
hx : edist x (f x) ≠ ⊤
⊢ edist x (f x) = edist x (f x) * ↑K ^ 0

tactic: rw [pow_zero, mul_one]
state_before: case h.e'_4.h.e'_5
α : Type u_1
inst✝ : EMetricSpace α
cs : CompleteSpace α
K : ℝ≥0
f : α → α
s : Set α
hsc : IsComplete s
hsf : MapsTo f s s
hf : ContractingWith K (MapsTo.restrict f s s hsf)
x : α
hxs : x ∈ s
hx : edist x (f x) ≠ ⊤
⊢ edist x (f x) = edist x (f x) * ↑K ^ 0
state_after: no goals
Theorem: Set.encard_empty
File: Mathlib/Data/Set/Card.lean

tactic: rw [encard_eq_zero]
state_before: α : Type u_1
β : Type u_2
s t : Set α
⊢ ∅.encard = 0
state_after: no goals
Theorem: MeasureTheory.submartingale_of_condexp_sub_nonneg
File: Mathlib/Probability/Martingale/Basic.lean

tactic: refine ⟨hadp, fun i j hij => ?_, hint⟩
state_before: Ω : Type u_1
E : Type u_2
ι : Type u_3
inst✝⁴ : Preorder ι
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝³ : NormedAddCommGroup E
inst✝² : NormedSpace ℝ E
inst✝¹ : CompleteSpace E
f✝ g : ι → Ω → E
ℱ : Filtration ι m0
inst✝ : IsFiniteMeasure μ
f : ι → Ω → ℝ
hadp : Adapted ℱ f
hint : ∀ (i : ι), Integrable (f i) μ
hf : ∀ (i j : ι), i ≤ j → 0 ≤ᶠ[ae μ] μ[f j - f i|↑ℱ i]
⊢ Submartingale f ℱ μ
state_after: Ω : Type u_1
E : Type u_2
ι : Type u_3
inst✝⁴ : Preorder ι
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝³ : NormedAddCommGroup E
inst✝² : NormedSpace ℝ E
inst✝¹ : CompleteSpace E
f✝ g : ι → Ω → E
ℱ : Filtration ι m0
inst✝ : IsFiniteMeasure μ
f : ι → Ω → ℝ
hadp : Adapted ℱ f
hint : ∀ (i : ι), Integrable (f i) μ
hf : ∀ (i j : ι), i ≤ j → 0 ≤ᶠ[ae μ] μ[f j - f i|↑ℱ i]
i j : ι
hij : i ≤ j
⊢ f i ≤ᶠ[ae μ] μ[f j|↑ℱ i]

tactic: rw [← condexp_of_stronglyMeasurable (ℱ.le _) (hadp _) (hint _), ← eventually_sub_nonneg]
state_before: Ω : Type u_1
E : Type u_2
ι : Type u_3
inst✝⁴ : Preorder ι
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝³ : NormedAddCommGroup E
inst✝² : NormedSpace ℝ E
inst✝¹ : CompleteSpace E
f✝ g : ι → Ω → E
ℱ : Filtration ι m0
inst✝ : IsFiniteMeasure μ
f : ι → Ω → ℝ
hadp : Adapted ℱ f
hint : ∀ (i : ι), Integrable (f i) μ
hf : ∀ (i j : ι), i ≤ j → 0 ≤ᶠ[ae μ] μ[f j - f i|↑ℱ i]
i j : ι
hij : i ≤ j
⊢ f i ≤ᶠ[ae μ] μ[f j|↑ℱ i]
state_after: Ω : Type u_1
E : Type u_2
ι : Type u_3
inst✝⁴ : Preorder ι
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝³ : NormedAddCommGroup E
inst✝² : NormedSpace ℝ E
inst✝¹ : CompleteSpace E
f✝ g : ι → Ω → E
ℱ : Filtration ι m0
inst✝ : IsFiniteMeasure μ
f : ι → Ω → ℝ
hadp : Adapted ℱ f
hint : ∀ (i : ι), Integrable (f i) μ
hf : ∀ (i j : ι), i ≤ j → 0 ≤ᶠ[ae μ] μ[f j - f i|↑ℱ i]
i j : ι
hij : i ≤ j
⊢ 0 ≤ᶠ[ae μ] μ[f j|↑ℱ i] - μ[f i|↑ℱ i]

tactic: exact EventuallyLE.trans (hf i j hij) (condexp_sub (hint _) (hint _)).le
state_before: Ω : Type u_1
E : Type u_2
ι : Type u_3
inst✝⁴ : Preorder ι
m0 : MeasurableSpace Ω
μ : Measure Ω
inst✝³ : NormedAddCommGroup E
inst✝² : NormedSpace ℝ E
inst✝¹ : CompleteSpace E
f✝ g : ι → Ω → E
ℱ : Filtration ι m0
inst✝ : IsFiniteMeasure μ
f : ι → Ω → ℝ
hadp : Adapted ℱ f
hint : ∀ (i : ι), Integrable (f i) μ
hf : ∀ (i j : ι), i ≤ j → 0 ≤ᶠ[ae μ] μ[f j - f i|↑ℱ i]
i j : ι
hij : i ≤ j
⊢ 0 ≤ᶠ[ae μ] μ[f j|↑ℱ i] - μ[f i|↑ℱ i]
state_after: no goals
Theorem: Nat.div_le_of_le_mul'
File: Mathlib/Data/Nat/Defs.lean

tactic: obtain rfl | hk := k.eq_zero_or_pos
state_before: a b c d m n k : ℕ
p q : ℕ → Prop
h : m ≤ k * n
⊢ m / k ≤ n
state_after: case inl
a b c d m n : ℕ
p q : ℕ → Prop
h : m ≤ 0 * n
⊢ m / 0 ≤ n

case inr
a b c d m n k : ℕ
p q : ℕ → Prop
h : m ≤ k * n
hk : k > 0
⊢ m / k ≤ n

tactic: simp
state_before: case inl
a b c d m n : ℕ
p q : ℕ → Prop
h : m ≤ 0 * n
⊢ m / 0 ≤ n
state_after: no goals

tactic: refine Nat.le_of_mul_le_mul_left ?_ hk
state_before: case inr
a b c d m n k : ℕ
p q : ℕ → Prop
h : m ≤ k * n
hk : k > 0
⊢ m / k ≤ n
state_after: case inr
a b c d m n k : ℕ
p q : ℕ → Prop
h : m ≤ k * n
hk : k > 0
⊢ k * (m / k) ≤ k * n

tactic: calc
  k * (m / k) ≤ m % k + k * (m / k) := Nat.le_add_left _ _
  _ = m := mod_add_div _ _
  _ ≤ k * n := h
state_before: case inr
a b c d m n k : ℕ
p q : ℕ → Prop
h : m ≤ k * n
hk : k > 0
⊢ k * (m / k) ≤ k * n
state_after: no goals
Theorem: geom_series_mul_one_add
File: Mathlib/Analysis/SpecificLimits/Normed.lean

tactic: rw [add_mul, one_mul, geom_series_mul_shift x h, geom_series_succ x h, two_mul, add_sub_assoc]
state_before: α : Type u_1
β : Type u_2
ι : Type u_3
R : Type u_4
inst✝¹ : NormedRing R
inst✝ : CompleteSpace R
x : R
h : ‖x‖ < 1
⊢ (1 + x) * ∑' (i : ℕ), x ^ i = 2 * ∑' (i : ℕ), x ^ i - 1
state_after: no goals
Theorem: Polynomial.reflect_eq_zero_iff
File: Mathlib/Algebra/Polynomial/Reverse.lean

tactic: rw [ofFinsupp_eq_zero, reflect, embDomain_eq_zero, ofFinsupp_eq_zero]
state_before: R : Type u_1
inst✝ : Semiring R
f✝ : R[X]
N : ℕ
f : R[X]
⊢ reflect N f = 0 ↔ f = 0
state_after: no goals
Theorem: QuadraticForm.polar_sub_right
File: Mathlib/LinearAlgebra/QuadraticForm/Basic.lean

tactic: rw [sub_eq_add_neg, sub_eq_add_neg, polar_add_right, polar_neg_right]
state_before: S : Type u_1
T : Type u_2
R : Type u_3
M : Type u_4
N : Type u_5
inst✝² : CommRing R
inst✝¹ : AddCommGroup M
inst✝ : Module R M
Q : QuadraticForm R M
x y y' : M
⊢ polar (⇑Q) x (y - y') = polar (⇑Q) x y - polar (⇑Q) x y'
state_after: no goals
Theorem: MvPolynomial.coeff_eq_zero_of_totalDegree_lt
File: Mathlib/Algebra/MvPolynomial/Degrees.lean

tactic: rw [totalDegree, Finset.sup_lt_iff] at h
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 f : MvPolynomial σ R
d : σ →₀ ℕ
h : f.totalDegree < ∑ i ∈ d.support, d i
⊢ coeff d f = 0
state_after: R : Type u
S : Type v
σ : Type u_1
τ : Type u_2
r : R
e : ℕ
n m : σ
s : σ →₀ ℕ
inst✝ : CommSemiring R
p q f : MvPolynomial σ R
d : σ →₀ ℕ
h : ∀ b ∈ f.support, (b.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ coeff d f = 0

R : Type u
S : Type v
σ : Type u_1
τ : Type u_2
r : R
e : ℕ
n m : σ
s : σ →₀ ℕ
inst✝ : CommSemiring R
p q f : MvPolynomial σ R
d : σ →₀ ℕ
h : (f.support.sup fun s => s.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ ⊥ < ∑ i ∈ d.support, d i

tactic: specialize h d
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 f : MvPolynomial σ R
d : σ →₀ ℕ
h : ∀ b ∈ f.support, (b.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ coeff d f = 0
state_after: R : Type u
S : Type v
σ : Type u_1
τ : Type u_2
r : R
e : ℕ
n m : σ
s : σ →₀ ℕ
inst✝ : CommSemiring R
p q f : MvPolynomial σ R
d : σ →₀ ℕ
h : d ∈ f.support → (d.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ coeff d f = 0

tactic: rw [mem_support_iff] at h
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 f : MvPolynomial σ R
d : σ →₀ ℕ
h : d ∈ f.support → (d.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ coeff d f = 0
state_after: R : Type u
S : Type v
σ : Type u_1
τ : Type u_2
r : R
e : ℕ
n m : σ
s : σ →₀ ℕ
inst✝ : CommSemiring R
p q f : MvPolynomial σ R
d : σ →₀ ℕ
h : coeff d f ≠ 0 → (d.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ coeff d f = 0

tactic: refine not_not.mp (mt h ?_)
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 f : MvPolynomial σ R
d : σ →₀ ℕ
h : coeff d f ≠ 0 → (d.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ coeff d f = 0
state_after: R : Type u
S : Type v
σ : Type u_1
τ : Type u_2
r : R
e : ℕ
n m : σ
s : σ →₀ ℕ
inst✝ : CommSemiring R
p q f : MvPolynomial σ R
d : σ →₀ ℕ
h : coeff d f ≠ 0 → (d.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ ¬(d.sum fun x e => e) < ∑ i ∈ d.support, d i

tactic: exact lt_irrefl _
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 f : MvPolynomial σ R
d : σ →₀ ℕ
h : coeff d f ≠ 0 → (d.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ ¬(d.sum fun x e => e) < ∑ i ∈ d.support, d i
state_after: no goals

tactic: exact lt_of_le_of_lt (Nat.zero_le _) h
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 f : MvPolynomial σ R
d : σ →₀ ℕ
h : (f.support.sup fun s => s.sum fun x e => e) < ∑ i ∈ d.support, d i
⊢ ⊥ < ∑ i ∈ d.support, d i
state_after: no goals
Theorem: Filter.HasBasis.restrict
File: Mathlib/Order/Filter/Bases.lean

tactic: refine ⟨fun t => ⟨fun ht => ?_, fun ⟨i, hpi, hti⟩ => h.mem_iff.2 ⟨i, hpi.1, hti⟩⟩⟩
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
l l' : Filter α
p : ι → Prop
s : ι → Set α
t : Set α
i : ι
p' : ι' → Prop
s' : ι' → Set α
i' : ι'
h : l.HasBasis p s
q : ι → Prop
hq : ∀ (i : ι), p i → ∃ j, p j ∧ q j ∧ s j ⊆ s i
⊢ l.HasBasis (fun i => p i ∧ q i) s
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
l l' : Filter α
p : ι → Prop
s : ι → Set α
t✝ : Set α
i : ι
p' : ι' → Prop
s' : ι' → Set α
i' : ι'
h : l.HasBasis p s
q : ι → Prop
hq : ∀ (i : ι), p i → ∃ j, p j ∧ q j ∧ s j ⊆ s i
t : Set α
ht : t ∈ l
⊢ ∃ i, (p i ∧ q i) ∧ s i ⊆ t

tactic: rcases h.mem_iff.1 ht with ⟨i, hpi, hti⟩
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
l l' : Filter α
p : ι → Prop
s : ι → Set α
t✝ : Set α
i : ι
p' : ι' → Prop
s' : ι' → Set α
i' : ι'
h : l.HasBasis p s
q : ι → Prop
hq : ∀ (i : ι), p i → ∃ j, p j ∧ q j ∧ s j ⊆ s i
t : Set α
ht : t ∈ l
⊢ ∃ i, (p i ∧ q i) ∧ s i ⊆ t
state_after: case intro.intro
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
l l' : Filter α
p : ι → Prop
s : ι → Set α
t✝ : Set α
i✝ : ι
p' : ι' → Prop
s' : ι' → Set α
i' : ι'
h : l.HasBasis p s
q : ι → Prop
hq : ∀ (i : ι), p i → ∃ j, p j ∧ q j ∧ s j ⊆ s i
t : Set α
ht : t ∈ l
i : ι
hpi : p i
hti : s i ⊆ t
⊢ ∃ i, (p i ∧ q i) ∧ s i ⊆ t

tactic: rcases hq i hpi with ⟨j, hpj, hqj, hji⟩
state_before: case intro.intro
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
l l' : Filter α
p : ι → Prop
s : ι → Set α
t✝ : Set α
i✝ : ι
p' : ι' → Prop
s' : ι' → Set α
i' : ι'
h : l.HasBasis p s
q : ι → Prop
hq : ∀ (i : ι), p i → ∃ j, p j ∧ q j ∧ s j ⊆ s i
t : Set α
ht : t ∈ l
i : ι
hpi : p i
hti : s i ⊆ t
⊢ ∃ i, (p i ∧ q i) ∧ s i ⊆ t
state_after: case intro.intro.intro.intro.intro
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
l l' : Filter α
p : ι → Prop
s : ι → Set α
t✝ : Set α
i✝ : ι
p' : ι' → Prop
s' : ι' → Set α
i' : ι'
h : l.HasBasis p s
q : ι → Prop
hq : ∀ (i : ι), p i → ∃ j, p j ∧ q j ∧ s j ⊆ s i
t : Set α
ht : t ∈ l
i : ι
hpi : p i
hti : s i ⊆ t
j : ι
hpj : p j
hqj : q j
hji : s j ⊆ s i
⊢ ∃ i, (p i ∧ q i) ∧ s i ⊆ t

tactic: exact ⟨j, ⟨hpj, hqj⟩, hji.trans hti⟩
state_before: case intro.intro.intro.intro.intro
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
l l' : Filter α
p : ι → Prop
s : ι → Set α
t✝ : Set α
i✝ : ι
p' : ι' → Prop
s' : ι' → Set α
i' : ι'
h : l.HasBasis p s
q : ι → Prop
hq : ∀ (i : ι), p i → ∃ j, p j ∧ q j ∧ s j ⊆ s i
t : Set α
ht : t ∈ l
i : ι
hpi : p i
hti : s i ⊆ t
j : ι
hpj : p j
hqj : q j
hji : s j ⊆ s i
⊢ ∃ i, (p i ∧ q i) ∧ s i ⊆ t
state_after: no goals
Theorem: div_ball_one
File: Mathlib/Analysis/Normed/Group/Pointwise.lean

tactic: simp [div_eq_mul_inv, mul_ball_one]
state_before: E : Type u_1
inst✝ : SeminormedCommGroup E
ε δ : ℝ
s t : Set E
x y : E
⊢ s / ball 1 δ = thickening δ s
state_after: no goals
Theorem: Interval.coe_dual
File: Mathlib/Order/Interval/Basic.lean

tactic: cases s with
| bot => rfl
| coe s₀ => exact NonemptyInterval.coe_dual s₀
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
ι : Sort u_5
κ : ι → Sort u_6
inst✝¹ : PartialOrder α
inst✝ : PartialOrder β
s✝ t : Interval α
a b : α
s : Interval α
⊢ ↑(dual s) = ⇑ofDual ⁻¹' ↑s
state_after: no goals

tactic: rfl
state_before: case bot
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
ι : Sort u_5
κ : ι → Sort u_6
inst✝¹ : PartialOrder α
inst✝ : PartialOrder β
s t : Interval α
a b : α
⊢ ↑(dual ⊥) = ⇑ofDual ⁻¹' ↑⊥
state_after: no goals

tactic: exact NonemptyInterval.coe_dual s₀
state_before: case coe
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
ι : Sort u_5
κ : ι → Sort u_6
inst✝¹ : PartialOrder α
inst✝ : PartialOrder β
s t : Interval α
a b : α
s₀ : NonemptyInterval α
⊢ ↑(dual ↑s₀) = ⇑ofDual ⁻¹' ↑↑s₀
state_after: no goals
Theorem: preNormEDS_zero
File: Mathlib/NumberTheory/EllipticDivisibilitySequence.lean

tactic: erw [preNormEDS_ofNat, preNormEDS'_zero]
state_before: R : Type u
S : Type v
inst✝¹ : CommRing R
inst✝ : CommRing S
W : ℤ → R
f : R →+* S
b c d : R
⊢ preNormEDS b c d 0 = 0
state_after: no goals
Theorem: Subring.coe_sSup_of_directedOn
File: Mathlib/Algebra/Ring/Subring/Basic.lean

tactic: simp [mem_sSup_of_directedOn Sne hS]
state_before: R : Type u
S✝ : Type v
T : Type w
inst✝² : Ring R
inst✝¹ : Ring S✝
inst✝ : Ring T
S : Set (Subring R)
Sne : S.Nonempty
hS : DirectedOn (fun x x_1 => x ≤ x_1) S
x : R
⊢ x ∈ ↑(sSup S) ↔ x ∈ ⋃ s ∈ S, ↑s
state_after: no goals
Theorem: Batteries.RBNode.Ordered.upperBound?_least
File: .lake/packages/batteries/Batteries/Data/RBMap/Lemmas.lean

tactic: nofun
state_before: α : Type u_1
cmp : α → α → Ordering
cut : α → Ordering
t : RBNode α
x y : α
inst✝¹ : TransCmp cmp
inst✝ : IsCut cmp cut
ht : Ordered cmp t
H : upperBound? cut t = some x
hy : y ∈ t
xy : cmp y x = Ordering.lt
hx : cut x = Ordering.lt
⊢ ∀ {x : α}, none = some x → All (fun x_1 => cmpLT cmp x_1 x) t
state_after: no goals
Theorem: TrivSqZeroExt.nhds_def
File: Mathlib/Topology/Instances/TrivSqZeroExt.lean

tactic: cases x using Prod.rec
state_before: α : Type u_1
S : Type u_2
R : Type u_3
M : Type u_4
inst✝¹ : TopologicalSpace R
inst✝ : TopologicalSpace M
x : tsze R M
⊢ 𝓝 x = (𝓝 x.fst).prod (𝓝 x.snd)
state_after: case mk
α : Type u_1
S : Type u_2
R : Type u_3
M : Type u_4
inst✝¹ : TopologicalSpace R
inst✝ : TopologicalSpace M
fst✝ : R
snd✝ : M
⊢ 𝓝 (fst✝, snd✝) = (𝓝 (fst (fst✝, snd✝))).prod (𝓝 (snd (fst✝, snd✝)))

tactic: exact nhds_prod_eq
state_before: case mk
α : Type u_1
S : Type u_2
R : Type u_3
M : Type u_4
inst✝¹ : TopologicalSpace R
inst✝ : TopologicalSpace M
fst✝ : R
snd✝ : M
⊢ 𝓝 (fst✝, snd✝) = (𝓝 (fst (fst✝, snd✝))).prod (𝓝 (snd (fst✝, snd✝)))
state_after: no goals
Theorem: MeasureTheory.Measure.setIntegral_compProd
File: Mathlib/Probability/Kernel/MeasureCompProd.lean

tactic: rw [compProd, ProbabilityTheory.setIntegral_compProd hs ht hf]
state_before: α : Type u_1
β : Type u_2
mα : MeasurableSpace α
mβ : MeasurableSpace β
μ : Measure α
κ η : ↥(kernel α β)
inst✝³ : SFinite μ
inst✝² : IsSFiniteKernel κ
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
s : Set α
hs : MeasurableSet s
t : Set β
ht : MeasurableSet t
f : α × β → E
hf : IntegrableOn f (s ×ˢ t) (μ ⊗ₘ κ)
⊢ ∫ (x : α × β) in s ×ˢ t, f x ∂μ ⊗ₘ κ = ∫ (a : α) in s, ∫ (b : β) in t, f (a, b) ∂κ a ∂μ
state_after: α : Type u_1
β : Type u_2
mα : MeasurableSpace α
mβ : MeasurableSpace β
μ : Measure α
κ η : ↥(kernel α β)
inst✝³ : SFinite μ
inst✝² : IsSFiniteKernel κ
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
s : Set α
hs : MeasurableSet s
t : Set β
ht : MeasurableSet t
f : α × β → E
hf : IntegrableOn f (s ×ˢ t) (μ ⊗ₘ κ)
⊢ ∫ (x : α) in s, ∫ (y : β) in t, f (x, y) ∂(kernel.prodMkLeft Unit κ) ((), x) ∂(kernel.const Unit μ) () =
    ∫ (a : α) in s, ∫ (b : β) in t, f (a, b) ∂κ a ∂μ

tactic: simp
state_before: α : Type u_1
β : Type u_2
mα : MeasurableSpace α
mβ : MeasurableSpace β
μ : Measure α
κ η : ↥(kernel α β)
inst✝³ : SFinite μ
inst✝² : IsSFiniteKernel κ
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
s : Set α
hs : MeasurableSet s
t : Set β
ht : MeasurableSet t
f : α × β → E
hf : IntegrableOn f (s ×ˢ t) (μ ⊗ₘ κ)
⊢ ∫ (x : α) in s, ∫ (y : β) in t, f (x, y) ∂(kernel.prodMkLeft Unit κ) ((), x) ∂(kernel.const Unit μ) () =
    ∫ (a : α) in s, ∫ (b : β) in t, f (a, b) ∂κ a ∂μ
state_after: no goals
Theorem: MeasurableSpace.DynkinSystem.has_diff
File: Mathlib/MeasureTheory/PiSystem.lean

tactic: apply d.has_compl_iff.1
state_before: α : Type u_1
d : DynkinSystem α
s₁ s₂ : Set α
h₁ : d.Has s₁
h₂ : d.Has s₂
h : s₂ ⊆ s₁
⊢ d.Has (s₁ \ s₂)
state_after: α : Type u_1
d : DynkinSystem α
s₁ s₂ : Set α
h₁ : d.Has s₁
h₂ : d.Has s₂
h : s₂ ⊆ s₁
⊢ d.Has (s₁ \ s₂)ᶜ

tactic: simp only [diff_eq, compl_inter, compl_compl]
state_before: α : Type u_1
d : DynkinSystem α
s₁ s₂ : Set α
h₁ : d.Has s₁
h₂ : d.Has s₂
h : s₂ ⊆ s₁
⊢ d.Has (s₁ \ s₂)ᶜ
state_after: α : Type u_1
d : DynkinSystem α
s₁ s₂ : Set α
h₁ : d.Has s₁
h₂ : d.Has s₂
h : s₂ ⊆ s₁
⊢ d.Has (s₁ᶜ ∪ s₂)

tactic: exact d.has_union (d.has_compl h₁) h₂ (disjoint_compl_left.mono_right h)
state_before: α : Type u_1
d : DynkinSystem α
s₁ s₂ : Set α
h₁ : d.Has s₁
h₂ : d.Has s₂
h : s₂ ⊆ s₁
⊢ d.Has (s₁ᶜ ∪ s₂)
state_after: no goals