ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- ProjectiveSpectrum.zeroLocus_singleton_zero
@[simp]
theorem zeroLocus_singleton_zero : zeroLocus 𝒜 ({0} : Set A) = Set.univ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜]
Goal: ProjectiveSpectrum.zeroLocus 𝒜 {0} = Set.univ
-- ProjectiveSpectrum.zeroLocus_empty
@[simp]
theorem zeroLocus_empty : zeroLocus 𝒜 (∅ : Set A) = Set.univ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜]
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ∅ = Set.univ
-- ProjectiveSpectrum.vanishingIdeal_univ
@[simp]
theorem vanishingIdeal_univ : vanishingIdeal (∅ : Set (ProjectiveSpectrum 𝒜)) = ⊤ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜]
Goal: ProjectiveSpectrum.vanishingIdeal ∅ = ⊤
-- ProjectiveSpectrum.zeroLocus_empty_of_one_mem
theorem zeroLocus_empty_of_one_mem {s : Set A} (h : (1 : A) ∈ s) : zeroLocus 𝒜 s = ∅ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] {s : Set A} (h : 1 ∈ s)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 s = ∅
-- ProjectiveSpectrum.zeroLocus_singleton_one
@[simp]
theorem zeroLocus_singleton_one : zeroLocus 𝒜 ({1} : Set A) = ∅ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜]
Goal: ProjectiveSpectrum.zeroLocus 𝒜 {1} = ∅
-- ProjectiveSpectrum.zeroLocus_univ
@[simp]
theorem zeroLocus_univ : zeroLocus 𝒜 (Set.univ : Set A) = ∅ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜]
Goal: ProjectiveSpectrum.zeroLocus 𝒜 Set.univ = ∅
-- ProjectiveSpectrum.zeroLocus_sup_ideal
theorem zeroLocus_sup_ideal (I J : Ideal A) :
    zeroLocus 𝒜 ((I ⊔ J : Ideal A) : Set A) = zeroLocus _ I ∩ zeroLocus _ J 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (I J : Ideal A)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ↑(I ⊔ J) = ProjectiveSpectrum.zeroLocus 𝒜 ↑I ∩ ProjectiveSpectrum.zeroLocus 𝒜 ↑J
-- ProjectiveSpectrum.zeroLocus_sup_homogeneousIdeal
theorem zeroLocus_sup_homogeneousIdeal (I J : HomogeneousIdeal 𝒜) :
    zeroLocus 𝒜 ((I ⊔ J : HomogeneousIdeal 𝒜) : Set A) = zeroLocus _ I ∩ zeroLocus _ J 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (I J : HomogeneousIdeal 𝒜)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ↑(I ⊔ J) = ProjectiveSpectrum.zeroLocus 𝒜 ↑I ∩ ProjectiveSpectrum.zeroLocus 𝒜 ↑J
