ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- MulAction.minimalPeriod_eq_card
@[to_additive]
theorem minimalPeriod_eq_card [Fintype (orbit (zpowers a) b)] :
    minimalPeriod (a • ·) b = Fintype.card (orbit (zpowers a) b) 
Arguments: {α : Type u_3} {β : Type u_4} [Group α] (a : α) [MulAction α β] (b : β) [Fintype ↑(MulAction.orbit (↥(Subgroup.zpowers a)) b)]
Goal: Function.minimalPeriod (fun x => a • x) b = Fintype.card ↑(MulAction.orbit (↥(Subgroup.zpowers a)) b)
-- Nat.card_zpowers
@[to_additive (attr := simp) "See also `Fintype.card_zmultiples`."]
theorem Nat.card_zpowers : Nat.card (zpowers a) = orderOf a 
Arguments: {α : Type u_3} [Group α] (a : α)
Goal: Nat.card ↥(Subgroup.zpowers a) = orderOf a
-- Nat.card_zmultiples
@[to_additive (attr := simp) "See also `Fintype.card_zmultiples`."]
theorem Nat.card_zpowers : Nat.card (zpowers a) = orderOf a 
Arguments: {α : Type u_3} [AddGroup α] (a : α)
Goal: Nat.card ↥(AddSubgroup.zmultiples a) = addOrderOf a
-- finite_zmultiples
@[to_additive (attr := simp)]
lemma finite_zpowers : (zpowers a : Set α).Finite ↔ IsOfFinOrder a 
Arguments: {α : Type u_3} [AddGroup α] {a : α}
Goal: (↑(AddSubgroup.zmultiples a)).Finite ↔ IsOfFinAddOrder a
-- finite_zpowers
@[to_additive (attr := simp)]
lemma finite_zpowers : (zpowers a : Set α).Finite ↔ IsOfFinOrder a 
Arguments: {α : Type u_3} [Group α] {a : α}
Goal: (↑(Subgroup.zpowers a)).Finite ↔ IsOfFinOrder a
-- infinite_zpowers
@[to_additive (attr := simp)]
lemma infinite_zpowers : (zpowers a : Set α).Infinite ↔ ¬IsOfFinOrder a 
Arguments: {α : Type u_3} [Group α] {a : α}
Goal: (↑(Subgroup.zpowers a)).Infinite ↔ ¬IsOfFinOrder a
-- infinite_zmultiples
@[to_additive (attr := simp)]
lemma infinite_zpowers : (zpowers a : Set α).Infinite ↔ ¬IsOfFinOrder a 
Arguments: {α : Type u_3} [AddGroup α] {a : α}
Goal: (↑(AddSubgroup.zmultiples a)).Infinite ↔ ¬IsOfFinAddOrder a
-- Set.IsPWO.mul
@[to_additive]
theorem IsPWO.mul [OrderedCancelCommMonoid α] (hs : s.IsPWO) (ht : t.IsPWO) : IsPWO (s * t) 
Arguments: {α : Type u_1} {s t : Set α} [OrderedCancelCommMonoid α] (hs : s.IsPWO) (ht : t.IsPWO)
Goal: (s * t).IsPWO
-- Set.IsPWO.add
@[to_additive]
theorem IsPWO.mul [OrderedCancelCommMonoid α] (hs : s.IsPWO) (ht : t.IsPWO) : IsPWO (s * t) 
Arguments: {α : Type u_1} {s t : Set α} [OrderedCancelAddCommMonoid α] (hs : s.IsPWO) (ht : t.IsPWO)
Goal: (s + t).IsPWO
-- Set.IsWF.mul
@[to_additive]
theorem IsWF.mul (hs : s.IsWF) (ht : t.IsWF) : IsWF (s * t) 
Arguments: {α : Type u_1} {s t : Set α} [LinearOrderedCancelCommMonoid α] (hs : s.IsWF) (ht : t.IsWF)
Goal: (s * t).IsWF
-- Set.IsWF.add
@[to_additive]
theorem IsWF.mul (hs : s.IsWF) (ht : t.IsWF) : IsWF (s * t) 
Arguments: {α : Type u_1} {s t : Set α} [LinearOrderedCancelAddCommMonoid α] (hs : s.IsWF) (ht : t.IsWF)
Goal: (s + t).IsWF
-- Set.IsWF.min_add
@[to_additive]
theorem IsWF.min_mul (hs : s.IsWF) (ht : t.IsWF) (hsn : s.Nonempty) (htn : t.Nonempty) :
    (hs.mul ht).min (hsn.mul htn) = hs.min hsn * ht.min htn 
