ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- List.permutations'Aux_get_zero
@[deprecated (since := "2024-06-12")]
theorem permutations'Aux_get_zero (s : List α) (x : α)
    (hn : 0 < length (permutations'Aux x s) := (by simp)) :
    (permutations'Aux x s).get ⟨0, hn⟩ = x :: s 
Arguments: {α : Type u_1} (s : List α) (x : α) (hn : 0 < (List.permutations'Aux x s).length := ⋯)
Goal: (List.permutations'Aux x s).get ⟨0, hn⟩ = x :: s
-- List.injective_permutations'Aux
theorem injective_permutations'Aux (x : α) : Function.Injective (permutations'Aux x) 
Arguments: {α : Type u_1} (x : α)
Goal: Function.Injective (List.permutations'Aux x)
-- List.nodup_permutations'Aux_of_not_mem
theorem nodup_permutations'Aux_of_not_mem (s : List α) (x : α) (hx : x ∉ s) :
    Nodup (permutations'Aux x s) 
Arguments: {α : Type u_1} (s : List α) (x : α) (hx : x ∉ s)
Goal: (List.permutations'Aux x s).Nodup
-- List.nodup_permutations'Aux_iff
theorem nodup_permutations'Aux_iff {s : List α} {x : α} : Nodup (permutations'Aux x s) ↔ x ∉ s 
Arguments: {α : Type u_1} {s : List α} {x : α}
Goal: (List.permutations'Aux x s).Nodup ↔ x ∉ s
-- List.nodup_permutations
theorem nodup_permutations (s : List α) (hs : Nodup s) : Nodup s.permutations 
Arguments: {α : Type u_1} (s : List α) (hs : s.Nodup)
Goal: s.permutations.Nodup
-- Set.mem_op
@[simp]
theorem mem_op {s : Set α} {a : αᵒᵖ} : a ∈ s.op ↔ unop a ∈ s 
Arguments: {α : Type u_1} {s : Set α} {a : αᵒᵖ}
Goal: a ∈ s.op ↔ Opposite.unop a ∈ s
-- Set.op_mem_op
@[simp 1100]
theorem op_mem_op {s : Set α} {a : α} : op a ∈ s.op ↔ a ∈ s 
Arguments: {α : Type u_1} {s : Set α} {a : α}
Goal: Opposite.op a ∈ s.op ↔ a ∈ s
-- Set.mem_unop
@[simp]
theorem mem_unop {s : Set αᵒᵖ} {a : α} : a ∈ s.unop ↔ op a ∈ s 
Arguments: {α : Type u_1} {s : Set αᵒᵖ} {a : α}
Goal: a ∈ s.unop ↔ Opposite.op a ∈ s
-- Set.unop_mem_unop
@[simp 1100]
theorem unop_mem_unop {s : Set αᵒᵖ} {a : αᵒᵖ} : unop a ∈ s.unop ↔ a ∈ s 
Arguments: {α : Type u_1} {s : Set αᵒᵖ} {a : αᵒᵖ}
Goal: Opposite.unop a ∈ s.unop ↔ a ∈ s
-- Set.op_unop
@[simp]
theorem op_unop (s : Set α) : s.op.unop = s 
Arguments: {α : Type u_1} (s : Set α)
Goal: s.op.unop = s
-- Set.unop_op
@[simp]
theorem unop_op (s : Set αᵒᵖ) : s.unop.op = s 
Arguments: {α : Type u_1} (s : Set αᵒᵖ)
Goal: s.unop.op = s
-- Set.opEquiv_self_apply_coe
@[simps]
def opEquiv_self (s : Set α) : s.op ≃ s 
Arguments: {α : Type u_1} (s : Set α) (x : ↑s.op)
Goal: ↑(s.opEquiv_self x) = Opposite.unop ↑x
-- Set.opEquiv_self_symm_apply_coe
@[simps]
def opEquiv_self (s : Set α) : s.op ≃ s 
Arguments: {α : Type u_1} (s : Set α) (x : ↑s)
Goal: ↑(s.opEquiv_self.symm x) = Opposite.op ↑x
-- Set.opEquiv_symm_apply
@[simps]
def opEquiv : Set α ≃ Set αᵒᵖ 
Arguments: {α : Type u_1} (s : Set αᵒᵖ)
Goal: Set.opEquiv.symm s = s.unop
-- Set.opEquiv_apply
@[simps]
def opEquiv : Set α ≃ Set αᵒᵖ 
Arguments: {α : Type u_1} (s : Set α)
Goal: Set.opEquiv s = s.op
-- Set.singleton_op
@[simp]
theorem singleton_op (x : α) : ({x} : Set α).op = {op x} 
Arguments: {α : Type u_1} (x : α)
Goal: {x}.op = {Opposite.op x}
-- Set.singleton_unop
@[simp]
theorem singleton_unop (x : αᵒᵖ) : ({x} : Set αᵒᵖ).unop = {unop x} 
Arguments: {α : Type u_1} (x : αᵒᵖ)
Goal: {x}.unop = {Opposite.unop x}
-- Set.singleton_op_unop
@[simp 1100]
theorem singleton_op_unop (x : α) : ({op x} : Set αᵒᵖ).unop = {x} 
Arguments: {α : Type u_1} (x : α)
Goal: {Opposite.op x}.unop = {x}
-- Set.singleton_unop_op
@[simp 1100]
theorem singleton_unop_op (x : αᵒᵖ) : ({unop x} : Set α).op = {x} 
Arguments: {α : Type u_1} (x : αᵒᵖ)
Goal: {Opposite.unop x}.op = {x}
-- AlgebraicGeometry.StructureSheaf.IsFraction.eq_mk'
theorem IsFraction.eq_mk' {U : Opens (PrimeSpectrum.Top R)} {f : ∀ x : U, Localizations R x}
    (hf : IsFraction f) :
    ∃ r s : R,
      ∀ x : U,
        ∃ hs : s ∉ x.1.asIdeal,
          f x =
            IsLocalization.mk' (Localization.AtPrime _) r
              (⟨s, hs⟩ : (x : PrimeSpectrum.Top R).asIdeal.primeCompl) 
Arguments: {R : Type u} [CommRing R] {U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)} {f : (x : ↥U) → AlgebraicGeometry.StructureSheaf.Localizations R ↑x} (hf : AlgebraicGeometry.StructureSheaf.IsFraction f)
Goal: ∃ r s, ∀ (x : ↥U), ∃ (hs : s ∉ (↑x).asIdeal), f x = IsLocalization.mk' (Localization.AtPrime (↑x).asIdeal) r ⟨s, hs⟩
-- AlgebraicGeometry.StructureSheaf.isLocallyFraction_pred
@[simp]
theorem isLocallyFraction_pred {U : Opens (PrimeSpectrum.Top R)} (f : ∀ x : U, Localizations R x) :
    (isLocallyFraction R).pred f =
      ∀ x : U,
        ∃ (V : _) (_ : x.1 ∈ V) (i : V ⟶ U),
          ∃ r s : R,
            ∀ y : V, ¬s ∈ y.1.asIdeal ∧ f (i y : U) * algebraMap _ _ s = algebraMap _ _ r 
Arguments: (R : Type u) [CommRing R] {U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)} (f : (x : ↥U) → AlgebraicGeometry.StructureSheaf.Localizations R ↑x)
Goal: (AlgebraicGeometry.StructureSheaf.isLocallyFraction R).pred f =
  ∀ (x : ↥U),
    ∃ V,
      ∃ (_ : ↑x ∈ V),
        ∃ i r s,
          ∀ (y : ↥V),
            s ∉ (↑y).asIdeal ∧
              f ((fun x => ⟨↑x, ⋯⟩) y) *
                  (algebraMap R (AlgebraicGeometry.StructureSheaf.Localizations R ↑((fun x => ⟨↑x, ⋯⟩) y))) s =
                (algebraMap R (AlgebraicGeometry.StructureSheaf.Localizations R ↑((fun x => ⟨↑x, ⋯⟩) y))) r
-- AlgebraicGeometry.structurePresheafInCommRing_map_apply
@[simps]
def structurePresheafInCommRing : Presheaf CommRingCat (PrimeSpectrum.Top R) 
Arguments: (R : Type u) [CommRing R] {U V : (TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R))ᵒᵖ} (i : U ⟶ V)
Goal: ∀ (a : (AlgebraicGeometry.structureSheafInType R).val.obj U),
  ((AlgebraicGeometry.structurePresheafInCommRing R).map i) a = (AlgebraicGeometry.structureSheafInType R).val.map i a
-- AlgebraicGeometry.structurePresheafInCommRing_obj
@[simps]
def structurePresheafInCommRing : Presheaf CommRingCat (PrimeSpectrum.Top R) 
Arguments: (R : Type u) [CommRing R] (U : (TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R))ᵒᵖ)
Goal: (AlgebraicGeometry.structurePresheafInCommRing R).obj U =
  CommRingCat.of ((AlgebraicGeometry.structureSheafInType R).val.obj U)
-- AlgebraicGeometry.StructureSheaf.res_apply
@[simp]
theorem res_apply (U V : Opens (PrimeSpectrum.Top R)) (i : V ⟶ U)
    (s : (structureSheaf R).1.obj (op U)) (x : V) :
    ((structureSheaf R).1.map i.op s).1 x = (s.1 (i x) : _) 
Arguments: (R : Type u) [CommRing R] (U V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (i : V ⟶ U) (s : ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj (Opposite.op U))) (x : ↥V)
Goal: ↑(((AlgebraicGeometry.Spec.structureSheaf R).val.map i.op) s) x = ↑s ((fun x => ⟨↑x, ⋯⟩) x)
-- AlgebraicGeometry.StructureSheaf.const_apply
@[simp]
theorem const_apply (f g : R) (U : Opens (PrimeSpectrum.Top R))
    (hu : ∀ x ∈ U, g ∈ (x : PrimeSpectrum.Top R).asIdeal.primeCompl) (x : U) :
    (const R f g U hu).1 x = IsLocalization.mk' _ f ⟨g, hu x x.2⟩ 
Arguments: (R : Type u) [CommRing R] (f g : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu : ∀ x ∈ U, g ∈ x.asIdeal.primeCompl) (x : ↥U)
Goal: ↑(AlgebraicGeometry.StructureSheaf.const R f g U hu) x =
  IsLocalization.mk' (AlgebraicGeometry.StructureSheaf.Localizations R ↑x) f ⟨g, ⋯⟩
-- AlgebraicGeometry.StructureSheaf.const_apply'
theorem const_apply' (f g : R) (U : Opens (PrimeSpectrum.Top R))
    (hu : ∀ x ∈ U, g ∈ (x : PrimeSpectrum.Top R).asIdeal.primeCompl) (x : U)
    (hx : g ∈ (x : PrimeSpectrum.Top R).asIdeal.primeCompl) :
    (const R f g U hu).1 x = IsLocalization.mk' _ f ⟨g, hx⟩ 
Arguments: (R : Type u) [CommRing R] (f g : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu : ∀ x ∈ U, g ∈ x.asIdeal.primeCompl) (x : ↥U) (hx : g ∈ (↑x).asIdeal.primeCompl)
Goal: ↑(AlgebraicGeometry.StructureSheaf.const R f g U hu) x =
  IsLocalization.mk' (AlgebraicGeometry.StructureSheaf.Localizations R ↑x) f ⟨g, hx⟩
-- AlgebraicGeometry.StructureSheaf.exists_const
theorem exists_const (U) (s : (structureSheaf R).1.obj (op U)) (x : PrimeSpectrum.Top R)
    (hx : x ∈ U) :
    ∃ (V : Opens (PrimeSpectrum.Top R)) (_ : x ∈ V) (i : V ⟶ U) (f g : R) (hg : _),
      const R f g V hg = (structureSheaf R).1.map i.op s 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (s : ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj (Opposite.op U))) (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hx : x ∈ U)
Goal: ∃ V,
  ∃ (_ : x ∈ V),
    ∃ i f g,
      ∃ (hg : ∀ x ∈ V, g ∈ x.asIdeal.primeCompl),
        AlgebraicGeometry.StructureSheaf.const R f g V hg = ((AlgebraicGeometry.Spec.structureSheaf R).val.map i.op) s
-- AlgebraicGeometry.StructureSheaf.res_const
@[simp]
theorem res_const (f g : R) (U hu V hv i) :
    (structureSheaf R).1.map i (const R f g U hu) = const R f g V hv 
Arguments: (R : Type u) [CommRing R] (f g : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu : ∀ x ∈ U, g ∈ x.asIdeal.primeCompl) (V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hv : ∀ x ∈ V, g ∈ x.asIdeal.primeCompl) (i : Opposite.op U ⟶ Opposite.op V)
Goal: ((AlgebraicGeometry.Spec.structureSheaf R).val.map i) (AlgebraicGeometry.StructureSheaf.const R f g U hu) =
  AlgebraicGeometry.StructureSheaf.const R f g V hv
-- AlgebraicGeometry.StructureSheaf.res_const'
theorem res_const' (f g : R) (V hv) :
    (structureSheaf R).1.map (homOfLE hv).op (const R f g (PrimeSpectrum.basicOpen g) fun _ => id) =
      const R f g V hv 
Arguments: (R : Type u) [CommRing R] (f g : R) (V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hv : V ≤ PrimeSpectrum.basicOpen g)
Goal: ((AlgebraicGeometry.Spec.structureSheaf R).val.map (CategoryTheory.homOfLE hv).op)
    (AlgebraicGeometry.StructureSheaf.const R f g (PrimeSpectrum.basicOpen g) ⋯) =
  AlgebraicGeometry.StructureSheaf.const R f g V hv
-- AlgebraicGeometry.StructureSheaf.const_zero
theorem const_zero (f : R) (U hu) : const R 0 f U hu = 0 
Arguments: (R : Type u) [CommRing R] (f : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu : ∀ x ∈ U, f ∈ x.asIdeal.primeCompl)
Goal: AlgebraicGeometry.StructureSheaf.const R 0 f U hu = 0
-- AlgebraicGeometry.StructureSheaf.const_self
theorem const_self (f : R) (U hu) : const R f f U hu = 1 
Arguments: (R : Type u) [CommRing R] (f : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu : ∀ x ∈ U, f ∈ x.asIdeal.primeCompl)
Goal: AlgebraicGeometry.StructureSheaf.const R f f U hu = 1
-- AlgebraicGeometry.StructureSheaf.const_one
theorem const_one (U) : (const R 1 1 U fun _ _ => Submonoid.one_mem _) = 1 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R))
Goal: AlgebraicGeometry.StructureSheaf.const R 1 1 U ⋯ = 1
-- AlgebraicGeometry.StructureSheaf.const_add
theorem const_add (f₁ f₂ g₁ g₂ : R) (U hu₁ hu₂) :
    const R f₁ g₁ U hu₁ + const R f₂ g₂ U hu₂ =
      const R (f₁ * g₂ + f₂ * g₁) (g₁ * g₂) U fun x hx =>
        Submonoid.mul_mem _ (hu₁ x hx) (hu₂ x hx) 
Arguments: (R : Type u) [CommRing R] (f₁ f₂ g₁ g₂ : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu₁ : ∀ x ∈ U, g₁ ∈ x.asIdeal.primeCompl) (hu₂ : ∀ x ∈ U, g₂ ∈ x.asIdeal.primeCompl)
Goal: AlgebraicGeometry.StructureSheaf.const R f₁ g₁ U hu₁ + AlgebraicGeometry.StructureSheaf.const R f₂ g₂ U hu₂ =
  AlgebraicGeometry.StructureSheaf.const R (f₁ * g₂ + f₂ * g₁) (g₁ * g₂) U ⋯
-- AlgebraicGeometry.StructureSheaf.const_mul
theorem const_mul (f₁ f₂ g₁ g₂ : R) (U hu₁ hu₂) :
    const R f₁ g₁ U hu₁ * const R f₂ g₂ U hu₂ =
      const R (f₁ * f₂) (g₁ * g₂) U fun x hx => Submonoid.mul_mem _ (hu₁ x hx) (hu₂ x hx) 
Arguments: (R : Type u) [CommRing R] (f₁ f₂ g₁ g₂ : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu₁ : ∀ x ∈ U, g₁ ∈ x.asIdeal.primeCompl) (hu₂ : ∀ x ∈ U, g₂ ∈ x.asIdeal.primeCompl)
Goal: AlgebraicGeometry.StructureSheaf.const R f₁ g₁ U hu₁ * AlgebraicGeometry.StructureSheaf.const R f₂ g₂ U hu₂ =
  AlgebraicGeometry.StructureSheaf.const R (f₁ * f₂) (g₁ * g₂) U ⋯
-- AlgebraicGeometry.StructureSheaf.const_ext
theorem const_ext {f₁ f₂ g₁ g₂ : R} {U hu₁ hu₂} (h : f₁ * g₂ = f₂ * g₁) :
    const R f₁ g₁ U hu₁ = const R f₂ g₂ U hu₂ 
Arguments: (R : Type u) [CommRing R] {f₁ f₂ g₁ g₂ : R} {U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)} {hu₁ : ∀ x ∈ U, g₁ ∈ x.asIdeal.primeCompl} {hu₂ : ∀ x ∈ U, g₂ ∈ x.asIdeal.primeCompl} (h : f₁ * g₂ = f₂ * g₁)
Goal: AlgebraicGeometry.StructureSheaf.const R f₁ g₁ U hu₁ = AlgebraicGeometry.StructureSheaf.const R f₂ g₂ U hu₂
-- AlgebraicGeometry.StructureSheaf.const_congr
theorem const_congr {f₁ f₂ g₁ g₂ : R} {U hu} (hf : f₁ = f₂) (hg : g₁ = g₂) :
    const R f₁ g₁ U hu = const R f₂ g₂ U (hg ▸ hu) 