-- ProjectiveSpectrum.zeroLocus_union
theorem zeroLocus_union (s s' : Set A) : zeroLocus 𝒜 (s ∪ s') = zeroLocus _ s ∩ zeroLocus _ s' 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (s s' : Set A)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 (s ∪ s') = ProjectiveSpectrum.zeroLocus 𝒜 s ∩ ProjectiveSpectrum.zeroLocus 𝒜 s'
-- ProjectiveSpectrum.vanishingIdeal_union
theorem vanishingIdeal_union (t t' : Set (ProjectiveSpectrum 𝒜)) :
    vanishingIdeal (t ∪ t') = vanishingIdeal t ⊓ vanishingIdeal t' 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (t t' : Set (ProjectiveSpectrum 𝒜))
Goal: ProjectiveSpectrum.vanishingIdeal (t ∪ t') = ProjectiveSpectrum.vanishingIdeal t ⊓ ProjectiveSpectrum.vanishingIdeal t'
-- ProjectiveSpectrum.zeroLocus_iSup_ideal
theorem zeroLocus_iSup_ideal {γ : Sort*} (I : γ → Ideal A) :
    zeroLocus _ ((⨆ i, I i : Ideal A) : Set A) = ⋂ i, zeroLocus 𝒜 (I i) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] {γ : Sort u_3} (I : γ → Ideal A)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ↑(⨆ i, I i) = ⋂ i, ProjectiveSpectrum.zeroLocus 𝒜 ↑(I i)
-- ProjectiveSpectrum.zeroLocus_iSup_homogeneousIdeal
theorem zeroLocus_iSup_homogeneousIdeal {γ : Sort*} (I : γ → HomogeneousIdeal 𝒜) :
    zeroLocus _ ((⨆ i, I i : HomogeneousIdeal 𝒜) : Set A) = ⋂ i, zeroLocus 𝒜 (I i) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] {γ : Sort u_3} (I : γ → HomogeneousIdeal 𝒜)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ↑(⨆ i, I i) = ⋂ i, ProjectiveSpectrum.zeroLocus 𝒜 ↑(I i)
-- ProjectiveSpectrum.zeroLocus_iUnion
theorem zeroLocus_iUnion {γ : Sort*} (s : γ → Set A) :
    zeroLocus 𝒜 (⋃ i, s i) = ⋂ i, zeroLocus 𝒜 (s i) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] {γ : Sort u_3} (s : γ → Set A)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 (⋃ i, s i) = ⋂ i, ProjectiveSpectrum.zeroLocus 𝒜 (s i)
-- ProjectiveSpectrum.zeroLocus_bUnion
theorem zeroLocus_bUnion (s : Set (Set A)) :
    zeroLocus 𝒜 (⋃ s' ∈ s, s' : Set A) = ⋂ s' ∈ s, zeroLocus 𝒜 s' 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (s : Set (Set A))
Goal: ProjectiveSpectrum.zeroLocus 𝒜 (⋃ s' ∈ s, s') = ⋂ s' ∈ s, ProjectiveSpectrum.zeroLocus 𝒜 s'
-- ProjectiveSpectrum.vanishingIdeal_iUnion
theorem vanishingIdeal_iUnion {γ : Sort*} (t : γ → Set (ProjectiveSpectrum 𝒜)) :
    vanishingIdeal (⋃ i, t i) = ⨅ i, vanishingIdeal (t i) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] {γ : Sort u_3} (t : γ → Set (ProjectiveSpectrum 𝒜))
Goal: ProjectiveSpectrum.vanishingIdeal (⋃ i, t i) = ⨅ i, ProjectiveSpectrum.vanishingIdeal (t i)
-- ProjectiveSpectrum.zeroLocus_inf
theorem zeroLocus_inf (I J : Ideal A) :
    zeroLocus 𝒜 ((I ⊓ J : Ideal A) : Set A) = zeroLocus 𝒜 I ∪ zeroLocus 𝒜 J 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (I J : Ideal A)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ↑(I ⊓ J) = ProjectiveSpectrum.zeroLocus 𝒜 ↑I ∪ ProjectiveSpectrum.zeroLocus 𝒜 ↑J
-- ProjectiveSpectrum.union_zeroLocus
theorem union_zeroLocus (s s' : Set A) :
    zeroLocus 𝒜 s ∪ zeroLocus 𝒜 s' = zeroLocus 𝒜 (Ideal.span s ⊓ Ideal.span s' : Ideal A) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (s s' : Set A)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 s ∪ ProjectiveSpectrum.zeroLocus 𝒜 s' =
  ProjectiveSpectrum.zeroLocus 𝒜 ↑(Ideal.span s ⊓ Ideal.span s')
-- ProjectiveSpectrum.zeroLocus_mul_ideal
theorem zeroLocus_mul_ideal (I J : Ideal A) :
    zeroLocus 𝒜 ((I * J : Ideal A) : Set A) = zeroLocus 𝒜 I ∪ zeroLocus 𝒜 J 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (I J : Ideal A)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ↑(I * J) = ProjectiveSpectrum.zeroLocus 𝒜 ↑I ∪ ProjectiveSpectrum.zeroLocus 𝒜 ↑J
-- ProjectiveSpectrum.zeroLocus_mul_homogeneousIdeal
theorem zeroLocus_mul_homogeneousIdeal (I J : HomogeneousIdeal 𝒜) :
    zeroLocus 𝒜 ((I * J : HomogeneousIdeal 𝒜) : Set A) = zeroLocus 𝒜 I ∪ zeroLocus 𝒜 J 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (I J : HomogeneousIdeal 𝒜)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ↑(I * J) = ProjectiveSpectrum.zeroLocus 𝒜 ↑I ∪ ProjectiveSpectrum.zeroLocus 𝒜 ↑J
-- ProjectiveSpectrum.zeroLocus_singleton_mul
theorem zeroLocus_singleton_mul (f g : A) :
    zeroLocus 𝒜 ({f * g} : Set A) = zeroLocus 𝒜 {f} ∪ zeroLocus 𝒜 {g} 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f g : A)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 {f * g} = ProjectiveSpectrum.zeroLocus 𝒜 {f} ∪ ProjectiveSpectrum.zeroLocus 𝒜 {g}
-- ProjectiveSpectrum.zeroLocus_singleton_pow
@[simp]
theorem zeroLocus_singleton_pow (f : A) (n : ℕ) (hn : 0 < n) :
    zeroLocus 𝒜 ({f ^ n} : Set A) = zeroLocus 𝒜 {f} 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f : A) (n : ℕ) (hn : 0 < n)
Goal: ProjectiveSpectrum.zeroLocus 𝒜 {f ^ n} = ProjectiveSpectrum.zeroLocus 𝒜 {f}
-- ProjectiveSpectrum.sup_vanishingIdeal_le
theorem sup_vanishingIdeal_le (t t' : Set (ProjectiveSpectrum 𝒜)) :
    vanishingIdeal t ⊔ vanishingIdeal t' ≤ vanishingIdeal (t ∩ t') 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (t t' : Set (ProjectiveSpectrum 𝒜))
Goal: ProjectiveSpectrum.vanishingIdeal t ⊔ ProjectiveSpectrum.vanishingIdeal t' ≤ ProjectiveSpectrum.vanishingIdeal (t ∩ t')
-- ProjectiveSpectrum.mem_compl_zeroLocus_iff_not_mem
theorem mem_compl_zeroLocus_iff_not_mem {f : A} {I : ProjectiveSpectrum 𝒜} :
    I ∈ (zeroLocus 𝒜 {f} : Set (ProjectiveSpectrum 𝒜))ᶜ ↔ f ∉ I.asHomogeneousIdeal 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] {f : A} {I : ProjectiveSpectrum 𝒜}