Arguments: {α : Type u_1} {s t : Set α} [LinearOrderedCancelAddCommMonoid α] (hs : s.IsWF) (ht : t.IsWF) (hsn : s.Nonempty) (htn : t.Nonempty)
Goal: ⋯.min ⋯ = hs.min hsn + ht.min htn
-- Set.IsWF.min_mul
@[to_additive]
theorem IsWF.min_mul (hs : s.IsWF) (ht : t.IsWF) (hsn : s.Nonempty) (htn : t.Nonempty) :
    (hs.mul ht).min (hsn.mul htn) = hs.min hsn * ht.min htn 
Arguments: {α : Type u_1} {s t : Set α} [LinearOrderedCancelCommMonoid α] (hs : s.IsWF) (ht : t.IsWF) (hsn : s.Nonempty) (htn : t.Nonempty)
Goal: ⋯.min ⋯ = hs.min hsn * ht.min htn
-- Finset.mem_mulAntidiagonal
@[to_additive (attr := simp)]
theorem mem_mulAntidiagonal : x ∈ mulAntidiagonal hs ht a ↔ x.1 ∈ s ∧ x.2 ∈ t ∧ x.1 * x.2 = a 
Arguments: {α : Type u_1} [OrderedCancelCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO} {a : α} {x : α × α}
Goal: x ∈ Finset.mulAntidiagonal hs ht a ↔ x.1 ∈ s ∧ x.2 ∈ t ∧ x.1 * x.2 = a
-- Finset.mem_addAntidiagonal
@[to_additive (attr := simp)]
theorem mem_mulAntidiagonal : x ∈ mulAntidiagonal hs ht a ↔ x.1 ∈ s ∧ x.2 ∈ t ∧ x.1 * x.2 = a 
Arguments: {α : Type u_1} [OrderedCancelAddCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO} {a : α} {x : α × α}
Goal: x ∈ Finset.addAntidiagonal hs ht a ↔ x.1 ∈ s ∧ x.2 ∈ t ∧ x.1 + x.2 = a
-- Finset.mulAntidiagonal_mono_left
@[to_additive]
theorem mulAntidiagonal_mono_left (h : u ⊆ s) : mulAntidiagonal hu ht a ⊆ mulAntidiagonal hs ht a 
Arguments: {α : Type u_1} [OrderedCancelCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO} {a : α} {u : Set α} {hu : u.IsPWO} (h : u ⊆ s)
Goal: Finset.mulAntidiagonal hu ht a ⊆ Finset.mulAntidiagonal hs ht a
-- Finset.addAntidiagonal_mono_left
@[to_additive]
theorem mulAntidiagonal_mono_left (h : u ⊆ s) : mulAntidiagonal hu ht a ⊆ mulAntidiagonal hs ht a 
Arguments: {α : Type u_1} [OrderedCancelAddCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO} {a : α} {u : Set α} {hu : u.IsPWO} (h : u ⊆ s)
Goal: Finset.addAntidiagonal hu ht a ⊆ Finset.addAntidiagonal hs ht a
-- Finset.addAntidiagonal_mono_right
@[to_additive]
theorem mulAntidiagonal_mono_right (h : u ⊆ t) :
    mulAntidiagonal hs hu a ⊆ mulAntidiagonal hs ht a 
Arguments: {α : Type u_1} [OrderedCancelAddCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO} {a : α} {u : Set α} {hu : u.IsPWO} (h : u ⊆ t)
Goal: Finset.addAntidiagonal hs hu a ⊆ Finset.addAntidiagonal hs ht a
-- Finset.mulAntidiagonal_mono_right
@[to_additive]
theorem mulAntidiagonal_mono_right (h : u ⊆ t) :
    mulAntidiagonal hs hu a ⊆ mulAntidiagonal hs ht a 
