ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Submodule.span_le
theorem span_le {p} : span R s ≤ p ↔ s ⊆ p 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M} {p : Submodule R M}
Goal: Submodule.span R s ≤ p ↔ s ⊆ ↑p
-- Submodule.span_mono
theorem span_mono (h : s ⊆ t) : span R s ≤ span R t 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s t : Set M} (h : s ⊆ t)
Goal: Submodule.span R s ≤ Submodule.span R t
-- Submodule.span_monotone
theorem span_monotone : Monotone (span R : Set M → Submodule R M) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M]
Goal: Monotone (Submodule.span R)
-- Submodule.span_eq_of_le
theorem span_eq_of_le (h₁ : s ⊆ p) (h₂ : p ≤ span R s) : span R s = p 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (p : Submodule R M) {s : Set M} (h₁ : s ⊆ ↑p) (h₂ : p ≤ Submodule.span R s)
Goal: Submodule.span R s = p
-- Submodule.span_eq
theorem span_eq : span R (p : Set M) = p 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (p : Submodule R M)
Goal: Submodule.span R ↑p = p
-- Submodule.span_eq_span
theorem span_eq_span (hs : s ⊆ span R t) (ht : t ⊆ span R s) : span R s = span R t 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s t : Set M} (hs : s ⊆ ↑(Submodule.span R t)) (ht : t ⊆ ↑(Submodule.span R s))
Goal: Submodule.span R s = Submodule.span R t
-- Submodule.coe_span_eq_self
lemma coe_span_eq_self [SetLike S M] [AddSubmonoidClass S M] [SMulMemClass S R M] (s : S) :
    (span R (s : Set M) : Set M) = s 
Arguments: {R : Type u_1} {M : Type u_4} {S : Type u_7} [Semiring R] [AddCommMonoid M] [Module R M] [SetLike S M] [AddSubmonoidClass S M] [SMulMemClass S R M] (s : S)
Goal: ↑(Submodule.span R ↑s) = ↑s
-- Submodule.span_coe_eq_restrictScalars
@[simp]
theorem span_coe_eq_restrictScalars [Semiring S] [SMul S R] [Module S M] [IsScalarTower S R M] :
    span S (p : Set M) = p.restrictScalars S 
Arguments: {R : Type u_1} {M : Type u_4} {S : Type u_7} [Semiring R] [AddCommMonoid M] [Module R M] (p : Submodule R M) [Semiring S] [SMul S R] [Module S M] [IsScalarTower S R M]
Goal: Submodule.span S ↑p = Submodule.restrictScalars S p
-- Submodule.image_span_subset
theorem image_span_subset (f : F) (s : Set M) (N : Submodule R₂ M₂) :
    f '' span R s ⊆ N ↔ ∀ m ∈ s, f m ∈ N 
Arguments: {R : Type u_1} {R₂ : Type u_2} {M : Type u_4} {M₂ : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] [Semiring R₂] {σ₁₂ : R →+* R₂} [AddCommMonoid M₂] [Module R₂ M₂] {F : Type u_8} [FunLike F M M₂] [SemilinearMapClass F σ₁₂ M M₂] (f : F) (s : Set M) (N : Submodule R₂ M₂)
Goal: ⇑f '' ↑(Submodule.span R s) ⊆ ↑N ↔ ∀ m ∈ s, f m ∈ N
-- Submodule.image_span_subset_span
theorem image_span_subset_span (f : F) (s : Set M) : f '' span R s ⊆ span R₂ (f '' s) 
Arguments: {R : Type u_1} {R₂ : Type u_2} {M : Type u_4} {M₂ : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] [Semiring R₂] {σ₁₂ : R →+* R₂} [AddCommMonoid M₂] [Module R₂ M₂] {F : Type u_8} [FunLike F M M₂] [SemilinearMapClass F σ₁₂ M M₂] (f : F) (s : Set M)
Goal: ⇑f '' ↑(Submodule.span R s) ⊆ ↑(Submodule.span R₂ (⇑f '' s))
-- Submodule.map_span
theorem map_span [RingHomSurjective σ₁₂] (f : F) (s : Set M) :
    (span R s).map f = span R₂ (f '' s) 