Arguments: (R : Type u) [CommRing R] {f₁ f₂ g₁ g₂ : R} {U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)} {hu : ∀ x ∈ U, g₁ ∈ x.asIdeal.primeCompl} (hf : f₁ = f₂) (hg : g₁ = g₂)
Goal: AlgebraicGeometry.StructureSheaf.const R f₁ g₁ U hu = AlgebraicGeometry.StructureSheaf.const R f₂ g₂ U ⋯
-- AlgebraicGeometry.StructureSheaf.const_mul_rev
theorem const_mul_rev (f g : R) (U hu₁ hu₂) : const R f g U hu₁ * const R g f U hu₂ = 1 
Arguments: (R : Type u) [CommRing R] (f g : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu₁ : ∀ x ∈ U, g ∈ x.asIdeal.primeCompl) (hu₂ : ∀ x ∈ U, f ∈ x.asIdeal.primeCompl)
Goal: AlgebraicGeometry.StructureSheaf.const R f g U hu₁ * AlgebraicGeometry.StructureSheaf.const R g f U hu₂ = 1
-- AlgebraicGeometry.StructureSheaf.const_mul_cancel
theorem const_mul_cancel (f g₁ g₂ : R) (U hu₁ hu₂) :
    const R f g₁ U hu₁ * const R g₁ g₂ U hu₂ = const R f g₂ U hu₂ 