Arguments: {α : Type u_1} [OrderedCancelCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO} {a : α} {u : Set α} {hu : u.IsPWO} (h : u ⊆ t)
Goal: Finset.mulAntidiagonal hs hu a ⊆ Finset.mulAntidiagonal hs ht a
-- Finset.swap_mem_addAntidiagonal
@[to_additive]
theorem swap_mem_mulAntidiagonal :
    x.swap ∈ Finset.mulAntidiagonal hs ht a ↔ x ∈ Finset.mulAntidiagonal ht hs a 
Arguments: {α : Type u_1} [OrderedCancelAddCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO} {a : α} {x : α × α}
Goal: x.swap ∈ Finset.addAntidiagonal hs ht a ↔ x ∈ Finset.addAntidiagonal ht hs a
-- Finset.swap_mem_mulAntidiagonal
@[to_additive]
theorem swap_mem_mulAntidiagonal :
    x.swap ∈ Finset.mulAntidiagonal hs ht a ↔ x ∈ Finset.mulAntidiagonal ht hs a 
Arguments: {α : Type u_1} [OrderedCancelCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO} {a : α} {x : α × α}
Goal: x.swap ∈ Finset.mulAntidiagonal hs ht a ↔ x ∈ Finset.mulAntidiagonal ht hs a
-- Finset.support_mulAntidiagonal_subset_mul
@[to_additive]
theorem support_mulAntidiagonal_subset_mul : { a | (mulAntidiagonal hs ht a).Nonempty } ⊆ s * t 
Arguments: {α : Type u_1} [OrderedCancelCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO}
Goal: {a | (Finset.mulAntidiagonal hs ht a).Nonempty} ⊆ s * t
-- Finset.support_addAntidiagonal_subset_add
@[to_additive]
theorem support_mulAntidiagonal_subset_mul : { a | (mulAntidiagonal hs ht a).Nonempty } ⊆ s * t 
Arguments: {α : Type u_1} [OrderedCancelAddCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO}
Goal: {a | (Finset.addAntidiagonal hs ht a).Nonempty} ⊆ s + t
-- Finset.isPWO_support_addAntidiagonal
@[to_additive]
theorem isPWO_support_mulAntidiagonal : { a | (mulAntidiagonal hs ht a).Nonempty }.IsPWO 
Arguments: {α : Type u_1} [OrderedCancelAddCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO}
Goal: {a | (Finset.addAntidiagonal hs ht a).Nonempty}.IsPWO
-- Finset.isPWO_support_mulAntidiagonal
@[to_additive]
theorem isPWO_support_mulAntidiagonal : { a | (mulAntidiagonal hs ht a).Nonempty }.IsPWO 
Arguments: {α : Type u_1} [OrderedCancelCommMonoid α] {s t : Set α} {hs : s.IsPWO} {ht : t.IsPWO}
Goal: {a | (Finset.mulAntidiagonal hs ht a).Nonempty}.IsPWO
-- Finset.mulAntidiagonal_min_mul_min
@[to_additive]
theorem mulAntidiagonal_min_mul_min {α} [LinearOrderedCancelCommMonoid α] {s t : Set α}
    (hs : s.IsWF) (ht : t.IsWF) (hns : s.Nonempty) (hnt : t.Nonempty) :
    mulAntidiagonal hs.isPWO ht.isPWO (hs.min hns * ht.min hnt) = {(hs.min hns, ht.min hnt)} 
Arguments: {α : Type u_2} [LinearOrderedCancelCommMonoid α] {s t : Set α} (hs : s.IsWF) (ht : t.IsWF) (hns : s.Nonempty) (hnt : t.Nonempty)
Goal: Finset.mulAntidiagonal ⋯ ⋯ (hs.min hns * ht.min hnt) = {(hs.min hns, ht.min hnt)}
-- Finset.addAntidiagonal_min_add_min
@[to_additive]
theorem mulAntidiagonal_min_mul_min {α} [LinearOrderedCancelCommMonoid α] {s t : Set α}
    (hs : s.IsWF) (ht : t.IsWF) (hns : s.Nonempty) (hnt : t.Nonempty) :
    mulAntidiagonal hs.isPWO ht.isPWO (hs.min hns * ht.min hnt) = {(hs.min hns, ht.min hnt)} 