Arguments: {R : Type u_1} {R₂ : Type u_2} {M : Type u_4} {M₂ : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] [Semiring R₂] {σ₁₂ : R →+* R₂} [AddCommMonoid M₂] [Module R₂ M₂] {F : Type u_8} [FunLike F M M₂] [SemilinearMapClass F σ₁₂ M M₂] [RingHomSurjective σ₁₂] (f : F) (s : Set M)
Goal: Submodule.map f (Submodule.span R s) = Submodule.span R₂ (⇑f '' s)
-- Submodule.map_span_le
theorem map_span_le [RingHomSurjective σ₁₂] (f : F) (s : Set M) (N : Submodule R₂ M₂) :
    map f (span R s) ≤ N ↔ ∀ m ∈ s, f m ∈ N 
Arguments: {R : Type u_1} {R₂ : Type u_2} {M : Type u_4} {M₂ : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] [Semiring R₂] {σ₁₂ : R →+* R₂} [AddCommMonoid M₂] [Module R₂ M₂] {F : Type u_8} [FunLike F M M₂] [SemilinearMapClass F σ₁₂ M M₂] [RingHomSurjective σ₁₂] (f : F) (s : Set M) (N : Submodule R₂ M₂)
Goal: Submodule.map f (Submodule.span R s) ≤ N ↔ ∀ m ∈ s, f m ∈ N
-- Submodule.span_insert_zero
@[simp]
theorem span_insert_zero : span R (insert (0 : M) s) = span R s 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M}
Goal: Submodule.span R (insert 0 s) = Submodule.span R s
-- Submodule.span_preimage_le
theorem span_preimage_le (f : F) (s : Set M₂) :
    span R (f ⁻¹' s) ≤ (span R₂ s).comap f 
Arguments: {R : Type u_1} {R₂ : Type u_2} {M : Type u_4} {M₂ : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] [Semiring R₂] {σ₁₂ : R →+* R₂} [AddCommMonoid M₂] [Module R₂ M₂] {F : Type u_8} [FunLike F M M₂] [SemilinearMapClass F σ₁₂ M M₂] (f : F) (s : Set M₂)
Goal: Submodule.span R (⇑f ⁻¹' s) ≤ Submodule.comap f (Submodule.span R₂ s)
-- Submodule.closure_subset_span
theorem closure_subset_span {s : Set M} : (AddSubmonoid.closure s : Set M) ⊆ span R s 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M}
Goal: ↑(AddSubmonoid.closure s) ⊆ ↑(Submodule.span R s)
-- Submodule.closure_le_toAddSubmonoid_span
theorem closure_le_toAddSubmonoid_span {s : Set M} :
    AddSubmonoid.closure s ≤ (span R s).toAddSubmonoid 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M}
Goal: AddSubmonoid.closure s ≤ (Submodule.span R s).toAddSubmonoid
-- Submodule.span_closure
@[simp]
theorem span_closure {s : Set M} : span R (AddSubmonoid.closure s : Set M) = span R s 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M}
Goal: Submodule.span R ↑(AddSubmonoid.closure s) = Submodule.span R s
-- Submodule.span_induction
@[elab_as_elim]
theorem span_induction {p : M → Prop} (h : x ∈ span R s) (mem : ∀ x ∈ s, p x) (zero : p 0)
    (add : ∀ x y, p x → p y → p (x + y)) (smul : ∀ (a : R) (x), p x → p (a • x)) : p x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x : M} {s : Set M} {p : M → Prop} (h : x ∈ Submodule.span R s) (mem : ∀ x ∈ s, p x) (zero : p 0) (add : ∀ (x y : M), p x → p y → p (x + y)) (smul : ∀ (a : R) (x : M), p x → p (a • x))
