ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Fintype.card_le_of_embedding
theorem card_le_of_embedding (f : α ↪ β) : card α ≤ card β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (f : α ↪ β)
Goal: Fintype.card α ≤ Fintype.card β
-- Fintype.card_lt_of_injective_of_not_mem
theorem card_lt_of_injective_of_not_mem (f : α → β) (h : Function.Injective f) {b : β}
    (w : b ∉ Set.range f) : card α < card β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (f : α → β) (h : Function.Injective f) {b : β} (w : b ∉ Set.range f)
Goal: Fintype.card α < Fintype.card β
-- Fintype.card_lt_of_injective_not_surjective
theorem card_lt_of_injective_not_surjective (f : α → β) (h : Function.Injective f)
    (h' : ¬Function.Surjective f) : card α < card β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (f : α → β) (h : Function.Injective f) (h' : ¬Function.Surjective f)
Goal: Fintype.card α < Fintype.card β
-- Fintype.card_le_of_surjective
theorem card_le_of_surjective (f : α → β) (h : Function.Surjective f) : card β ≤ card α 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (f : α → β) (h : Function.Surjective f)
Goal: Fintype.card β ≤ Fintype.card α
-- Fintype.card_range_le
theorem card_range_le {α β : Type*} (f : α → β) [Fintype α] [Fintype (Set.range f)] :
    Fintype.card (Set.range f) ≤ Fintype.card α 
Arguments: {α : Type u_4} {β : Type u_5} (f : α → β) [Fintype α] [Fintype ↑(Set.range f)]
Goal: Fintype.card ↑(Set.range f) ≤ Fintype.card α
-- Fintype.card_range
theorem card_range {α β F : Type*} [FunLike F α β] [EmbeddingLike F α β] (f : F) [Fintype α]
    [Fintype (Set.range f)] : Fintype.card (Set.range f) = Fintype.card α 
Arguments: {α : Type u_4} {β : Type u_5} {F : Type u_6} [FunLike F α β] [EmbeddingLike F α β] (f : F) [Fintype α] [Fintype ↑(Set.range ⇑f)]
Goal: Fintype.card ↑(Set.range ⇑f) = Fintype.card α
-- Fintype.exists_ne_map_eq_of_card_lt
theorem exists_ne_map_eq_of_card_lt (f : α → β) (h : Fintype.card β < Fintype.card α) :
    ∃ x y, x ≠ y ∧ f x = f y 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (f : α → β) (h : Fintype.card β < Fintype.card α)