Arguments: {α : Type u_2} [LinearOrderedCancelAddCommMonoid α] {s t : Set α} (hs : s.IsWF) (ht : t.IsWF) (hns : s.Nonempty) (hnt : t.Nonempty)
Goal: Finset.addAntidiagonal ⋯ ⋯ (hs.min hns + ht.min hnt) = {(hs.min hns, ht.min hnt)}
-- Finset.piecewise_insert_self
lemma piecewise_insert_self [DecidableEq ι] {j : ι} [∀ i, Decidable (i ∈ insert j s)] :
    (insert j s).piecewise f g j = f j 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [DecidableEq ι] {j : ι} [(i : ι) → Decidable (i ∈ insert j s)]
Goal: (insert j s).piecewise f g j = f j
-- Finset.piecewise_empty
@[simp]
lemma piecewise_empty [∀ i : ι, Decidable (i ∈ (∅ : Finset ι))] : piecewise ∅ f g = g 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (f g : (i : ι) → π i) [(i : ι) → Decidable (i ∈ ∅)]
Goal: ∅.piecewise f g = g
-- Finset.piecewise_coe
@[norm_cast move]
lemma piecewise_coe [∀ j, Decidable (j ∈ (s : Set ι))] :
    (s : Set ι).piecewise f g = s.piecewise f g 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] [(j : ι) → Decidable (j ∈ ↑s)]
Goal: (↑s).piecewise f g = s.piecewise f g
-- Finset.piecewise_eq_of_mem
@[simp]
lemma piecewise_eq_of_mem {i : ι} (hi : i ∈ s) : s.piecewise f g i = f i 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] {i : ι} (hi : i ∈ s)
Goal: s.piecewise f g i = f i
-- Finset.piecewise_eq_of_not_mem
@[simp]
lemma piecewise_eq_of_not_mem {i : ι} (hi : i ∉ s) : s.piecewise f g i = g i 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] {i : ι} (hi : i ∉ s)
Goal: s.piecewise f g i = g i
-- Finset.piecewise_congr
lemma piecewise_congr {f f' g g' : ∀ i, π i} (hf : ∀ i ∈ s, f i = f' i)
    (hg : ∀ i ∉ s, g i = g' i) : s.piecewise f g = s.piecewise f' g' 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {f f' g g' : (i : ι) → π i} (hf : ∀ i ∈ s, f i = f' i) (hg : ∀ i ∉ s, g i = g' i)
Goal: s.piecewise f g = s.piecewise f' g'
-- Finset.piecewise_insert_of_ne
@[simp]
lemma piecewise_insert_of_ne [DecidableEq ι] {i j : ι} [∀ i, Decidable (i ∈ insert j s)]
    (h : i ≠ j) : (insert j s).piecewise f g i = s.piecewise f g i 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] [DecidableEq ι] {i j : ι} [(i : ι) → Decidable (i ∈ insert j s)] (h : i ≠ j)
Goal: (insert j s).piecewise f g i = s.piecewise f g i
-- Finset.piecewise_insert
lemma piecewise_insert [DecidableEq ι] (j : ι) [∀ i, Decidable (i ∈ insert j s)] :
    (insert j s).piecewise f g = update (s.piecewise f g) j (f j) 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] [DecidableEq ι] (j : ι) [(i : ι) → Decidable (i ∈ insert j s)]
Goal: (insert j s).piecewise f g = Function.update (s.piecewise f g) j (f j)
-- Finset.piecewise_cases
lemma piecewise_cases {i} (p : π i → Prop) (hf : p (f i)) (hg : p (g i)) :
    p (s.piecewise f g i) 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] {i : ι} (p : π i → Prop) (hf : p (f i)) (hg : p (g i))
Goal: p (s.piecewise f g i)
-- Finset.piecewise_singleton
lemma piecewise_singleton [DecidableEq ι] (i : ι) : piecewise {i} f g = update g i (f i) 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (f g : (i : ι) → π i) [DecidableEq ι] (i : ι)
Goal: {i}.piecewise f g = Function.update g i (f i)
-- Finset.piecewise_piecewise_of_subset_left
lemma piecewise_piecewise_of_subset_left {s t : Finset ι} [∀ i, Decidable (i ∈ s)]
    [∀ i, Decidable (i ∈ t)] (h : s ⊆ t) (f₁ f₂ g : ∀ a, π a) :
    s.piecewise (t.piecewise f₁ f₂) g = s.piecewise f₁ g 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} {s t : Finset ι} [(i : ι) → Decidable (i ∈ s)] [(i : ι) → Decidable (i ∈ t)] (h : s ⊆ t) (f₁ f₂ g : (a : ι) → π a)