Arguments: (R : Type u) [CommRing R] (f g₁ g₂ : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu₁ : ∀ x ∈ U, g₁ ∈ x.asIdeal.primeCompl) (hu₂ : ∀ x ∈ U, g₂ ∈ x.asIdeal.primeCompl)
Goal: AlgebraicGeometry.StructureSheaf.const R f g₁ U hu₁ * AlgebraicGeometry.StructureSheaf.const R g₁ g₂ U hu₂ =
  AlgebraicGeometry.StructureSheaf.const R f g₂ U hu₂
-- AlgebraicGeometry.StructureSheaf.const_mul_cancel'
theorem const_mul_cancel' (f g₁ g₂ : R) (U hu₁ hu₂) :
    const R g₁ g₂ U hu₂ * const R f g₁ U hu₁ = const R f g₂ U hu₂ 
Arguments: (R : Type u) [CommRing R] (f g₁ g₂ : R) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hu₁ : ∀ x ∈ U, g₁ ∈ x.asIdeal.primeCompl) (hu₂ : ∀ x ∈ U, g₂ ∈ x.asIdeal.primeCompl)
Goal: AlgebraicGeometry.StructureSheaf.const R g₁ g₂ U hu₂ * AlgebraicGeometry.StructureSheaf.const R f g₁ U hu₁ =
  AlgebraicGeometry.StructureSheaf.const R f g₂ U hu₂