Goal: I ∈ (ProjectiveSpectrum.zeroLocus 𝒜 {f})ᶜ ↔ f ∉ I.asHomogeneousIdeal
-- ProjectiveSpectrum.isOpen_iff
theorem isOpen_iff (U : Set (ProjectiveSpectrum 𝒜)) : IsOpen U ↔ ∃ s, Uᶜ = zeroLocus 𝒜 s 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (U : Set (ProjectiveSpectrum 𝒜))
Goal: IsOpen U ↔ ∃ s, Uᶜ = ProjectiveSpectrum.zeroLocus 𝒜 s
-- ProjectiveSpectrum.isClosed_iff_zeroLocus
theorem isClosed_iff_zeroLocus (Z : Set (ProjectiveSpectrum 𝒜)) :
    IsClosed Z ↔ ∃ s, Z = zeroLocus 𝒜 s 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (Z : Set (ProjectiveSpectrum 𝒜))
Goal: IsClosed Z ↔ ∃ s, Z = ProjectiveSpectrum.zeroLocus 𝒜 s
-- ProjectiveSpectrum.isClosed_zeroLocus
theorem isClosed_zeroLocus (s : Set A) : IsClosed (zeroLocus 𝒜 s) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (s : Set A)
Goal: IsClosed (ProjectiveSpectrum.zeroLocus 𝒜 s)
-- ProjectiveSpectrum.zeroLocus_vanishingIdeal_eq_closure
theorem zeroLocus_vanishingIdeal_eq_closure (t : Set (ProjectiveSpectrum 𝒜)) :
    zeroLocus 𝒜 (vanishingIdeal t : Set A) = closure t 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (t : Set (ProjectiveSpectrum 𝒜))
Goal: ProjectiveSpectrum.zeroLocus 𝒜 ↑(ProjectiveSpectrum.vanishingIdeal t) = closure t
-- ProjectiveSpectrum.vanishingIdeal_closure
theorem vanishingIdeal_closure (t : Set (ProjectiveSpectrum 𝒜)) :
    vanishingIdeal (closure t) = vanishingIdeal t 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (t : Set (ProjectiveSpectrum 𝒜))