Goal: p x
-- Submodule.span_induction₂
theorem span_induction₂ {p : M → M → Prop} {a b : M} (ha : a ∈ Submodule.span R s)
    (hb : b ∈ Submodule.span R s) (mem_mem : ∀ x ∈ s, ∀ y ∈ s, p x y)
    (zero_left : ∀ y, p 0 y) (zero_right : ∀ x, p x 0)
    (add_left : ∀ x₁ x₂ y, p x₁ y → p x₂ y → p (x₁ + x₂) y)
    (add_right : ∀ x y₁ y₂, p x y₁ → p x y₂ → p x (y₁ + y₂))
    (smul_left : ∀ (r : R) x y, p x y → p (r • x) y)
    (smul_right : ∀ (r : R) x y, p x y → p x (r • y)) : p a b 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M} {p : M → M → Prop} {a b : M} (ha : a ∈ Submodule.span R s) (hb : b ∈ Submodule.span R s) (mem_mem : ∀ x ∈ s, ∀ y ∈ s, p x y) (zero_left : ∀ (y : M), p 0 y) (zero_right : ∀ (x : M), p x 0) (add_left : ∀ (x₁ x₂ y : M), p x₁ y → p x₂ y → p (x₁ + x₂) y) (add_right : ∀ (x y₁ y₂ : M), p x y₁ → p x y₂ → p x (y₁ + y₂)) (smul_left : ∀ (r : R) (x y : M), p x y → p (r • x) y) (smul_right : ∀ (r : R) (x y : M), p x y → p x (r • y))
Goal: p a b
-- Submodule.span_induction'
@[elab_as_elim]
theorem span_induction' {p : ∀ x, x ∈ span R s → Prop}
    (mem : ∀ (x) (h : x ∈ s), p x (subset_span h))
    (zero : p 0 (Submodule.zero_mem _))
    (add : ∀ x hx y hy, p x hx → p y hy → p (x + y) (Submodule.add_mem _ ‹_› ‹_›))
    (smul : ∀ (a : R) (x hx), p x hx → p (a • x) (Submodule.smul_mem _ _ ‹_›)) {x}
    (hx : x ∈ span R s) : p x hx 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M} {p : (x : M) → x ∈ Submodule.span R s → Prop} (mem : ∀ (x : M) (h : x ∈ s), p x ⋯) (zero : p 0 ⋯) (add : ∀ (x : M) (hx : x ∈ Submodule.span R s) (y : M) (hy : y ∈ Submodule.span R s), p x hx → p y hy → p (x + y) ⋯) (smul : ∀ (a : R) (x : M) (hx : x ∈ Submodule.span R s), p x hx → p (a • x) ⋯) {x : M} (hx : x ∈ Submodule.span R s)
Goal: p x hx
-- Submodule.span_eq_closure
theorem span_eq_closure {s : Set M} : (span R s).toAddSubmonoid = closure (@univ R • s) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M}
Goal: (Submodule.span R s).toAddSubmonoid = AddSubmonoid.closure (Set.univ • s)
-- Submodule.closure_induction
@[elab_as_elim]
theorem closure_induction {p : M → Prop} (h : x ∈ span R s) (zero : p 0)
    (add : ∀ x y, p x → p y → p (x + y)) (smul_mem : ∀ r : R, ∀ x ∈ s, p (r • x)) : p x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x : M} {s : Set M} {p : M → Prop} (h : x ∈ Submodule.span R s) (zero : p 0) (add : ∀ (x y : M), p x → p y → p (x + y)) (smul_mem : ∀ (r : R), ∀ x ∈ s, p (r • x))
Goal: p x
-- Submodule.closure_induction'
@[elab_as_elim]
theorem closure_induction' {p : ∀ x, x ∈ span R s → Prop}
    (zero : p 0 (Submodule.zero_mem _))
    (add : ∀ x hx y hy, p x hx → p y hy → p (x + y) (Submodule.add_mem _ ‹_› ‹_›))
    (smul_mem : ∀ (r x) (h : x ∈ s), p (r • x) (Submodule.smul_mem _ _ <| subset_span h)) {x}
    (hx : x ∈ span R s) : p x hx 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M} {p : (x : M) → x ∈ Submodule.span R s → Prop} (zero : p 0 ⋯) (add : ∀ (x : M) (hx : x ∈ Submodule.span R s) (y : M) (hy : y ∈ Submodule.span R s), p x hx → p y hy → p (x + y) ⋯) (smul_mem : ∀ (r : R) (x : M) (h : x ∈ s), p (r • x) ⋯) {x : M} (hx : x ∈ Submodule.span R s)