Goal: ∃ x y, x ≠ y ∧ f x = f y
-- Fintype.card_eq_one_iff
theorem card_eq_one_iff : card α = 1 ↔ ∃ x : α, ∀ y, y = x 
Arguments: {α : Type u_1} [Fintype α]
Goal: Fintype.card α = 1 ↔ ∃ x, ∀ (y : α), y = x
-- Fintype.card_eq_zero_iff
theorem card_eq_zero_iff : card α = 0 ↔ IsEmpty α 
Arguments: {α : Type u_1} [Fintype α]
Goal: Fintype.card α = 0 ↔ IsEmpty α
-- Fintype.card_eq_zero
@[simp] theorem card_eq_zero [IsEmpty α] : card α = 0 
Arguments: {α : Type u_1} [Fintype α] [IsEmpty α]
Goal: Fintype.card α = 0
-- Fintype.card_eq_one_iff_nonempty_unique
theorem card_eq_one_iff_nonempty_unique : card α = 1 ↔ Nonempty (Unique α) 
Arguments: {α : Type u_1} [Fintype α]
Goal: Fintype.card α = 1 ↔ Nonempty (Unique α)
-- Fintype.card_pos_iff
theorem card_pos_iff : 0 < card α ↔ Nonempty α 
Arguments: {α : Type u_1} [Fintype α]
Goal: 0 < Fintype.card α ↔ Nonempty α
-- Fintype.card_pos
theorem card_pos [h : Nonempty α] : 0 < card α 
Arguments: {α : Type u_1} [Fintype α] [h : Nonempty α]
Goal: 0 < Fintype.card α
-- Fintype.card_ne_zero
@[simp]
theorem card_ne_zero [Nonempty α] : card α ≠ 0 
Arguments: {α : Type u_1} [Fintype α] [Nonempty α]
Goal: Fintype.card α ≠ 0
-- Fintype.card_le_one_iff
theorem card_le_one_iff : card α ≤ 1 ↔ ∀ a b : α, a = b 
Arguments: {α : Type u_1} [Fintype α]
Goal: Fintype.card α ≤ 1 ↔ ∀ (a b : α), a = b
-- Fintype.card_le_one_iff_subsingleton
theorem card_le_one_iff_subsingleton : card α ≤ 1 ↔ Subsingleton α 
Arguments: {α : Type u_1} [Fintype α]
Goal: Fintype.card α ≤ 1 ↔ Subsingleton α
-- Fintype.one_lt_card_iff_nontrivial
theorem one_lt_card_iff_nontrivial : 1 < card α ↔ Nontrivial α 
Arguments: {α : Type u_1} [Fintype α]
Goal: 1 < Fintype.card α ↔ Nontrivial α
-- Fintype.exists_ne_of_one_lt_card
theorem exists_ne_of_one_lt_card (h : 1 < card α) (a : α) : ∃ b : α, b ≠ a 
Arguments: {α : Type u_1} [Fintype α] (h : 1 < Fintype.card α) (a : α)
Goal: ∃ b, b ≠ a
-- Fintype.exists_pair_of_one_lt_card
theorem exists_pair_of_one_lt_card (h : 1 < card α) : ∃ a b : α, a ≠ b 
Arguments: {α : Type u_1} [Fintype α] (h : 1 < Fintype.card α)
Goal: ∃ a b, a ≠ b
-- Fintype.card_eq_one_of_forall_eq
theorem card_eq_one_of_forall_eq {i : α} (h : ∀ j, j = i) : card α = 1 
Arguments: {α : Type u_1} [Fintype α] {i : α} (h : ∀ (j : α), j = i)
Goal: Fintype.card α = 1
-- Fintype.exists_unique_iff_card_one
theorem exists_unique_iff_card_one {α} [Fintype α] (p : α → Prop) [DecidablePred p] :
    (∃! a : α, p a) ↔ (Finset.univ.filter p).card = 1 
Arguments: {α : Type u_4} [Fintype α] (p : α → Prop) [DecidablePred p]
Goal: (∃! a, p a) ↔ (Finset.filter p Finset.univ).card = 1
-- Fintype.one_lt_card
theorem one_lt_card [h : Nontrivial α] : 1 < Fintype.card α 
Arguments: {α : Type u_1} [Fintype α] [h : Nontrivial α]
Goal: 1 < Fintype.card α
-- Fintype.one_lt_card_iff
theorem one_lt_card_iff : 1 < card α ↔ ∃ a b : α, a ≠ b 
Arguments: {α : Type u_1} [Fintype α]
Goal: 1 < Fintype.card α ↔ ∃ a b, a ≠ b
-- Fintype.two_lt_card_iff
nonrec theorem two_lt_card_iff : 2 < card α ↔ ∃ a b c : α, a ≠ b ∧ a ≠ c ∧ b ≠ c 
Arguments: {α : Type u_1} [Fintype α]
Goal: 2 < Fintype.card α ↔ ∃ a b c, a ≠ b ∧ a ≠ c ∧ b ≠ c
-- Fintype.card_of_bijective
theorem card_of_bijective {f : α → β} (hf : Bijective f) : card α = card β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] {f : α → β} (hf : Function.Bijective f)
Goal: Fintype.card α = Fintype.card β
-- Finite.surjective_of_injective
theorem surjective_of_injective {f : α → α} (hinj : Injective f) : Surjective f 
Arguments: {α : Type u_1} [Finite α] {f : α → α} (hinj : Function.Injective f)
Goal: Function.Surjective f
-- Finite.injective_iff_surjective
theorem injective_iff_surjective {f : α → α} : Injective f ↔ Surjective f 
Arguments: {α : Type u_1} [Finite α] {f : α → α}
Goal: Function.Injective f ↔ Function.Surjective f
-- Finite.injective_iff_bijective
theorem injective_iff_bijective {f : α → α} : Injective f ↔ Bijective f 
Arguments: {α : Type u_1} [Finite α] {f : α → α}
Goal: Function.Injective f ↔ Function.Bijective f
-- Finite.surjective_iff_bijective
theorem surjective_iff_bijective {f : α → α} : Surjective f ↔ Bijective f 
Arguments: {α : Type u_1} [Finite α] {f : α → α}
Goal: Function.Surjective f ↔ Function.Bijective f
-- Finite.injective_iff_surjective_of_equiv
theorem injective_iff_surjective_of_equiv {f : α → β} (e : α ≃ β) : Injective f ↔ Surjective f 
Arguments: {α : Type u_1} {β : Type u_2} [Finite α] {f : α → β} (e : α ≃ β)
Goal: Function.Injective f ↔ Function.Surjective f
-- Fintype.bijective_iff_injective_and_card
theorem bijective_iff_injective_and_card (f : α → β) :
    Bijective f ↔ Injective f ∧ card α = card β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (f : α → β)