Goal: ProjectiveSpectrum.vanishingIdeal (closure t) = ProjectiveSpectrum.vanishingIdeal t
-- ProjectiveSpectrum.mem_basicOpen
@[simp]
theorem mem_basicOpen (f : A) (x : ProjectiveSpectrum 𝒜) :
    x ∈ basicOpen 𝒜 f ↔ f ∉ x.asHomogeneousIdeal 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f : A) (x : ProjectiveSpectrum 𝒜)
Goal: x ∈ ProjectiveSpectrum.basicOpen 𝒜 f ↔ f ∉ x.asHomogeneousIdeal
-- ProjectiveSpectrum.mem_coe_basicOpen
theorem mem_coe_basicOpen (f : A) (x : ProjectiveSpectrum 𝒜) :
    x ∈ (↑(basicOpen 𝒜 f) : Set (ProjectiveSpectrum 𝒜)) ↔ f ∉ x.asHomogeneousIdeal 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f : A) (x : ProjectiveSpectrum 𝒜)
Goal: x ∈ ↑(ProjectiveSpectrum.basicOpen 𝒜 f) ↔ f ∉ x.asHomogeneousIdeal
-- ProjectiveSpectrum.isOpen_basicOpen
theorem isOpen_basicOpen {a : A} : IsOpen (basicOpen 𝒜 a : Set (ProjectiveSpectrum 𝒜)) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] {a : A}
Goal: IsOpen ↑(ProjectiveSpectrum.basicOpen 𝒜 a)
-- ProjectiveSpectrum.basicOpen_eq_zeroLocus_compl
@[simp]
theorem basicOpen_eq_zeroLocus_compl (r : A) :
    (basicOpen 𝒜 r : Set (ProjectiveSpectrum 𝒜)) = (zeroLocus 𝒜 {r})ᶜ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (r : A)
Goal: ↑(ProjectiveSpectrum.basicOpen 𝒜 r) = (ProjectiveSpectrum.zeroLocus 𝒜 {r})ᶜ
-- ProjectiveSpectrum.basicOpen_one
@[simp]
theorem basicOpen_one : basicOpen 𝒜 (1 : A) = ⊤ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜]
Goal: ProjectiveSpectrum.basicOpen 𝒜 1 = ⊤
-- ProjectiveSpectrum.basicOpen_zero
@[simp]
theorem basicOpen_zero : basicOpen 𝒜 (0 : A) = ⊥ 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜]
Goal: ProjectiveSpectrum.basicOpen 𝒜 0 = ⊥
-- ProjectiveSpectrum.basicOpen_mul
theorem basicOpen_mul (f g : A) : basicOpen 𝒜 (f * g) = basicOpen 𝒜 f ⊓ basicOpen 𝒜 g 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f g : A)
Goal: ProjectiveSpectrum.basicOpen 𝒜 (f * g) = ProjectiveSpectrum.basicOpen 𝒜 f ⊓ ProjectiveSpectrum.basicOpen 𝒜 g
-- ProjectiveSpectrum.basicOpen_mul_le_left
theorem basicOpen_mul_le_left (f g : A) : basicOpen 𝒜 (f * g) ≤ basicOpen 𝒜 f 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f g : A)
Goal: ProjectiveSpectrum.basicOpen 𝒜 (f * g) ≤ ProjectiveSpectrum.basicOpen 𝒜 f
-- ProjectiveSpectrum.basicOpen_mul_le_right
theorem basicOpen_mul_le_right (f g : A) : basicOpen 𝒜 (f * g) ≤ basicOpen 𝒜 g 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f g : A)
Goal: ProjectiveSpectrum.basicOpen 𝒜 (f * g) ≤ ProjectiveSpectrum.basicOpen 𝒜 g
-- ProjectiveSpectrum.basicOpen_pow
@[simp]
theorem basicOpen_pow (f : A) (n : ℕ) (hn : 0 < n) : basicOpen 𝒜 (f ^ n) = basicOpen 𝒜 f 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f : A) (n : ℕ) (hn : 0 < n)
Goal: ProjectiveSpectrum.basicOpen 𝒜 (f ^ n) = ProjectiveSpectrum.basicOpen 𝒜 f
-- ProjectiveSpectrum.basicOpen_eq_union_of_projection
theorem basicOpen_eq_union_of_projection (f : A) :
    basicOpen 𝒜 f = ⨆ i : ℕ, basicOpen 𝒜 (GradedAlgebra.proj 𝒜 i f) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (f : A)