Goal: p x hx
-- Submodule.span_span_coe_preimage
@[simp]
theorem span_span_coe_preimage : span R (((↑) : span R s → M) ⁻¹' s) = ⊤ 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M}
Goal: Submodule.span R (Subtype.val ⁻¹' s) = ⊤
-- Submodule.span_setOf_mem_eq_top
@[simp]
lemma span_setOf_mem_eq_top :
    span R {x : span R s | (x : M) ∈ s} = ⊤ 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M}
Goal: Submodule.span R {x | ↑x ∈ s} = ⊤
-- Submodule.span_nat_eq_addSubmonoid_closure
theorem span_nat_eq_addSubmonoid_closure (s : Set M) :
    (span ℕ s).toAddSubmonoid = AddSubmonoid.closure s 
Arguments: {M : Type u_4} [AddCommMonoid M] (s : Set M)
Goal: (Submodule.span ℕ s).toAddSubmonoid = AddSubmonoid.closure s
-- Submodule.span_nat_eq
@[simp]
theorem span_nat_eq (s : AddSubmonoid M) : (span ℕ (s : Set M)).toAddSubmonoid = s 
Arguments: {M : Type u_4} [AddCommMonoid M] (s : AddSubmonoid M)
Goal: (Submodule.span ℕ ↑s).toAddSubmonoid = s
-- Submodule.span_int_eq_addSubgroup_closure
theorem span_int_eq_addSubgroup_closure {M : Type*} [AddCommGroup M] (s : Set M) :
    (span ℤ s).toAddSubgroup = AddSubgroup.closure s 
Arguments: {M : Type u_9} [AddCommGroup M] (s : Set M)
Goal: (Submodule.span ℤ s).toAddSubgroup = AddSubgroup.closure s
-- Submodule.span_int_eq
@[simp]
theorem span_int_eq {M : Type*} [AddCommGroup M] (s : AddSubgroup M) :
    (span ℤ (s : Set M)).toAddSubgroup = s 
Arguments: {M : Type u_9} [AddCommGroup M] (s : AddSubgroup M)
Goal: (Submodule.span ℤ ↑s).toAddSubgroup = s
-- Submodule.span_empty
@[simp]
theorem span_empty : span R (∅ : Set M) = ⊥ 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M]
Goal: Submodule.span R ∅ = ⊥
-- Submodule.span_univ
@[simp]
theorem span_univ : span R (univ : Set M) = ⊤ 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M]
Goal: Submodule.span R Set.univ = ⊤
-- Submodule.span_union
theorem span_union (s t : Set M) : span R (s ∪ t) = span R s ⊔ span R t 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (s t : Set M)
Goal: Submodule.span R (s ∪ t) = Submodule.span R s ⊔ Submodule.span R t
-- Submodule.span_iUnion
theorem span_iUnion {ι} (s : ι → Set M) : span R (⋃ i, s i) = ⨆ i, span R (s i) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {ι : Sort u_9} (s : ι → Set M)
Goal: Submodule.span R (⋃ i, s i) = ⨆ i, Submodule.span R (s i)
-- Submodule.span_iUnion₂
theorem span_iUnion₂ {ι} {κ : ι → Sort*} (s : ∀ i, κ i → Set M) :
    span R (⋃ (i) (j), s i j) = ⨆ (i) (j), span R (s i j) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {ι : Sort u_10} {κ : ι → Sort u_9} (s : (i : ι) → κ i → Set M)