Goal: Function.Bijective f ↔ Function.Injective f ∧ Fintype.card α = Fintype.card β
-- Fintype.bijective_iff_surjective_and_card
theorem bijective_iff_surjective_and_card (f : α → β) :
    Bijective f ↔ Surjective f ∧ card α = card β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (f : α → β)
Goal: Function.Bijective f ↔ Function.Surjective f ∧ Fintype.card α = Fintype.card β
-- Function.LeftInverse.rightInverse_of_card_le
theorem _root_.Function.LeftInverse.rightInverse_of_card_le {f : α → β} {g : β → α}
    (hfg : LeftInverse f g) (hcard : card α ≤ card β) : RightInverse f g 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] {f : α → β} {g : β → α} (hfg : Function.LeftInverse f g) (hcard : Fintype.card α ≤ Fintype.card β)
Goal: Function.RightInverse f g
-- Function.RightInverse.leftInverse_of_card_le
theorem _root_.Function.RightInverse.leftInverse_of_card_le {f : α → β} {g : β → α}
    (hfg : RightInverse f g) (hcard : card β ≤ card α) : LeftInverse f g 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] {f : α → β} {g : β → α} (hfg : Function.RightInverse f g) (hcard : Fintype.card β ≤ Fintype.card α)
Goal: Function.LeftInverse f g
-- Equiv.ofLeftInverseOfCardLE_symm_apply
@[simps]
def ofLeftInverseOfCardLE (hβα : card β ≤ card α) (f : α → β) (g : β → α) (h : LeftInverse g f) :
    α ≃ β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (hβα : Fintype.card β ≤ Fintype.card α) (f : α → β) (g : β → α) (h : Function.LeftInverse g f)
Goal: ∀ (a : β), (Equiv.ofLeftInverseOfCardLE hβα f g h).symm a = g a
-- Equiv.ofLeftInverseOfCardLE_apply
@[simps]
def ofLeftInverseOfCardLE (hβα : card β ≤ card α) (f : α → β) (g : β → α) (h : LeftInverse g f) :
    α ≃ β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (hβα : Fintype.card β ≤ Fintype.card α) (f : α → β) (g : β → α) (h : Function.LeftInverse g f)
Goal: ∀ (a : α), (Equiv.ofLeftInverseOfCardLE hβα f g h) a = f a
-- Equiv.ofRightInverseOfCardLE_apply
@[simps]
def ofRightInverseOfCardLE (hαβ : card α ≤ card β) (f : α → β) (g : β → α) (h : RightInverse g f) :
    α ≃ β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (hαβ : Fintype.card α ≤ Fintype.card β) (f : α → β) (g : β → α) (h : Function.RightInverse g f)
Goal: ∀ (a : α), (Equiv.ofRightInverseOfCardLE hαβ f g h) a = f a
-- Equiv.ofRightInverseOfCardLE_symm_apply
@[simps]
def ofRightInverseOfCardLE (hαβ : card α ≤ card β) (f : α → β) (g : β → α) (h : RightInverse g f) :
    α ≃ β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (hαβ : Fintype.card α ≤ Fintype.card β) (f : α → β) (g : β → α) (h : Function.RightInverse g f)