Goal: ProjectiveSpectrum.basicOpen 𝒜 f = ⨆ i, ProjectiveSpectrum.basicOpen 𝒜 ((GradedAlgebra.proj 𝒜 i) f)
-- ProjectiveSpectrum.isTopologicalBasis_basic_opens
theorem isTopologicalBasis_basic_opens :
    TopologicalSpace.IsTopologicalBasis
      (Set.range fun r : A => (basicOpen 𝒜 r : Set (ProjectiveSpectrum 𝒜))) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜]
Goal: TopologicalSpace.IsTopologicalBasis (Set.range fun r => ↑(ProjectiveSpectrum.basicOpen 𝒜 r))
-- ProjectiveSpectrum.as_ideal_le_as_ideal
@[simp]
theorem as_ideal_le_as_ideal (x y : ProjectiveSpectrum 𝒜) :
    x.asHomogeneousIdeal ≤ y.asHomogeneousIdeal ↔ x ≤ y 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (x y : ProjectiveSpectrum 𝒜)
Goal: x.asHomogeneousIdeal ≤ y.asHomogeneousIdeal ↔ x ≤ y
-- ProjectiveSpectrum.as_ideal_lt_as_ideal
@[simp]
theorem as_ideal_lt_as_ideal (x y : ProjectiveSpectrum 𝒜) :
    x.asHomogeneousIdeal < y.asHomogeneousIdeal ↔ x < y 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (x y : ProjectiveSpectrum 𝒜)
Goal: x.asHomogeneousIdeal < y.asHomogeneousIdeal ↔ x < y
-- ProjectiveSpectrum.le_iff_mem_closure
theorem le_iff_mem_closure (x y : ProjectiveSpectrum 𝒜) :
    x ≤ y ↔ y ∈ closure ({x} : Set (ProjectiveSpectrum 𝒜)) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [CommRing A] [Algebra R A] (𝒜 : ℕ → Submodule R A) [GradedAlgebra 𝒜] (x y : ProjectiveSpectrum 𝒜)