Goal: Submodule.span R (⋃ i, ⋃ j, s i j) = ⨆ i, ⨆ j, Submodule.span R (s i j)
-- Submodule.span_attach_biUnion
theorem span_attach_biUnion [DecidableEq M] {α : Type*} (s : Finset α) (f : s → Finset M) :
    span R (s.attach.biUnion f : Set M) = ⨆ x, span R (f x) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] [DecidableEq M] {α : Type u_9} (s : Finset α) (f : { x // x ∈ s } → Finset M)
Goal: Submodule.span R ↑(s.attach.biUnion f) = ⨆ x, Submodule.span R ↑(f x)
-- Submodule.sup_span
theorem sup_span : p ⊔ span R s = span R (p ∪ s) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (p : Submodule R M) {s : Set M}
Goal: p ⊔ Submodule.span R s = Submodule.span R (↑p ∪ s)
-- Submodule.span_sup
theorem span_sup : span R s ⊔ p = span R (s ∪ p) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (p : Submodule R M) {s : Set M}
Goal: Submodule.span R s ⊔ p = Submodule.span R (s ∪ ↑p)
-- Submodule.span_eq_iSup_of_singleton_spans
theorem span_eq_iSup_of_singleton_spans (s : Set M) : span R s = ⨆ x ∈ s, R ∙ x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (s : Set M)
Goal: Submodule.span R s = ⨆ x ∈ s, Submodule.span R {x}
-- Submodule.span_range_eq_iSup
theorem span_range_eq_iSup {ι : Sort*} {v : ι → M} : span R (range v) = ⨆ i, R ∙ v i 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {ι : Sort u_9} {v : ι → M}
Goal: Submodule.span R (Set.range v) = ⨆ i, Submodule.span R {v i}
-- Submodule.span_smul_le
theorem span_smul_le (s : Set M) (r : R) : span R (r • s) ≤ span R s 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (s : Set M) (r : R)
Goal: Submodule.span R (r • s) ≤ Submodule.span R s
-- Submodule.subset_span_trans
theorem subset_span_trans {U V W : Set M} (hUV : U ⊆ Submodule.span R V)
    (hVW : V ⊆ Submodule.span R W) : U ⊆ Submodule.span R W 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {U V W : Set M} (hUV : U ⊆ ↑(Submodule.span R V)) (hVW : V ⊆ ↑(Submodule.span R W))
Goal: U ⊆ ↑(Submodule.span R W)
-- Submodule.span_smul_eq_of_isUnit
theorem span_smul_eq_of_isUnit (s : Set M) (r : R) (hr : IsUnit r) : span R (r • s) = span R s 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (s : Set M) (r : R) (hr : IsUnit r)
Goal: Submodule.span R (r • s) = Submodule.span R s
-- Submodule.coe_iSup_of_directed
@[simp]
theorem coe_iSup_of_directed {ι} [Nonempty ι] (S : ι → Submodule R M)
    (H : Directed (· ≤ ·) S) : ((iSup S : Submodule R M) : Set M) = ⋃ i, S i 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {ι : Sort u_9} [Nonempty ι] (S : ι → Submodule R M) (H : Directed (fun x x_1 => x ≤ x_1) S)
Goal: ↑(iSup S) = ⋃ i, ↑(S i)
-- Submodule.mem_iSup_of_directed
@[simp]
theorem mem_iSup_of_directed {ι} [Nonempty ι] (S : ι → Submodule R M) (H : Directed (· ≤ ·) S) {x} :
    x ∈ iSup S ↔ ∃ i, x ∈ S i 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {ι : Sort u_9} [Nonempty ι] (S : ι → Submodule R M) (H : Directed (fun x x_1 => x ≤ x_1) S) {x : M}
Goal: x ∈ iSup S ↔ ∃ i, x ∈ S i
-- Submodule.mem_sSup_of_directed
theorem mem_sSup_of_directed {s : Set (Submodule R M)} {z} (hs : s.Nonempty)
    (hdir : DirectedOn (· ≤ ·) s) : z ∈ sSup s ↔ ∃ y ∈ s, z ∈ y 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set (Submodule R M)} {z : M} (hs : s.Nonempty) (hdir : DirectedOn (fun x x_1 => x ≤ x_1) s)
Goal: z ∈ sSup s ↔ ∃ y ∈ s, z ∈ y
-- Submodule.coe_iSup_of_chain
@[norm_cast, simp]
theorem coe_iSup_of_chain (a : ℕ →o Submodule R M) : (↑(⨆ k, a k) : Set M) = ⋃ k, (a k : Set M) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (a : ℕ →o Submodule R M)
Goal: ↑(⨆ k, a k) = ⋃ k, ↑(a k)
-- Submodule.coe_scott_continuous
theorem coe_scott_continuous :
    OmegaCompletePartialOrder.Continuous' ((↑) : Submodule R M → Set M) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M]
Goal: OmegaCompletePartialOrder.Continuous' SetLike.coe
-- Submodule.mem_iSup_of_chain
@[simp]
theorem mem_iSup_of_chain (a : ℕ →o Submodule R M) (m : M) : (m ∈ ⨆ k, a k) ↔ ∃ k, m ∈ a k 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (a : ℕ →o Submodule R M) (m : M)
Goal: m ∈ ⨆ k, a k ↔ ∃ k, m ∈ a k
-- Submodule.mem_sup
theorem mem_sup : x ∈ p ⊔ p' ↔ ∃ y ∈ p, ∃ z ∈ p', y + z = x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x : M} {p p' : Submodule R M}
Goal: x ∈ p ⊔ p' ↔ ∃ y ∈ p, ∃ z ∈ p', y + z = x
-- Submodule.mem_sup'
theorem mem_sup' : x ∈ p ⊔ p' ↔ ∃ (y : p) (z : p'), (y : M) + z = x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x : M} {p p' : Submodule R M}
Goal: x ∈ p ⊔ p' ↔ ∃ y z, ↑y + ↑z = x
-- Submodule.exists_add_eq_of_codisjoint
lemma exists_add_eq_of_codisjoint (h : Codisjoint p p') (x : M) :
    ∃ y ∈ p, ∃ z ∈ p', y + z = x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {p p' : Submodule R M} (h : Codisjoint p p') (x : M)
Goal: ∃ y ∈ p, ∃ z ∈ p', y + z = x
-- Submodule.coe_sup
theorem coe_sup : ↑(p ⊔ p') = (p + p' : Set M) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (p p' : Submodule R M)
Goal: ↑(p ⊔ p') = ↑p + ↑p'
-- Submodule.sup_toAddSubmonoid
theorem sup_toAddSubmonoid : (p ⊔ p').toAddSubmonoid = p.toAddSubmonoid ⊔ p'.toAddSubmonoid 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (p p' : Submodule R M)
Goal: (p ⊔ p').toAddSubmonoid = p.toAddSubmonoid ⊔ p'.toAddSubmonoid
-- Submodule.sup_toAddSubgroup
theorem sup_toAddSubgroup {R M : Type*} [Ring R] [AddCommGroup M] [Module R M]
    (p p' : Submodule R M) : (p ⊔ p').toAddSubgroup = p.toAddSubgroup ⊔ p'.toAddSubgroup 
Arguments: {R : Type u_9} {M : Type u_10} [Ring R] [AddCommGroup M] [Module R M] (p p' : Submodule R M)
Goal: (p ⊔ p').toAddSubgroup = p.toAddSubgroup ⊔ p'.toAddSubgroup
-- Submodule.mem_span_singleton_self
theorem mem_span_singleton_self (x : M) : x ∈ R ∙ x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (x : M)
Goal: x ∈ Submodule.span R {x}
-- Submodule.nontrivial_span_singleton
theorem nontrivial_span_singleton {x : M} (h : x ≠ 0) : Nontrivial (R ∙ x) 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x : M} (h : x ≠ 0)
Goal: Nontrivial ↥(Submodule.span R {x})
-- Submodule.mem_span_singleton
theorem mem_span_singleton {y : M} : (x ∈ R ∙ y) ↔ ∃ a : R, a • y = x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x y : M}
Goal: x ∈ Submodule.span R {y} ↔ ∃ a, a • y = x
-- Submodule.le_span_singleton_iff
theorem le_span_singleton_iff {s : Submodule R M} {v₀ : M} :
    (s ≤ R ∙ v₀) ↔ ∀ v ∈ s, ∃ r : R, r • v₀ = v 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Submodule R M} {v₀ : M}
Goal: s ≤ Submodule.span R {v₀} ↔ ∀ v ∈ s, ∃ r, r • v₀ = v
-- Submodule.span_singleton_eq_top_iff
theorem span_singleton_eq_top_iff (x : M) : (R ∙ x) = ⊤ ↔ ∀ v, ∃ r : R, r • x = v 
Arguments: (R : Type u_1) {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (x : M)
Goal: Submodule.span R {x} = ⊤ ↔ ∀ (v : M), ∃ r, r • x = v
-- Submodule.span_zero_singleton
@[simp]
theorem span_zero_singleton : (R ∙ (0 : M)) = ⊥ 
Arguments: (R : Type u_1) {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M]
Goal: Submodule.span R {0} = ⊥
-- Submodule.span_singleton_eq_range
theorem span_singleton_eq_range (y : M) : ↑(R ∙ y) = range ((· • y) : R → M) 
Arguments: (R : Type u_1) {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (y : M)
Goal: ↑(Submodule.span R {y}) = Set.range fun x => x • y
-- Submodule.span_singleton_smul_le
theorem span_singleton_smul_le {S} [Monoid S] [SMul S R] [MulAction S M] [IsScalarTower S R M]
    (r : S) (x : M) : (R ∙ r • x) ≤ R ∙ x 
Arguments: (R : Type u_1) {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {S : Type u_9} [Monoid S] [SMul S R] [MulAction S M] [IsScalarTower S R M] (r : S) (x : M)
Goal: Submodule.span R {r • x} ≤ Submodule.span R {x}
-- Submodule.span_singleton_group_smul_eq
theorem span_singleton_group_smul_eq {G} [Group G] [SMul G R] [MulAction G M] [IsScalarTower G R M]
    (g : G) (x : M) : (R ∙ g • x) = R ∙ x 
Arguments: (R : Type u_1) {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {G : Type u_9} [Group G] [SMul G R] [MulAction G M] [IsScalarTower G R M] (g : G) (x : M)
Goal: Submodule.span R {g • x} = Submodule.span R {x}
-- Submodule.span_singleton_smul_eq
theorem span_singleton_smul_eq {r : R} (hr : IsUnit r) (x : M) : (R ∙ r • x) = R ∙ x 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {r : R} (hr : IsUnit r) (x : M)
Goal: Submodule.span R {r • x} = Submodule.span R {x}
-- Submodule.disjoint_span_singleton
theorem disjoint_span_singleton {K E : Type*} [DivisionRing K] [AddCommGroup E] [Module K E]
    {s : Submodule K E} {x : E} : Disjoint s (K ∙ x) ↔ x ∈ s → x = 0 
Arguments: {K : Type u_9} {E : Type u_10} [DivisionRing K] [AddCommGroup E] [Module K E] {s : Submodule K E} {x : E}
Goal: Disjoint s (Submodule.span K {x}) ↔ x ∈ s → x = 0
-- Submodule.disjoint_span_singleton'
theorem disjoint_span_singleton' {K E : Type*} [DivisionRing K] [AddCommGroup E] [Module K E]
    {p : Submodule K E} {x : E} (x0 : x ≠ 0) : Disjoint p (K ∙ x) ↔ x ∉ p 
Arguments: {K : Type u_9} {E : Type u_10} [DivisionRing K] [AddCommGroup E] [Module K E] {p : Submodule K E} {x : E} (x0 : x ≠ 0)
Goal: Disjoint p (Submodule.span K {x}) ↔ x ∉ p
-- Submodule.mem_span_singleton_trans
theorem mem_span_singleton_trans {x y z : M} (hxy : x ∈ R ∙ y) (hyz : y ∈ R ∙ z) : x ∈ R ∙ z 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x y z : M} (hxy : x ∈ Submodule.span R {y}) (hyz : y ∈ Submodule.span R {z})
Goal: x ∈ Submodule.span R {z}
-- Submodule.span_insert
theorem span_insert (x) (s : Set M) : span R (insert x s) = (R ∙ x) ⊔ span R s 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] (x : M) (s : Set M)
Goal: Submodule.span R (insert x s) = Submodule.span R {x} ⊔ Submodule.span R s
-- Submodule.span_insert_eq_span
theorem span_insert_eq_span (h : x ∈ span R s) : span R (insert x s) = span R s 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x : M} {s : Set M} (h : x ∈ Submodule.span R s)
Goal: Submodule.span R (insert x s) = Submodule.span R s
-- Submodule.span_span
theorem span_span : span R (span R s : Set M) = span R s 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {s : Set M}
Goal: Submodule.span R ↑(Submodule.span R s) = Submodule.span R s
-- Submodule.mem_span_insert
theorem mem_span_insert {y} :
    x ∈ span R (insert y s) ↔ ∃ a : R, ∃ z ∈ span R s, x = a • y + z 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x : M} {s : Set M} {y : M}
Goal: x ∈ Submodule.span R (insert y s) ↔ ∃ a, ∃ z ∈ Submodule.span R s, x = a • y + z
-- Submodule.mem_span_pair
theorem mem_span_pair {x y z : M} :
    z ∈ span R ({x, y} : Set M) ↔ ∃ a b : R, a • x + b • y = z 
Arguments: {R : Type u_1} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {x y z : M}
Goal: z ∈ Submodule.span R {x, y} ↔ ∃ a b, a • x + b • y = z