Goal: ∀ (a : β), (Equiv.ofRightInverseOfCardLE hαβ f g h).symm a = g a
-- Fintype.card_coe
@[simp]
theorem Fintype.card_coe (s : Finset α) [Fintype s] : Fintype.card s = s.card 
Arguments: {α : Type u_1} (s : Finset α) [Fintype { x // x ∈ s }]
Goal: Fintype.card { x // x ∈ s } = s.card
-- Finset.card_eq_of_equiv_fin
theorem Finset.card_eq_of_equiv_fin {s : Finset α} {n : ℕ} (i : s ≃ Fin n) : s.card = n 
Arguments: {α : Type u_1} {s : Finset α} {n : ℕ} (i : { x // x ∈ s } ≃ Fin n)
Goal: s.card = n
-- Finset.card_eq_of_equiv_fintype
theorem Finset.card_eq_of_equiv_fintype {s : Finset α} [Fintype β] (i : s ≃ β) :
    s.card = Fintype.card β 
Arguments: {α : Type u_1} {β : Type u_2} {s : Finset α} [Fintype β] (i : { x // x ∈ s } ≃ β)
Goal: s.card = Fintype.card β
-- Finset.card_eq_of_equiv
theorem Finset.card_eq_of_equiv {s : Finset α} {t : Finset β} (i : s ≃ t) : s.card = t.card 
Arguments: {α : Type u_1} {β : Type u_2} {s : Finset α} {t : Finset β} (i : { x // x ∈ s } ≃ { x // x ∈ t })
Goal: s.card = t.card
-- Finset.exists_superset_card_eq
lemma Finset.exists_superset_card_eq [Fintype α] {n : ℕ} {s : Finset α} (hsn : s.card ≤ n)
    (hnα : n ≤ Fintype.card α) :
    ∃ t, s ⊆ t ∧ t.card = n 
Arguments: {α : Type u_1} [Fintype α] {n : ℕ} {s : Finset α} (hsn : s.card ≤ n) (hnα : n ≤ Fintype.card α)
Goal: ∃ t, s ⊆ t ∧ t.card = n
-- Fintype.card_prop
@[simp]
theorem Fintype.card_prop : Fintype.card Prop = 2 
Goal: Fintype.card Prop = 2
-- set_fintype_card_le_univ
theorem set_fintype_card_le_univ [Fintype α] (s : Set α) [Fintype s] :
    Fintype.card s ≤ Fintype.card α 
Arguments: {α : Type u_1} [Fintype α] (s : Set α) [Fintype ↑s]
Goal: Fintype.card ↑s ≤ Fintype.card α
-- set_fintype_card_eq_univ_iff
theorem set_fintype_card_eq_univ_iff [Fintype α] (s : Set α) [Fintype s] :
    Fintype.card s = Fintype.card α ↔ s = Set.univ 
Arguments: {α : Type u_1} [Fintype α] (s : Set α) [Fintype ↑s]
Goal: Fintype.card ↑s = Fintype.card α ↔ s = Set.univ
-- Function.Embedding.equiv_of_fintype_self_embedding_to_embedding
@[simp]
theorem equiv_of_fintype_self_embedding_to_embedding [Finite α] (e : α ↪ α) :
    e.equivOfFintypeSelfEmbedding.toEmbedding = e 
Arguments: {α : Type u_1} [Finite α] (e : α ↪ α)
Goal: e.equivOfFintypeSelfEmbedding.toEmbedding = e
-- Function.Embedding.isEmpty_of_card_lt
@[simp]
theorem isEmpty_of_card_lt [Fintype α] [Fintype β] (h : Fintype.card β < Fintype.card α) :
    IsEmpty (α ↪ β) 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (h : Fintype.card β < Fintype.card α)
Goal: IsEmpty (α ↪ β)
-- Function.Embedding.nonempty_of_card_le
theorem nonempty_of_card_le [Fintype α] [Fintype β] (h : Fintype.card α ≤ Fintype.card β) :
    Nonempty (α ↪ β) 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (h : Fintype.card α ≤ Fintype.card β)
Goal: Nonempty (α ↪ β)
-- Function.Embedding.nonempty_iff_card_le
theorem nonempty_iff_card_le [Fintype α] [Fintype β] :
    Nonempty (α ↪ β) ↔ Fintype.card α ≤ Fintype.card β 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β]
Goal: Nonempty (α ↪ β) ↔ Fintype.card α ≤ Fintype.card β
-- Function.Embedding.exists_of_card_le_finset
theorem exists_of_card_le_finset [Fintype α] {s : Finset β} (h : Fintype.card α ≤ s.card) :
    ∃ f : α ↪ β, Set.range f ⊆ s 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] {s : Finset β} (h : Fintype.card α ≤ s.card)
Goal: ∃ f, Set.range ⇑f ⊆ ↑s
-- Finset.univ_map_embedding
@[simp]
theorem Finset.univ_map_embedding {α : Type*} [Fintype α] (e : α ↪ α) : univ.map e = univ 
Arguments: {α : Type u_4} [Fintype α] (e : α ↪ α)
Goal: Finset.map e Finset.univ = Finset.univ
-- Fintype.card_lt_of_surjective_not_injective
theorem card_lt_of_surjective_not_injective [Fintype α] [Fintype β] (f : α → β)
    (h : Function.Surjective f) (h' : ¬Function.Injective f) : card β < card α 
Arguments: {α : Type u_1} {β : Type u_2} [Fintype α] [Fintype β] (f : α → β) (h : Function.Surjective f) (h' : ¬Function.Injective f)
Goal: Fintype.card β < Fintype.card α
-- Fintype.card_subtype_le
theorem Fintype.card_subtype_le [Fintype α] (p : α → Prop) [DecidablePred p] :
    Fintype.card { x // p x } ≤ Fintype.card α 
Arguments: {α : Type u_1} [Fintype α] (p : α → Prop) [DecidablePred p]
Goal: Fintype.card { x // p x } ≤ Fintype.card α
-- Fintype.card_subtype_lt
theorem Fintype.card_subtype_lt [Fintype α] {p : α → Prop} [DecidablePred p] {x : α} (hx : ¬p x) :
    Fintype.card { x // p x } < Fintype.card α 
Arguments: {α : Type u_1} [Fintype α] {p : α → Prop} [DecidablePred p] {x : α} (hx : ¬p x)
Goal: Fintype.card { x // p x } < Fintype.card α
-- Fintype.card_subtype
theorem Fintype.card_subtype [Fintype α] (p : α → Prop) [DecidablePred p] :
    Fintype.card { x // p x } = ((Finset.univ : Finset α).filter p).card 
Arguments: {α : Type u_1} [Fintype α] (p : α → Prop) [DecidablePred p]
Goal: Fintype.card { x // p x } = (Finset.filter p Finset.univ).card
-- Fintype.card_subtype_compl
@[simp]
theorem Fintype.card_subtype_compl [Fintype α] (p : α → Prop) [Fintype { x // p x }]
    [Fintype { x // ¬p x }] :
    Fintype.card { x // ¬p x } = Fintype.card α - Fintype.card { x // p x } 
Arguments: {α : Type u_1} [Fintype α] (p : α → Prop) [Fintype { x // p x }] [Fintype { x // ¬p x }]
Goal: Fintype.card { x // ¬p x } = Fintype.card α - Fintype.card { x // p x }
-- Fintype.card_subtype_mono
theorem Fintype.card_subtype_mono (p q : α → Prop) (h : p ≤ q) [Fintype { x // p x }]
    [Fintype { x // q x }] : Fintype.card { x // p x } ≤ Fintype.card { x // q x } 
Arguments: {α : Type u_1} (p q : α → Prop) (h : p ≤ q) [Fintype { x // p x }] [Fintype { x // q x }]
Goal: Fintype.card { x // p x } ≤ Fintype.card { x // q x }
-- Fintype.card_compl_eq_card_compl
theorem Fintype.card_compl_eq_card_compl [Finite α] (p q : α → Prop) [Fintype { x // p x }]
    [Fintype { x // ¬p x }] [Fintype { x // q x }] [Fintype { x // ¬q x }]
    (h : Fintype.card { x // p x } = Fintype.card { x // q x }) :
    Fintype.card { x // ¬p x } = Fintype.card { x // ¬q x } 
Arguments: {α : Type u_1} [Finite α] (p q : α → Prop) [Fintype { x // p x }] [Fintype { x // ¬p x }] [Fintype { x // q x }] [Fintype { x // ¬q x }] (h : Fintype.card { x // p x } = Fintype.card { x // q x })
Goal: Fintype.card { x // ¬p x } = Fintype.card { x // ¬q x }
-- Fintype.card_quotient_le
theorem Fintype.card_quotient_le [Fintype α] (s : Setoid α)
    [DecidableRel ((· ≈ ·) : α → α → Prop)] : Fintype.card (Quotient s) ≤ Fintype.card α 
Arguments: {α : Type u_1} [Fintype α] (s : Setoid α) [DecidableRel fun x x_1 => x ≈ x_1]
Goal: Fintype.card (Quotient s) ≤ Fintype.card α
-- Fintype.card_quotient_lt
theorem Fintype.card_quotient_lt [Fintype α] {s : Setoid α} [DecidableRel ((· ≈ ·) : α → α → Prop)]
    {x y : α} (h1 : x ≠ y) (h2 : x ≈ y) : Fintype.card (Quotient s) < Fintype.card α 
Arguments: {α : Type u_1} [Fintype α] {s : Setoid α} [DecidableRel fun x x_1 => x ≈ x_1] {x y : α} (h1 : x ≠ y) (h2 : x ≈ y)
Goal: Fintype.card (Quotient s) < Fintype.card α
-- univ_eq_singleton_of_card_one
theorem univ_eq_singleton_of_card_one {α} [Fintype α] (x : α) (h : Fintype.card α = 1) :
    (univ : Finset α) = {x} 
Arguments: {α : Type u_4} [Fintype α] (x : α) (h : Fintype.card α = 1)
Goal: Finset.univ = {x}
-- Finite.wellFounded_of_trans_of_irrefl
theorem wellFounded_of_trans_of_irrefl (r : α → α → Prop) [IsTrans α r] [IsIrrefl α r] :
    WellFounded r 
Arguments: {α : Type u_1} [Finite α] (r : α → α → Prop) [IsTrans α r] [IsIrrefl α r]
Goal: WellFounded r
-- Fintype.false
protected theorem Fintype.false [Infinite α] (_h : Fintype α) : False 
Arguments: {α : Type u_1} [Infinite α] (_h : Fintype α)
Goal: False
-- isEmpty_fintype
@[simp]
theorem isEmpty_fintype {α : Type*} : IsEmpty (Fintype α) ↔ Infinite α 
Arguments: {α : Type u_4}
Goal: IsEmpty (Fintype α) ↔ Infinite α
-- Finset.exists_minimal
theorem Finset.exists_minimal {α : Type*} [Preorder α] (s : Finset α) (h : s.Nonempty) :
    ∃ m ∈ s, ∀ x ∈ s, ¬x < m 
Arguments: {α : Type u_4} [Preorder α] (s : Finset α) (h : s.Nonempty)
Goal: ∃ m ∈ s, ∀ x ∈ s, ¬x < m
-- Finset.exists_maximal
theorem Finset.exists_maximal {α : Type*} [Preorder α] (s : Finset α) (h : s.Nonempty) :
    ∃ m ∈ s, ∀ x ∈ s, ¬m < x 
Arguments: {α : Type u_4} [Preorder α] (s : Finset α) (h : s.Nonempty)
Goal: ∃ m ∈ s, ∀ x ∈ s, ¬m < x
-- Infinite.of_not_fintype
theorem of_not_fintype (h : Fintype α → False) : Infinite α 
Arguments: {α : Type u_1} (h : Fintype α → False)
Goal: Infinite α
-- Infinite.of_injective_to_set
theorem of_injective_to_set {s : Set α} (hs : s ≠ Set.univ) {f : α → s} (hf : Injective f) :
    Infinite α 
Arguments: {α : Type u_1} {s : Set α} (hs : s ≠ Set.univ) {f : α → ↑s} (hf : Function.Injective f)
Goal: Infinite α
-- Infinite.of_surjective_from_set
theorem of_surjective_from_set {s : Set α} (hs : s ≠ Set.univ) {f : s → α} (hf : Surjective f) :
    Infinite α 
Arguments: {α : Type u_1} {s : Set α} (hs : s ≠ Set.univ) {f : ↑s → α} (hf : Function.Surjective f)
Goal: Infinite α
-- Infinite.exists_not_mem_finset
theorem exists_not_mem_finset [Infinite α] (s : Finset α) : ∃ x, x ∉ s 
Arguments: {α : Type u_1} [Infinite α] (s : Finset α)
Goal: ∃ x, x ∉ s
-- Infinite.nonempty
protected theorem nonempty (α : Type*) [Infinite α] : Nonempty α 
Arguments: (α : Type u_4) [Infinite α]
Goal: Nonempty α
-- Infinite.of_injective
theorem of_injective {α β} [Infinite β] (f : β → α) (hf : Injective f) : Infinite α 
Arguments: {α : Sort u_4} {β : Sort u_5} [Infinite β] (f : β → α) (hf : Function.Injective f)
Goal: Infinite α
-- Infinite.of_surjective
theorem of_surjective {α β} [Infinite β] (f : α → β) (hf : Surjective f) : Infinite α 
Arguments: {α : Sort u_4} {β : Sort u_5} [Infinite β] (f : α → β) (hf : Function.Surjective f)
Goal: Infinite α
-- _private.Mathlib.Data.Fintype.Card.0.Infinite.natEmbeddingAux_injective
private theorem natEmbeddingAux_injective (α : Type*) [Infinite α] :
    Function.Injective (natEmbeddingAux α) 
Arguments: (α : Type u_4) [Infinite α]
Goal: Function.Injective (Infinite.natEmbeddingAux α)
-- Infinite.exists_subset_card_eq
theorem exists_subset_card_eq (α : Type*) [Infinite α] (n : ℕ) : ∃ s : Finset α, s.card = n 
Arguments: (α : Type u_4) [Infinite α] (n : ℕ)
Goal: ∃ s, s.card = n
-- Infinite.exists_superset_card_eq
theorem exists_superset_card_eq [Infinite α] (s : Finset α) (n : ℕ) (hn : s.card ≤ n) :
    ∃ t : Finset α, s ⊆ t ∧ t.card = n 
Arguments: {α : Type u_1} [Infinite α] (s : Finset α) (n : ℕ) (hn : s.card ≤ n)
Goal: ∃ t, s ⊆ t ∧ t.card = n
-- not_injective_infinite_finite
theorem not_injective_infinite_finite {α β} [Infinite α] [Finite β] (f : α → β) : ¬Injective f 
Arguments: {α : Sort u_4} {β : Sort u_5} [Infinite α] [Finite β] (f : α → β)
Goal: ¬Function.Injective f
-- Finite.exists_ne_map_eq_of_infinite
theorem Finite.exists_ne_map_eq_of_infinite {α β} [Infinite α] [Finite β] (f : α → β) :
    ∃ x y : α, x ≠ y ∧ f x = f y 
Arguments: {α : Sort u_4} {β : Sort u_5} [Infinite α] [Finite β] (f : α → β)
Goal: ∃ x y, x ≠ y ∧ f x = f y
-- Finite.exists_infinite_fiber
theorem Finite.exists_infinite_fiber [Infinite α] [Finite β] (f : α → β) :
    ∃ y : β, Infinite (f ⁻¹' {y}) 
Arguments: {α : Type u_1} {β : Type u_2} [Infinite α] [Finite β] (f : α → β)
Goal: ∃ y, Infinite ↑(f ⁻¹' {y})
-- not_surjective_finite_infinite
theorem not_surjective_finite_infinite {α β} [Finite α] [Infinite β] (f : α → β) : ¬Surjective f 
Arguments: {α : Sort u_4} {β : Sort u_5} [Finite α] [Infinite β] (f : α → β)
Goal: ¬Function.Surjective f
-- List.exists_pw_disjoint_with_card
theorem List.exists_pw_disjoint_with_card {α : Type*} [Fintype α]
    {c : List ℕ} (hc : c.sum ≤ Fintype.card α) :
    ∃ o : List (List α),
      o.map length = c ∧ (∀ s ∈ o, s.Nodup) ∧ Pairwise List.Disjoint o 
Arguments: {α : Type u_4} [Fintype α] {c : List ℕ} (hc : c.sum ≤ Fintype.card α)
Goal: ∃ o, List.map List.length o = c ∧ (∀ s ∈ o, s.Nodup) ∧ List.Pairwise List.Disjoint o
-- Fintype.induction_subsingleton_or_nontrivial
@[elab_as_elim]
theorem Fintype.induction_subsingleton_or_nontrivial {P : ∀ (α) [Fintype α], Prop} (α : Type*)
    [Fintype α] (hbase : ∀ (α) [Fintype α] [Subsingleton α], P α)
    (hstep : ∀ (α) [Fintype α] [Nontrivial α],
      (∀ (β) [Fintype β], Fintype.card β < Fintype.card α → P β) → P α) :
    P α 
Arguments: {P : (α : Type u_4) → [inst : Fintype α] → Prop} (α : Type u_4) [Fintype α] (hbase : ∀ (α : Type u_4) [inst : Fintype α] [inst_1 : Subsingleton α], P α) (hstep :
  ∀ (α : Type u_4) [inst : Fintype α] [inst_1 : Nontrivial α],
    (∀ (β : Type u_4) [inst_2 : Fintype β], Fintype.card β < Fintype.card α → P β) → P α)
Goal: P α
-- FinVec.seq_eq
@[simp]
theorem seq_eq : ∀ {m} (f : Fin m → α → β) (v : Fin m → α), seq f v = fun i => f i (v i)
  
Arguments: {α : Type u_1} {β : Type u_2} {m : ℕ} (f : Fin m → α → β) (v : Fin m → α)
Goal: FinVec.seq f v = fun i => f i (v i)
-- FinVec.map_eq
@[simp]
theorem map_eq (f : α → β) {m} (v : Fin m → α) : map f v = f ∘ v 
Arguments: {α : Type u_1} {β : Type u_2} (f : α → β) {m : ℕ} (v : Fin m → α)
Goal: FinVec.map f v = f ∘ v
-- FinVec.etaExpand_eq
@[simp]
theorem etaExpand_eq {m} (v : Fin m → α) : etaExpand v = v 
Arguments: {α : Type u_1} {m : ℕ} (v : Fin m → α)
Goal: FinVec.etaExpand v = v
-- FinVec.forall_iff
@[simp]
theorem forall_iff : ∀ {m} (P : (Fin m → α) → Prop), Forall P ↔ ∀ x, P x
  
Arguments: {α : Type u_1} {m : ℕ} (P : (Fin m → α) → Prop)
Goal: FinVec.Forall P ↔ ∀ (x : Fin m → α), P x
-- FinVec.exists_iff
theorem exists_iff : ∀ {m} (P : (Fin m → α) → Prop), Exists P ↔ ∃ x, P x
  
Arguments: {α : Type u_1} {m : ℕ} (P : (Fin m → α) → Prop)
Goal: FinVec.Exists P ↔ ∃ x, P x
-- FinVec.sum_eq
@[simp]
theorem sum_eq [AddCommMonoid α] : ∀ {m} (a : Fin m → α), sum a = ∑ i, a i
  
Arguments: {α : Type u_1} [AddCommMonoid α] {m : ℕ} (a : Fin m → α)
Goal: FinVec.sum a = ∑ i : Fin m, a i
-- Function.FromTypes.uncurry_apply_cons
@[simp]
theorem uncurry_apply_cons {n : ℕ} {α} {p : Fin n → Type u} {τ : Type u}
    (f : Function.FromTypes (vecCons α p) τ) (a : α) (args : (i : Fin n) → p i) :
    uncurry f (Fin.cons a args) = @uncurry _ p _ (f a) args 
Arguments: {n : ℕ} {α : Type u} {p : Fin n → Type u} {τ : Type u} (f : Function.FromTypes (Matrix.vecCons α p) τ) (a : α) (args : (i : Fin n) → p i)
Goal: f.uncurry (Fin.cons a args) = (f a).uncurry args
-- Function.FromTypes.uncurry_apply_succ
@[simp low]
theorem uncurry_apply_succ {n : ℕ} {p : Fin (n + 1) → Type u} {τ : Type u}
    (f : Function.FromTypes p τ) (args : (i : Fin (n + 1)) → p i) :
    uncurry f args = uncurry (f (args 0)) (Fin.tail args) 
Arguments: {n : ℕ} {p : Fin (n + 1) → Type u} {τ : Type u} (f : Function.FromTypes p τ) (args : (i : Fin (n + 1)) → p i)
Goal: f.uncurry args = (f (args 0)).uncurry (Fin.tail args)