Goal: s.piecewise (t.piecewise f₁ f₂) g = s.piecewise f₁ g
-- Finset.piecewise_idem_left
@[simp]
lemma piecewise_idem_left (f₁ f₂ g : ∀ a, π a) :
    s.piecewise (s.piecewise f₁ f₂) g = s.piecewise f₁ g 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] (f₁ f₂ g : (a : ι) → π a)
Goal: s.piecewise (s.piecewise f₁ f₂) g = s.piecewise f₁ g
-- Finset.piecewise_piecewise_of_subset_right
lemma piecewise_piecewise_of_subset_right {s t : Finset ι} [∀ i, Decidable (i ∈ s)]
    [∀ i, Decidable (i ∈ t)] (h : t ⊆ s) (f g₁ g₂ : ∀ a, π a) :
    s.piecewise f (t.piecewise g₁ g₂) = s.piecewise f g₂ 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} {s t : Finset ι} [(i : ι) → Decidable (i ∈ s)] [(i : ι) → Decidable (i ∈ t)] (h : t ⊆ s) (f g₁ g₂ : (a : ι) → π a)
Goal: s.piecewise f (t.piecewise g₁ g₂) = s.piecewise f g₂
-- Finset.piecewise_idem_right
@[simp]
lemma piecewise_idem_right (f g₁ g₂ : ∀ a, π a) :
    s.piecewise f (s.piecewise g₁ g₂) = s.piecewise f g₂ 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] (f g₁ g₂ : (a : ι) → π a)
Goal: s.piecewise f (s.piecewise g₁ g₂) = s.piecewise f g₂
-- Finset.update_eq_piecewise
lemma update_eq_piecewise {β : Type*} [DecidableEq ι] (f : ι → β) (i : ι) (v : β) :
    update f i v = piecewise (singleton i) (fun _ => v) f 
Arguments: {ι : Type u_1} {β : Type u_3} [DecidableEq ι] (f : ι → β) (i : ι) (v : β)
Goal: Function.update f i v = {i}.piecewise (fun x => v) f
-- Finset.update_piecewise
lemma update_piecewise [DecidableEq ι] (i : ι) (v : π i) :
    update (s.piecewise f g) i v = s.piecewise (update f i v) (update g i v) 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] [DecidableEq ι] (i : ι) (v : π i)
Goal: Function.update (s.piecewise f g) i v = s.piecewise (Function.update f i v) (Function.update g i v)
-- Finset.update_piecewise_of_mem
lemma update_piecewise_of_mem [DecidableEq ι] {i : ι} (hi : i ∈ s) (v : π i) :
    update (s.piecewise f g) i v = s.piecewise (update f i v) g 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] [DecidableEq ι] {i : ι} (hi : i ∈ s) (v : π i)
Goal: Function.update (s.piecewise f g) i v = s.piecewise (Function.update f i v) g
-- Finset.update_piecewise_of_not_mem
lemma update_piecewise_of_not_mem [DecidableEq ι] {i : ι} (hi : i ∉ s) (v : π i) :
    update (s.piecewise f g) i v = s.piecewise f (update g i v) 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f g : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)] [DecidableEq ι] {i : ι} (hi : i ∉ s) (v : π i)
Goal: Function.update (s.piecewise f g) i v = s.piecewise f (Function.update g i v)
-- Finset.piecewise_same
lemma piecewise_same : s.piecewise f f = f 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} (s : Finset ι) (f : (i : ι) → π i) [(j : ι) → Decidable (j ∈ s)]
Goal: s.piecewise f f = f
-- Finset.piecewise_univ
@[simp]
lemma piecewise_univ [∀ i, Decidable (i ∈ (univ : Finset ι))] (f g : ∀ i, π i) :
    univ.piecewise f g = f 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} [Fintype ι] [(i : ι) → Decidable (i ∈ Finset.univ)] (f g : (i : ι) → π i)
Goal: Finset.univ.piecewise f g = f
-- Finset.piecewise_compl
lemma piecewise_compl [DecidableEq ι] (s : Finset ι) [∀ i, Decidable (i ∈ s)]
    [∀ i, Decidable (i ∈ sᶜ)] (f g : ∀ i, π i) :
    sᶜ.piecewise f g = s.piecewise g f 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} [Fintype ι] [DecidableEq ι] (s : Finset ι) [(i : ι) → Decidable (i ∈ s)] [(i : ι) → Decidable (i ∈ sᶜ)] (f g : (i : ι) → π i)