Goal: x ≤ y ↔ y ∈ closure {x}
-- Sym2.sup_mk
@[simp] theorem sup_mk [SemilatticeSup α] (a b : α) : s(a, b).sup = a ⊔ b 
Arguments: {α : Type u_1} [SemilatticeSup α] (a b : α)
Goal: s(a, b).sup = a ⊔ b
-- Sym2.inf_mk
@[simp] theorem inf_mk [SemilatticeInf α] (a b : α) : s(a, b).inf = a ⊓ b 
Arguments: {α : Type u_1} [SemilatticeInf α] (a b : α)
Goal: s(a, b).inf = a ⊓ b
-- Sym2.inf_le_sup
protected theorem inf_le_sup [Lattice α] (s : Sym2 α) : s.inf ≤ s.sup 
Arguments: {α : Type u_1} [Lattice α] (s : Sym2 α)
Goal: s.inf ≤ s.sup
-- Sym2.sortEquiv_symm_apply
@[simps!]
def sortEquiv [LinearOrder α] : Sym2 α ≃ { p : α × α // p.1 ≤ p.2 } 
Arguments: {α : Type u_1} [LinearOrder α] (p : { p // p.1 ≤ p.2 })
Goal: Sym2.sortEquiv.symm p = Sym2.mk ↑p
-- Sym2.sortEquiv_apply_coe
@[simps!]
def sortEquiv [LinearOrder α] : Sym2 α ≃ { p : α × α // p.1 ≤ p.2 } 
Arguments: {α : Type u_1} [LinearOrder α] (s : Sym2 α)
Goal: ↑(Sym2.sortEquiv s) = (s.inf, s.sup)
-- QuaternionAlgebra.equivProd_symm_apply_imJ
@[simps]
def equivProd {R : Type*} (c₁ c₂ : R) : ℍ[R,c₁,c₂] ≃ R × R × R × R 
Arguments: {R : Type u_1} (c₁ c₂ : R) (a : R × R × R × R)
Goal: ((QuaternionAlgebra.equivProd c₁ c₂).symm a).imJ = a.2.2.1
-- QuaternionAlgebra.equivProd_symm_apply_imK
@[simps]
def equivProd {R : Type*} (c₁ c₂ : R) : ℍ[R,c₁,c₂] ≃ R × R × R × R 
Arguments: {R : Type u_1} (c₁ c₂ : R) (a : R × R × R × R)
Goal: ((QuaternionAlgebra.equivProd c₁ c₂).symm a).imK = a.2.2.2
-- QuaternionAlgebra.equivProd_apply
@[simps]
def equivProd {R : Type*} (c₁ c₂ : R) : ℍ[R,c₁,c₂] ≃ R × R × R × R 
Arguments: {R : Type u_1} (c₁ c₂ : R) (a : ℍ[R,c₁,c₂])
Goal: (QuaternionAlgebra.equivProd c₁ c₂) a = (a.re, a.imI, a.imJ, a.imK)
-- QuaternionAlgebra.equivProd_symm_apply_re
@[simps]
def equivProd {R : Type*} (c₁ c₂ : R) : ℍ[R,c₁,c₂] ≃ R × R × R × R 
Arguments: {R : Type u_1} (c₁ c₂ : R) (a : R × R × R × R)
Goal: ((QuaternionAlgebra.equivProd c₁ c₂).symm a).re = a.1
-- QuaternionAlgebra.equivProd_symm_apply_imI
@[simps]
def equivProd {R : Type*} (c₁ c₂ : R) : ℍ[R,c₁,c₂] ≃ R × R × R × R 
Arguments: {R : Type u_1} (c₁ c₂ : R) (a : R × R × R × R)
Goal: ((QuaternionAlgebra.equivProd c₁ c₂).symm a).imI = a.2.1
-- QuaternionAlgebra.equivTuple_symm_apply
@[simps symm_apply]
def equivTuple {R : Type*} (c₁ c₂ : R) : ℍ[R,c₁,c₂] ≃ (Fin 4 → R) 
Arguments: {R : Type u_1} (c₁ c₂ : R) (a : Fin 4 → R)
Goal: (QuaternionAlgebra.equivTuple c₁ c₂).symm a = { re := a 0, imI := a 1, imJ := a 2, imK := a 3 }
-- QuaternionAlgebra.equivTuple_apply
@[simp]
theorem equivTuple_apply {R : Type*} (c₁ c₂ : R) (x : ℍ[R,c₁,c₂]) :
    equivTuple c₁ c₂ x = ![x.re, x.imI, x.imJ, x.imK] 
Arguments: {R : Type u_1} (c₁ c₂ : R) (x : ℍ[R,c₁,c₂])
Goal: (QuaternionAlgebra.equivTuple c₁ c₂) x = ![x.re, x.imI, x.imJ, x.imK]
-- QuaternionAlgebra.mk.eta
@[simp]
theorem mk.eta {R : Type*} {c₁ c₂} (a : ℍ[R,c₁,c₂]) : mk a.1 a.2 a.3 a.4 = a 
Arguments: {R : Type u_1} {c₁ c₂ : R} (a : ℍ[R,c₁,c₂])
Goal: { re := a.re, imI := a.imI, imJ := a.imJ, imK := a.imK } = a
-- QuaternionAlgebra.im_re
@[simp]
theorem im_re : a.im.re = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a : ℍ[R,c₁,c₂])
Goal: a.im.re = 0
-- QuaternionAlgebra.im_imI
@[simp]
theorem im_imI : a.im.imI = a.imI 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a : ℍ[R,c₁,c₂])
Goal: a.im.imI = a.imI
-- QuaternionAlgebra.im_imJ
@[simp]
theorem im_imJ : a.im.imJ = a.imJ 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a : ℍ[R,c₁,c₂])
Goal: a.im.imJ = a.imJ
-- QuaternionAlgebra.im_imK
@[simp]
theorem im_imK : a.im.imK = a.imK 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a : ℍ[R,c₁,c₂])
Goal: a.im.imK = a.imK
-- QuaternionAlgebra.im_idem
@[simp]
theorem im_idem : a.im.im = a.im 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a : ℍ[R,c₁,c₂])
Goal: a.im.im = a.im
-- QuaternionAlgebra.coe_re
@[simp, norm_cast]
theorem coe_re : (x : ℍ[R,c₁,c₂]).re = x 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (x : R)
Goal: (↑x).re = x
-- QuaternionAlgebra.coe_imI
@[simp, norm_cast]
theorem coe_imI : (x : ℍ[R,c₁,c₂]).imI = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (x : R)
Goal: (↑x).imI = 0
-- QuaternionAlgebra.coe_imJ
@[simp, norm_cast]
theorem coe_imJ : (x : ℍ[R,c₁,c₂]).imJ = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (x : R)
Goal: (↑x).imJ = 0
-- QuaternionAlgebra.coe_imK
@[simp, norm_cast]
theorem coe_imK : (x : ℍ[R,c₁,c₂]).imK = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (x : R)
Goal: (↑x).imK = 0
-- QuaternionAlgebra.coe_injective
theorem coe_injective : Function.Injective (coe : R → ℍ[R,c₁,c₂]) 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Function.Injective QuaternionAlgebra.coe
-- QuaternionAlgebra.coe_inj
@[simp]
theorem coe_inj {x y : R} : (x : ℍ[R,c₁,c₂]) = y ↔ x = y 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ x y : R}
Goal: ↑x = ↑y ↔ x = y
-- QuaternionAlgebra.zero_re
@[simp] theorem zero_re : (0 : ℍ[R,c₁,c₂]).re = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Quaternion.re 0 = 0
-- QuaternionAlgebra.zero_imI
@[simp] theorem zero_imI : (0 : ℍ[R,c₁,c₂]).imI = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Quaternion.imI 0 = 0
-- QuaternionAlgebra.zero_imJ
@[simp] theorem zero_imJ : (0 : ℍ[R,c₁,c₂]).imJ = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Quaternion.imJ 0 = 0
-- QuaternionAlgebra.zero_imK
@[simp] theorem zero_imK : (0 : ℍ[R,c₁,c₂]).imK = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Quaternion.imK 0 = 0
-- QuaternionAlgebra.zero_im
@[simp] theorem zero_im : (0 : ℍ[R,c₁,c₂]).im = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: QuaternionAlgebra.im 0 = 0
-- QuaternionAlgebra.coe_zero
@[simp, norm_cast]
theorem coe_zero : ((0 : R) : ℍ[R,c₁,c₂]) = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: ↑0 = 0
-- QuaternionAlgebra.one_re
@[simp] theorem one_re : (1 : ℍ[R,c₁,c₂]).re = 1 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Quaternion.re 1 = 1
-- QuaternionAlgebra.one_imI
@[simp] theorem one_imI : (1 : ℍ[R,c₁,c₂]).imI = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Quaternion.imI 1 = 0
-- QuaternionAlgebra.one_imJ
@[simp] theorem one_imJ : (1 : ℍ[R,c₁,c₂]).imJ = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Quaternion.imJ 1 = 0
-- QuaternionAlgebra.one_imK
@[simp] theorem one_imK : (1 : ℍ[R,c₁,c₂]).imK = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: Quaternion.imK 1 = 0
-- QuaternionAlgebra.one_im
@[simp] theorem one_im : (1 : ℍ[R,c₁,c₂]).im = 0 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: QuaternionAlgebra.im 1 = 0
-- QuaternionAlgebra.coe_one
@[simp, norm_cast]
theorem coe_one : ((1 : R) : ℍ[R,c₁,c₂]) = 1 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R}
Goal: ↑1 = 1
-- QuaternionAlgebra.add_re
@[simp] theorem add_re : (a + b).re = a.re + b.re 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a b : ℍ[R,c₁,c₂])
Goal: (a + b).re = a.re + b.re
-- QuaternionAlgebra.add_imI
@[simp] theorem add_imI : (a + b).imI = a.imI + b.imI 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a b : ℍ[R,c₁,c₂])
Goal: (a + b).imI = a.imI + b.imI
-- QuaternionAlgebra.add_imJ
@[simp] theorem add_imJ : (a + b).imJ = a.imJ + b.imJ 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a b : ℍ[R,c₁,c₂])
Goal: (a + b).imJ = a.imJ + b.imJ
-- QuaternionAlgebra.add_imK
@[simp] theorem add_imK : (a + b).imK = a.imK + b.imK 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a b : ℍ[R,c₁,c₂])
Goal: (a + b).imK = a.imK + b.imK
-- QuaternionAlgebra.add_im
@[simp] theorem add_im : (a + b).im = a.im + b.im 
Arguments: {R : Type u_3} [CommRing R] {c₁ c₂ : R} (a b : ℍ[R,c₁,c₂])
Goal: (a + b).im = a.im + b.im