-- AlgebraicGeometry.StructureSheaf.toOpen_res
@[simp]
theorem toOpen_res (U V : Opens (PrimeSpectrum.Top R)) (i : V ⟶ U) :
    toOpen R U ≫ (structureSheaf R).1.map i.op = toOpen R V 
Arguments: (R : Type u) [CommRing R] (U V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (i : V ⟶ U)
Goal: AlgebraicGeometry.StructureSheaf.toOpen R U ≫ (AlgebraicGeometry.Spec.structureSheaf R).val.map i.op =
  AlgebraicGeometry.StructureSheaf.toOpen R V
-- AlgebraicGeometry.StructureSheaf.toOpen_apply
@[simp]
theorem toOpen_apply (U : Opens (PrimeSpectrum.Top R)) (f : R) (x : U) :
    (toOpen R U f).1 x = algebraMap _ _ f 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (f : R) (x : ↥U)
Goal: ↑((AlgebraicGeometry.StructureSheaf.toOpen R U) f) x =
  (algebraMap R (AlgebraicGeometry.StructureSheaf.Localizations R ↑x)) f
-- AlgebraicGeometry.StructureSheaf.toOpen_eq_const
theorem toOpen_eq_const (U : Opens (PrimeSpectrum.Top R)) (f : R) :
    toOpen R U f = const R f 1 U fun x _ => (Ideal.ne_top_iff_one _).1 x.2.1 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (f : R)
Goal: (AlgebraicGeometry.StructureSheaf.toOpen R U) f = AlgebraicGeometry.StructureSheaf.const R f 1 U ⋯
-- AlgebraicGeometry.StructureSheaf.toOpen_germ
@[simp]
theorem toOpen_germ (U : Opens (PrimeSpectrum.Top R)) (x : U) :
    toOpen R U ≫ (structureSheaf R).presheaf.germ x = toStalk R x 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (x : ↥U)
Goal: AlgebraicGeometry.StructureSheaf.toOpen R U ≫ (AlgebraicGeometry.Spec.structureSheaf R).presheaf.germ x =
  AlgebraicGeometry.StructureSheaf.toStalk R ↑x
-- AlgebraicGeometry.StructureSheaf.germ_toOpen
@[simp]
theorem germ_toOpen (U : Opens (PrimeSpectrum.Top R)) (x : U) (f : R) :
    (structureSheaf R).presheaf.germ x (toOpen R U f) = toStalk R x f 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (x : ↥U) (f : R)
Goal: ((AlgebraicGeometry.Spec.structureSheaf R).presheaf.germ x) ((AlgebraicGeometry.StructureSheaf.toOpen R U) f) =
  (AlgebraicGeometry.StructureSheaf.toStalk R ↑x) f
-- AlgebraicGeometry.StructureSheaf.germ_to_top
theorem germ_to_top (x : PrimeSpectrum.Top R) (f : R) :
    (structureSheaf R).presheaf.germ (⟨x, trivial⟩ : (⊤ : Opens (PrimeSpectrum.Top R)))
        (toOpen R ⊤ f) =
      toStalk R x f 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (f : R)
Goal: ((AlgebraicGeometry.Spec.structureSheaf R).presheaf.germ ⟨x, trivial⟩)
    ((AlgebraicGeometry.StructureSheaf.toOpen R ⊤) f) =
  (AlgebraicGeometry.StructureSheaf.toStalk R x) f
-- AlgebraicGeometry.StructureSheaf.isUnit_to_basicOpen_self
theorem isUnit_to_basicOpen_self (f : R) : IsUnit (toOpen R (PrimeSpectrum.basicOpen f) f) 
Arguments: (R : Type u) [CommRing R] (f : R)
Goal: IsUnit ((AlgebraicGeometry.StructureSheaf.toOpen R (PrimeSpectrum.basicOpen f)) f)
-- AlgebraicGeometry.StructureSheaf.isUnit_toStalk
theorem isUnit_toStalk (x : PrimeSpectrum.Top R) (f : x.asIdeal.primeCompl) :
    IsUnit (toStalk R x (f : R)) 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (f : ↥x.asIdeal.primeCompl)
Goal: IsUnit ((AlgebraicGeometry.StructureSheaf.toStalk R x) ↑f)
-- AlgebraicGeometry.StructureSheaf.localizationToStalk_of
@[simp]
theorem localizationToStalk_of (x : PrimeSpectrum.Top R) (f : R) :
    localizationToStalk R x (algebraMap _ (Localization _) f) = toStalk R x f 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (f : R)
Goal: (AlgebraicGeometry.StructureSheaf.localizationToStalk R x) ((algebraMap R (Localization x.asIdeal.primeCompl)) f) =
  (AlgebraicGeometry.StructureSheaf.toStalk R x) f
-- AlgebraicGeometry.StructureSheaf.localizationToStalk_mk'
@[simp]
theorem localizationToStalk_mk' (x : PrimeSpectrum.Top R) (f : R) (s : x.asIdeal.primeCompl) :
    localizationToStalk R x (IsLocalization.mk' (Localization.AtPrime x.asIdeal) f s) =
      (structureSheaf R).presheaf.germ (⟨x, s.2⟩ : PrimeSpectrum.basicOpen (s : R))
        (const R f s (PrimeSpectrum.basicOpen s) fun _ => id) 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (f : R) (s : ↥x.asIdeal.primeCompl)
Goal: (AlgebraicGeometry.StructureSheaf.localizationToStalk R x) (IsLocalization.mk' (Localization.AtPrime x.asIdeal) f s) =
  ((AlgebraicGeometry.Spec.structureSheaf R).presheaf.germ ⟨x, ⋯⟩)
    (AlgebraicGeometry.StructureSheaf.const R f (↑s) (PrimeSpectrum.basicOpen ↑s) ⋯)
-- AlgebraicGeometry.StructureSheaf.coe_openToLocalization
@[simp]
theorem coe_openToLocalization (U : Opens (PrimeSpectrum.Top R)) (x : PrimeSpectrum.Top R)
    (hx : x ∈ U) :
    (openToLocalization R U x hx :
        (structureSheaf R).1.obj (op U) → Localization.AtPrime x.asIdeal) =
      fun s => (s.1 ⟨x, hx⟩ : _) 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hx : x ∈ U)
Goal: ⇑(AlgebraicGeometry.StructureSheaf.openToLocalization R U x hx) = fun s => ↑s ⟨x, hx⟩
-- AlgebraicGeometry.StructureSheaf.openToLocalization_apply
theorem openToLocalization_apply (U : Opens (PrimeSpectrum.Top R)) (x : PrimeSpectrum.Top R)
    (hx : x ∈ U) (s : (structureSheaf R).1.obj (op U)) :
    openToLocalization R U x hx s = (s.1 ⟨x, hx⟩ : _) 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hx : x ∈ U) (s : ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj (Opposite.op U)))