Goal: sᶜ.piecewise f g = s.piecewise g f
-- Finset.piecewise_erase_univ
@[simp]
lemma piecewise_erase_univ [DecidableEq ι] (i : ι) (f g : ∀ i, π i) :
    (Finset.univ.erase i).piecewise f g = Function.update f i (g i) 
Arguments: {ι : Type u_1} {π : ι → Sort u_2} [Fintype ι] [DecidableEq ι] (i : ι) (f g : (i : ι) → π i)
Goal: (Finset.univ.erase i).piecewise f g = Function.update f i (g i)
-- Finset.piecewise_mem_set_pi
lemma piecewise_mem_set_pi (hf : f ∈ Set.pi t t') (hg : g ∈ Set.pi t t') :
    s.piecewise f g ∈ Set.pi t t' 
Arguments: {ι : Type u_1} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {π : ι → Type u_3} {t : Set ι} {t' : (i : ι) → Set (π i)} {f g : (i : ι) → π i} (hf : f ∈ t.pi t') (hg : g ∈ t.pi t')
Goal: s.piecewise f g ∈ t.pi t'
-- Finset.piecewise_le_of_le_of_le
lemma piecewise_le_of_le_of_le (hf : f ≤ h) (hg : g ≤ h) : s.piecewise f g ≤ h 
Arguments: {ι : Type u_1} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {π : ι → Type u_3} {f g h : (i : ι) → π i} [(i : ι) → Preorder (π i)] (hf : f ≤ h) (hg : g ≤ h)
Goal: s.piecewise f g ≤ h
-- Finset.le_piecewise_of_le_of_le
lemma le_piecewise_of_le_of_le (hf : h ≤ f) (hg : h ≤ g) : h ≤ s.piecewise f g 
Arguments: {ι : Type u_1} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {π : ι → Type u_3} {f g h : (i : ι) → π i} [(i : ι) → Preorder (π i)] (hf : h ≤ f) (hg : h ≤ g)
Goal: h ≤ s.piecewise f g
-- Finset.piecewise_le_piecewise'
lemma piecewise_le_piecewise' (hf : ∀ x ∈ s, f x ≤ f' x) (hg : ∀ x ∉ s, g x ≤ g' x) :
    s.piecewise f g ≤ s.piecewise f' g' 
Arguments: {ι : Type u_1} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {π : ι → Type u_3} {f g f' g' : (i : ι) → π i} [(i : ι) → Preorder (π i)] (hf : ∀ x ∈ s, f x ≤ f' x) (hg : ∀ x ∉ s, g x ≤ g' x)
Goal: s.piecewise f g ≤ s.piecewise f' g'
-- Finset.piecewise_le_piecewise
lemma piecewise_le_piecewise (hf : f ≤ f') (hg : g ≤ g') : s.piecewise f g ≤ s.piecewise f' g' 
Arguments: {ι : Type u_1} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {π : ι → Type u_3} {f g f' g' : (i : ι) → π i} [(i : ι) → Preorder (π i)] (hf : f ≤ f') (hg : g ≤ g')
Goal: s.piecewise f g ≤ s.piecewise f' g'
-- Finset.piecewise_mem_Icc_of_mem_of_mem
lemma piecewise_mem_Icc_of_mem_of_mem (hf : f ∈ Set.Icc f' g') (hg : g ∈ Set.Icc f' g') :
    s.piecewise f g ∈ Set.Icc f' g' 
Arguments: {ι : Type u_1} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {π : ι → Type u_3} {f g f' g' : (i : ι) → π i} [(i : ι) → Preorder (π i)] (hf : f ∈ Set.Icc f' g') (hg : g ∈ Set.Icc f' g')
Goal: s.piecewise f g ∈ Set.Icc f' g'
-- Finset.piecewise_mem_Icc
lemma piecewise_mem_Icc (h : f ≤ g) : s.piecewise f g ∈ Set.Icc f g 
Arguments: {ι : Type u_1} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {π : ι → Type u_3} {f g : (i : ι) → π i} [(i : ι) → Preorder (π i)] (h : f ≤ g)
Goal: s.piecewise f g ∈ Set.Icc f g
-- Finset.piecewise_mem_Icc'
lemma piecewise_mem_Icc' (h : g ≤ f) : s.piecewise f g ∈ Set.Icc g f 
Arguments: {ι : Type u_1} (s : Finset ι) [(j : ι) → Decidable (j ∈ s)] {π : ι → Type u_3} {f g : (i : ι) → π i} [(i : ι) → Preorder (π i)] (h : g ≤ f)
Goal: s.piecewise f g ∈ Set.Icc g f
-- Set.encard_univ_coe
@[simp] theorem encard_univ_coe (s : Set α) : encard (univ : Set s) = encard s 
Arguments: {α : Type u_1} (s : Set α)
Goal: Set.univ.encard = s.encard
-- Set.encard_univ
theorem encard_univ (α : Type*) :
    encard (univ : Set α) = PartENat.withTopEquiv (PartENat.card α) 
Arguments: (α : Type u_3)
Goal: Set.univ.encard = PartENat.withTopEquiv (PartENat.card α)
-- Set.Finite.encard_eq_coe_toFinset_card
theorem Finite.encard_eq_coe_toFinset_card (h : s.Finite) : s.encard = h.toFinset.card 
Arguments: {α : Type u_1} {s : Set α} (h : s.Finite)
Goal: s.encard = ↑h.toFinset.card
-- Set.encard_eq_coe_toFinset_card
theorem encard_eq_coe_toFinset_card (s : Set α) [Fintype s] : encard s = s.toFinset.card 
Arguments: {α : Type u_1} (s : Set α) [Fintype ↑s]
Goal: s.encard = ↑s.toFinset.card
-- Set.encard_coe_eq_coe_finsetCard
@[simp, norm_cast] theorem encard_coe_eq_coe_finsetCard (s : Finset α) :
    encard (s : Set α) = s.card 
Arguments: {α : Type u_1} (s : Finset α)
Goal: (↑s).encard = ↑s.card
-- Set.Infinite.encard_eq
theorem Infinite.encard_eq {s : Set α} (h : s.Infinite) : s.encard = ⊤ 
Arguments: {α : Type u_1} {s : Set α} (h : s.Infinite)
Goal: s.encard = ⊤
-- Set.encard_eq_zero
@[simp] theorem encard_eq_zero : s.encard = 0 ↔ s = ∅ 
Arguments: {α : Type u_1} {s : Set α}
Goal: s.encard = 0 ↔ s = ∅
-- Set.encard_empty
@[simp] theorem encard_empty : (∅ : Set α).encard = 0 
Arguments: {α : Type u_1}
Goal: ∅.encard = 0
-- Set.nonempty_of_encard_ne_zero
theorem nonempty_of_encard_ne_zero (h : s.encard ≠ 0) : s.Nonempty 
Arguments: {α : Type u_1} {s : Set α} (h : s.encard ≠ 0)
Goal: s.Nonempty
-- Set.encard_ne_zero
theorem encard_ne_zero : s.encard ≠ 0 ↔ s.Nonempty 
Arguments: {α : Type u_1} {s : Set α}
Goal: s.encard ≠ 0 ↔ s.Nonempty
-- Set.encard_pos
@[simp] theorem encard_pos : 0 < s.encard ↔ s.Nonempty 
Arguments: {α : Type u_1} {s : Set α}
Goal: 0 < s.encard ↔ s.Nonempty
-- Set.encard_singleton
@[simp] theorem encard_singleton (e : α) : ({e} : Set α).encard = 1 
Arguments: {α : Type u_1} (e : α)
Goal: {e}.encard = 1
-- Set.encard_union_eq
theorem encard_union_eq (h : Disjoint s t) : (s ∪ t).encard = s.encard + t.encard 
Arguments: {α : Type u_1} {s t : Set α} (h : Disjoint s t)
Goal: (s ∪ t).encard = s.encard + t.encard
-- Set.encard_insert_of_not_mem
theorem encard_insert_of_not_mem {a : α} (has : a ∉ s) : (insert a s).encard = s.encard + 1 
Arguments: {α : Type u_1} {s : Set α} {a : α} (has : a ∉ s)
Goal: (insert a s).encard = s.encard + 1
-- Set.Finite.encard_lt_top
theorem Finite.encard_lt_top (h : s.Finite) : s.encard < ⊤ 
Arguments: {α : Type u_1} {s : Set α} (h : s.Finite)
Goal: s.encard < ⊤
-- Set.Finite.encard_eq_coe
theorem Finite.encard_eq_coe (h : s.Finite) : s.encard = ENat.toNat s.encard 
Arguments: {α : Type u_1} {s : Set α} (h : s.Finite)
Goal: s.encard = ↑s.encard.toNat
-- Set.Finite.exists_encard_eq_coe
theorem Finite.exists_encard_eq_coe (h : s.Finite) : ∃ (n : ℕ), s.encard = n 
Arguments: {α : Type u_1} {s : Set α} (h : s.Finite)
Goal: ∃ n, s.encard = ↑n
-- Set.encard_lt_top_iff
@[simp] theorem encard_lt_top_iff : s.encard < ⊤ ↔ s.Finite 
Arguments: {α : Type u_1} {s : Set α}
Goal: s.encard < ⊤ ↔ s.Finite
-- Set.encard_eq_top_iff
@[simp] theorem encard_eq_top_iff : s.encard = ⊤ ↔ s.Infinite 
Arguments: {α : Type u_1} {s : Set α}
Goal: s.encard = ⊤ ↔ s.Infinite
-- Set.encard_ne_top_iff
theorem encard_ne_top_iff : s.encard ≠ ⊤ ↔ s.Finite 
Arguments: {α : Type u_1} {s : Set α}
Goal: s.encard ≠ ⊤ ↔ s.Finite
-- Set.finite_of_encard_le_coe
theorem finite_of_encard_le_coe {k : ℕ} (h : s.encard ≤ k) : s.Finite 
Arguments: {α : Type u_1} {s : Set α} {k : ℕ} (h : s.encard ≤ ↑k)
Goal: s.Finite
-- Set.finite_of_encard_eq_coe
theorem finite_of_encard_eq_coe {k : ℕ} (h : s.encard = k) : s.Finite 
Arguments: {α : Type u_1} {s : Set α} {k : ℕ} (h : s.encard = ↑k)
Goal: s.Finite
-- Set.encard_le_coe_iff
theorem encard_le_coe_iff {k : ℕ} : s.encard ≤ k ↔ s.Finite ∧ ∃ (n₀ : ℕ), s.encard = n₀ ∧ n₀ ≤ k 
Arguments: {α : Type u_1} {s : Set α} {k : ℕ}
Goal: s.encard ≤ ↑k ↔ s.Finite ∧ ∃ n₀, s.encard = ↑n₀ ∧ n₀ ≤ k
-- Set.encard_le_card
theorem encard_le_card (h : s ⊆ t) : s.encard ≤ t.encard 
Arguments: {α : Type u_1} {s t : Set α} (h : s ⊆ t)
Goal: s.encard ≤ t.encard
-- Set.encard_mono
theorem encard_mono {α : Type*} : Monotone (encard : Set α → ℕ∞) 
Arguments: {α : Type u_3}
Goal: Monotone Set.encard
-- Set.encard_diff_add_encard_of_subset
theorem encard_diff_add_encard_of_subset (h : s ⊆ t) : (t \ s).encard + s.encard = t.encard 
Arguments: {α : Type u_1} {s t : Set α} (h : s ⊆ t)
Goal: (t \ s).encard + s.encard = t.encard
-- Set.one_le_encard_iff_nonempty
@[simp] theorem one_le_encard_iff_nonempty : 1 ≤ s.encard ↔ s.Nonempty 
Arguments: {α : Type u_1} {s : Set α}
Goal: 1 ≤ s.encard ↔ s.Nonempty
-- Set.encard_diff_add_encard_inter
theorem encard_diff_add_encard_inter (s t : Set α) :
    (s \ t).encard + (s ∩ t).encard = s.encard 
Arguments: {α : Type u_1} (s t : Set α)
Goal: (s \ t).encard + (s ∩ t).encard = s.encard
-- Set.encard_union_add_encard_inter
theorem encard_union_add_encard_inter (s t : Set α) :
    (s ∪ t).encard + (s ∩ t).encard = s.encard + t.encard 
Arguments: {α : Type u_1} (s t : Set α)
Goal: (s ∪ t).encard + (s ∩ t).encard = s.encard + t.encard