Goal: (AlgebraicGeometry.StructureSheaf.openToLocalization R U x hx) s = ↑s ⟨x, hx⟩
-- AlgebraicGeometry.StructureSheaf.germ_comp_stalkToFiberRingHom
@[simp]
theorem germ_comp_stalkToFiberRingHom (U : Opens (PrimeSpectrum.Top R)) (x : U) :
    (structureSheaf R).presheaf.germ x ≫ stalkToFiberRingHom R x = openToLocalization R U x x.2 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (x : ↥U)
Goal: (AlgebraicGeometry.Spec.structureSheaf R).presheaf.germ x ≫ AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R ↑x =
  AlgebraicGeometry.StructureSheaf.openToLocalization R U ↑x ⋯
-- AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom_germ'
@[simp]
theorem stalkToFiberRingHom_germ' (U : Opens (PrimeSpectrum.Top R)) (x : PrimeSpectrum.Top R)
    (hx : x ∈ U) (s : (structureSheaf R).1.obj (op U)) :
    stalkToFiberRingHom R x ((structureSheaf R).presheaf.germ ⟨x, hx⟩ s) = (s.1 ⟨x, hx⟩ : _) 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (hx : x ∈ U) (s : ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj (Opposite.op U)))
Goal: (AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R x)
    (((AlgebraicGeometry.Spec.structureSheaf R).presheaf.germ ⟨x, hx⟩) s) =
  ↑s ⟨x, hx⟩
-- AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom_germ
@[simp]
theorem stalkToFiberRingHom_germ (U : Opens (PrimeSpectrum.Top R)) (x : U)
    (s : (structureSheaf R).1.obj (op U)) :
    stalkToFiberRingHom R x ((structureSheaf R).presheaf.germ x s) = s.1 x 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (x : ↥U) (s : ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj (Opposite.op U)))
Goal: (AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R ↑x)
    (((AlgebraicGeometry.Spec.structureSheaf R).presheaf.germ x) s) =
  ↑s x
-- AlgebraicGeometry.StructureSheaf.toStalk_comp_stalkToFiberRingHom
@[simp]
theorem toStalk_comp_stalkToFiberRingHom (x : PrimeSpectrum.Top R) :
    -- Porting note: now `algebraMap _ _` needs to be explicitly typed
    toStalk R x ≫ stalkToFiberRingHom R x = algebraMap R (Localization.AtPrime x.asIdeal) 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R))
Goal: AlgebraicGeometry.StructureSheaf.toStalk R x ≫ AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R x =
  algebraMap R (Localization.AtPrime x.asIdeal)
-- AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom_toStalk
@[simp]
theorem stalkToFiberRingHom_toStalk (x : PrimeSpectrum.Top R) (f : R) :
    -- Porting note: now `algebraMap _ _` needs to be explicitly typed
    stalkToFiberRingHom R x (toStalk R x f) = algebraMap R (Localization.AtPrime x.asIdeal) f 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (f : R)
Goal: (AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R x) ((AlgebraicGeometry.StructureSheaf.toStalk R x) f) =
  (algebraMap R (Localization.AtPrime x.asIdeal)) f
-- AlgebraicGeometry.StructureSheaf.stalkIso_hom
@[simps]
def stalkIso (x : PrimeSpectrum.Top R) :
    (structureSheaf R).presheaf.stalk x ≅ CommRingCat.of (Localization.AtPrime x.asIdeal) 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R))
Goal: (AlgebraicGeometry.StructureSheaf.stalkIso R x).hom = AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R x
-- AlgebraicGeometry.StructureSheaf.stalkIso_inv
@[simps]
def stalkIso (x : PrimeSpectrum.Top R) :
    (structureSheaf R).presheaf.stalk x ≅ CommRingCat.of (Localization.AtPrime x.asIdeal) 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R))
Goal: (AlgebraicGeometry.StructureSheaf.stalkIso R x).inv = AlgebraicGeometry.StructureSheaf.localizationToStalk R x