ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom_localizationToStalk
@[simp, reassoc]
theorem stalkToFiberRingHom_localizationToStalk (x : PrimeSpectrum.Top R) :
    stalkToFiberRingHom R x ≫ localizationToStalk R x = 𝟙 _ 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R))
Goal: AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R x ≫ AlgebraicGeometry.StructureSheaf.localizationToStalk R x =
  𝟙 ((AlgebraicGeometry.Spec.structureSheaf R).presheaf.stalk x)
-- AlgebraicGeometry.StructureSheaf.localizationToStalk_stalkToFiberRingHom
@[simp, reassoc]
theorem localizationToStalk_stalkToFiberRingHom (x : PrimeSpectrum.Top R) :
    localizationToStalk R x ≫ stalkToFiberRingHom R x = 𝟙 _ 
Arguments: (R : Type u) [CommRing R] (x : ↑(AlgebraicGeometry.PrimeSpectrum.Top R))
Goal: AlgebraicGeometry.StructureSheaf.localizationToStalk R x ≫ AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R x =
  𝟙 (CommRingCat.of (Localization.AtPrime x.asIdeal))
-- AlgebraicGeometry.StructureSheaf.toBasicOpen_mk'
@[simp]
theorem toBasicOpen_mk' (s f : R) (g : Submonoid.powers s) :
    toBasicOpen R s (IsLocalization.mk' (Localization.Away s) f g) =
      const R f g (PrimeSpectrum.basicOpen s) fun x hx => Submonoid.powers_le.2 hx g.2 
Arguments: (R : Type u) [CommRing R] (s f : R) (g : ↥(Submonoid.powers s))
Goal: (AlgebraicGeometry.StructureSheaf.toBasicOpen R s) (IsLocalization.mk' (Localization.Away s) f g) =
  AlgebraicGeometry.StructureSheaf.const R f (↑g) (PrimeSpectrum.basicOpen s) ⋯
-- AlgebraicGeometry.StructureSheaf.localization_toBasicOpen
@[simp]
theorem localization_toBasicOpen (f : R) :
    RingHom.comp (toBasicOpen R f) (algebraMap R (Localization.Away f)) =
    toOpen R (PrimeSpectrum.basicOpen f) 
Arguments: (R : Type u) [CommRing R] (f : R)
Goal: (AlgebraicGeometry.StructureSheaf.toBasicOpen R f).comp (algebraMap R (Localization.Away f)) =
  AlgebraicGeometry.StructureSheaf.toOpen R (PrimeSpectrum.basicOpen f)
-- AlgebraicGeometry.StructureSheaf.toBasicOpen_to_map
@[simp]
theorem toBasicOpen_to_map (s f : R) :
    toBasicOpen R s (algebraMap R (Localization.Away s) f) =
      const R f 1 (PrimeSpectrum.basicOpen s) fun _ _ => Submonoid.one_mem _ 
Arguments: (R : Type u) [CommRing R] (s f : R)
Goal: (AlgebraicGeometry.StructureSheaf.toBasicOpen R s) ((algebraMap R (Localization.Away s)) f) =
  AlgebraicGeometry.StructureSheaf.const R f 1 (PrimeSpectrum.basicOpen s) ⋯
-- AlgebraicGeometry.StructureSheaf.toBasicOpen_injective
theorem toBasicOpen_injective (f : R) : Function.Injective (toBasicOpen R f) 
Arguments: (R : Type u) [CommRing R] (f : R)
Goal: Function.Injective ⇑(AlgebraicGeometry.StructureSheaf.toBasicOpen R f)
-- AlgebraicGeometry.StructureSheaf.locally_const_basicOpen
theorem locally_const_basicOpen (U : Opens (PrimeSpectrum.Top R))
    (s : (structureSheaf R).1.obj (op U)) (x : U) :
    ∃ (f g : R) (i : PrimeSpectrum.basicOpen g ⟶ U), x.1 ∈ PrimeSpectrum.basicOpen g ∧
      (const R f g (PrimeSpectrum.basicOpen g) fun y hy => hy) =
      (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 : ↥U)
Goal: ∃ f g i,
  ↑x ∈ PrimeSpectrum.basicOpen g ∧
    AlgebraicGeometry.StructureSheaf.const R f g (PrimeSpectrum.basicOpen g) ⋯ =
      ((AlgebraicGeometry.Spec.structureSheaf R).val.map i.op) s
-- AlgebraicGeometry.StructureSheaf.normalize_finite_fraction_representation
theorem normalize_finite_fraction_representation (U : Opens (PrimeSpectrum.Top R))
    (s : (structureSheaf R).1.obj (op U)) {ι : Type*} (t : Finset ι) (a h : ι → R)
    (iDh : ∀ i : ι, PrimeSpectrum.basicOpen (h i) ⟶ U)
    (h_cover : U ≤ ⨆ i ∈ t, PrimeSpectrum.basicOpen (h i))
    (hs :
      ∀ i : ι,
        (const R (a i) (h i) (PrimeSpectrum.basicOpen (h i)) fun y hy => hy) =
          (structureSheaf R).1.map (iDh i).op s) :
    ∃ (a' h' : ι → R) (iDh' : ∀ i : ι, PrimeSpectrum.basicOpen (h' i) ⟶ U),
      (U ≤ ⨆ i ∈ t, PrimeSpectrum.basicOpen (h' i)) ∧
        (∀ (i) (_ : i ∈ t) (j) (_ : j ∈ t), a' i * h' j = h' i * a' j) ∧
          ∀ i ∈ t,
            (structureSheaf R).1.map (iDh' i).op s =
              const R (a' i) (h' i) (PrimeSpectrum.basicOpen (h' i)) fun y hy => hy 
Arguments: (R : Type u) [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (s : ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj (Opposite.op U))) {ι : Type u_1} (t : Finset ι) (a h : ι → R) (iDh : (i : ι) → PrimeSpectrum.basicOpen (h i) ⟶ U) (h_cover : U ≤ ⨆ i ∈ t, PrimeSpectrum.basicOpen (h i)) (hs :
  ∀ (i : ι),
    AlgebraicGeometry.StructureSheaf.const R (a i) (h i) (PrimeSpectrum.basicOpen (h i)) ⋯ =
      ((AlgebraicGeometry.Spec.structureSheaf R).val.map (iDh i).op) s)
Goal: ∃ a' h' iDh',
  U ≤ ⨆ i ∈ t, PrimeSpectrum.basicOpen (h' i) ∧
    (∀ i ∈ t, ∀ j ∈ t, a' i * h' j = h' i * a' j) ∧
      ∀ i ∈ t,
        ((AlgebraicGeometry.Spec.structureSheaf R).val.map (iDh' i).op) s =
          AlgebraicGeometry.StructureSheaf.const R (a' i) (h' i) (PrimeSpectrum.basicOpen (h' i)) ⋯
-- AlgebraicGeometry.StructureSheaf.toBasicOpen_surjective
theorem toBasicOpen_surjective (f : R) : Function.Surjective (toBasicOpen R f) 
Arguments: (R : Type u) [CommRing R] (f : R)
Goal: Function.Surjective ⇑(AlgebraicGeometry.StructureSheaf.toBasicOpen R f)
-- AlgebraicGeometry.StructureSheaf.stalkAlgebra_map
@[simp]
theorem stalkAlgebra_map (p : PrimeSpectrum R) (r : R) :
    algebraMap R ((structureSheaf R).presheaf.stalk p) r = toStalk R p r 
Arguments: (R : Type u) [CommRing R] (p : PrimeSpectrum R) (r : R)
Goal: (algebraMap R ↑((AlgebraicGeometry.Spec.structureSheaf R).presheaf.stalk p)) r =
  (AlgebraicGeometry.StructureSheaf.toStalk R p) r
-- AlgebraicGeometry.StructureSheaf.openAlgebra_map
@[simp]
theorem openAlgebra_map (U : (Opens (PrimeSpectrum R))ᵒᵖ) (r : R) :
    algebraMap R ((structureSheaf R).val.obj U) r = toOpen R (unop U) r 
Arguments: (R : Type u) [CommRing R] (U : (TopologicalSpace.Opens (PrimeSpectrum R))ᵒᵖ) (r : R)
Goal: (algebraMap R ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj U)) r =
  (AlgebraicGeometry.StructureSheaf.toOpen R (Opposite.unop U)) r
-- AlgebraicGeometry.StructureSheaf.to_global_factors
@[elementwise]
theorem to_global_factors :
    toOpen R ⊤ =
      CommRingCat.ofHom (algebraMap R (Localization.Away (1 : R))) ≫
        toBasicOpen R (1 : R) ≫
        (structureSheaf R).1.map (eqToHom PrimeSpectrum.basicOpen_one.symm).op 
Arguments: (R : Type u) [CommRing R]
Goal: AlgebraicGeometry.StructureSheaf.toOpen R ⊤ =
  CommRingCat.ofHom (algebraMap R (Localization.Away 1)) ≫
    AlgebraicGeometry.StructureSheaf.toBasicOpen R 1 ≫
      (AlgebraicGeometry.Spec.structureSheaf R).val.map (CategoryTheory.eqToHom ⋯).op
-- AlgebraicGeometry.StructureSheaf.globalSectionsIso_inv
-- Porting note: was @[simps (config := { rhsMd := Tactic.Transparency.semireducible })]
@[simps!]
def globalSectionsIso : CommRingCat.of R ≅ (structureSheaf R).1.obj (op ⊤) 
Arguments: (R : Type u) [CommRing R]
Goal: (AlgebraicGeometry.StructureSheaf.globalSectionsIso R).inv =
  CategoryTheory.inv (AlgebraicGeometry.StructureSheaf.toOpen R ⊤)
-- AlgebraicGeometry.StructureSheaf.globalSectionsIso_hom_apply_coe
-- Porting note: was @[simps (config := { rhsMd := Tactic.Transparency.semireducible })]
@[simps!]
def globalSectionsIso : CommRingCat.of R ≅ (structureSheaf R).1.obj (op ⊤) 
Arguments: (R : Type u) [CommRing R] (f : ↑(CommRingCat.of R)) (x : ↥(Opposite.unop (Opposite.op ⊤)))
Goal: ↑((AlgebraicGeometry.StructureSheaf.globalSectionsIso R).hom f) x =
  (algebraMap R (AlgebraicGeometry.StructureSheaf.Localizations R ↑x)) f
-- AlgebraicGeometry.StructureSheaf.globalSectionsIso_hom
@[simp]
theorem globalSectionsIso_hom (R : CommRingCat) : (globalSectionsIso R).hom = toOpen R ⊤ 
Arguments: (R : CommRingCat)
Goal: (AlgebraicGeometry.StructureSheaf.globalSectionsIso ↑R).hom = AlgebraicGeometry.StructureSheaf.toOpen ↑R ⊤
-- AlgebraicGeometry.StructureSheaf.toStalk_stalkSpecializes
@[simp, reassoc, elementwise]
theorem toStalk_stalkSpecializes {R : Type*} [CommRing R] {x y : PrimeSpectrum R} (h : x ⤳ y) :
    toStalk R y ≫ (structureSheaf R).presheaf.stalkSpecializes h = toStalk R x 
Arguments: {R : Type u_1} [CommRing R] {x y : PrimeSpectrum R} (h : x ⤳ y)
Goal: AlgebraicGeometry.StructureSheaf.toStalk R y ≫ (AlgebraicGeometry.Spec.structureSheaf R).presheaf.stalkSpecializes h =
  AlgebraicGeometry.StructureSheaf.toStalk R x
-- AlgebraicGeometry.StructureSheaf.localizationToStalk_stalkSpecializes
@[simp, reassoc, elementwise]
theorem localizationToStalk_stalkSpecializes {R : Type*} [CommRing R] {x y : PrimeSpectrum R}
    (h : x ⤳ y) :
    StructureSheaf.localizationToStalk R y ≫ (structureSheaf R).presheaf.stalkSpecializes h =
      CommRingCat.ofHom (PrimeSpectrum.localizationMapOfSpecializes h) ≫
        StructureSheaf.localizationToStalk R x 
Arguments: {R : Type u_1} [CommRing R] {x y : PrimeSpectrum R} (h : x ⤳ y)
Goal: AlgebraicGeometry.StructureSheaf.localizationToStalk R y ≫
    (AlgebraicGeometry.Spec.structureSheaf R).presheaf.stalkSpecializes h =
  CommRingCat.ofHom (PrimeSpectrum.localizationMapOfSpecializes h) ≫
    AlgebraicGeometry.StructureSheaf.localizationToStalk R x
-- AlgebraicGeometry.StructureSheaf.stalkSpecializes_stalk_to_fiber
@[simp, reassoc, elementwise]
theorem stalkSpecializes_stalk_to_fiber {R : Type*} [CommRing R] {x y : PrimeSpectrum R}
    (h : x ⤳ y) :
    (structureSheaf R).presheaf.stalkSpecializes h ≫ StructureSheaf.stalkToFiberRingHom R x =
      StructureSheaf.stalkToFiberRingHom R y ≫
      -- Porting note: `PrimeSpectrum.localizationMapOfSpecializes h` by itself is interpreted as a
      -- ring homomorphism, so it is changed in a way to force it being interpreted as categorical
      -- arrow.
      (show CommRingCat.of (Localization.AtPrime y.asIdeal) ⟶
        CommRingCat.of (Localization.AtPrime x.asIdeal)
        from PrimeSpectrum.localizationMapOfSpecializes h) 
Arguments: {R : Type u_1} [CommRing R] {x y : PrimeSpectrum R} (h : x ⤳ y)
Goal: (AlgebraicGeometry.Spec.structureSheaf R).presheaf.stalkSpecializes h ≫
    AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R x =
  AlgebraicGeometry.StructureSheaf.stalkToFiberRingHom R y ≫
    let_fun this := PrimeSpectrum.localizationMapOfSpecializes h;
    this
-- AlgebraicGeometry.StructureSheaf.comapFunIsLocallyFraction
theorem comapFunIsLocallyFraction (f : R →+* S) (U : Opens (PrimeSpectrum.Top R))
    (V : Opens (PrimeSpectrum.Top S)) (hUV : V.1 ⊆ PrimeSpectrum.comap f ⁻¹' U.1)
    (s : ∀ x : U, Localizations R x) (hs : (isLocallyFraction R).toPrelocalPredicate.pred s) :
    (isLocallyFraction S).toPrelocalPredicate.pred (comapFun f U V hUV s) 
Arguments: {R : Type u} [CommRing R] {S : Type u} [CommRing S] (f : R →+* S) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top S)) (hUV : V.carrier ⊆ ⇑(PrimeSpectrum.comap f) ⁻¹' U.carrier) (s : (x : ↥U) → AlgebraicGeometry.StructureSheaf.Localizations R ↑x) (hs : (AlgebraicGeometry.StructureSheaf.isLocallyFraction R).pred s)
Goal: (AlgebraicGeometry.StructureSheaf.isLocallyFraction S).pred (AlgebraicGeometry.StructureSheaf.comapFun f U V hUV s)
-- AlgebraicGeometry.StructureSheaf.comap_apply
@[simp]
theorem comap_apply (f : R →+* S) (U : Opens (PrimeSpectrum.Top R))
    (V : Opens (PrimeSpectrum.Top S)) (hUV : V.1 ⊆ PrimeSpectrum.comap f ⁻¹' U.1)
    (s : (structureSheaf R).1.obj (op U)) (p : V) :
    (comap f U V hUV s).1 p =
      Localization.localRingHom (PrimeSpectrum.comap f p.1).asIdeal _ f rfl
        (s.1 ⟨PrimeSpectrum.comap f p.1, hUV p.2⟩ : _) 
Arguments: {R : Type u} [CommRing R] {S : Type u} [CommRing S] (f : R →+* S) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top S)) (hUV : V.carrier ⊆ ⇑(PrimeSpectrum.comap f) ⁻¹' U.carrier) (s : ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj (Opposite.op U))) (p : ↥V)
Goal: ↑((AlgebraicGeometry.StructureSheaf.comap f U V hUV) s) p =
  (Localization.localRingHom ((PrimeSpectrum.comap f) ↑p).asIdeal (↑p).asIdeal f ⋯) (↑s ⟨(PrimeSpectrum.comap f) ↑p, ⋯⟩)
-- AlgebraicGeometry.StructureSheaf.comap_const
theorem comap_const (f : R →+* S) (U : Opens (PrimeSpectrum.Top R))
    (V : Opens (PrimeSpectrum.Top S)) (hUV : V.1 ⊆ PrimeSpectrum.comap f ⁻¹' U.1) (a b : R)
    (hb : ∀ x : PrimeSpectrum R, x ∈ U → b ∈ x.asIdeal.primeCompl) :
    comap f U V hUV (const R a b U hb) =
      const S (f a) (f b) V fun p hpV => hb (PrimeSpectrum.comap f p) (hUV hpV) 
Arguments: {R : Type u} [CommRing R] {S : Type u} [CommRing S] (f : R →+* S) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top S)) (hUV : V.carrier ⊆ ⇑(PrimeSpectrum.comap f) ⁻¹' U.carrier) (a b : R) (hb : ∀ x ∈ U, b ∈ x.asIdeal.primeCompl)
Goal: (AlgebraicGeometry.StructureSheaf.comap f U V hUV) (AlgebraicGeometry.StructureSheaf.const R a b U hb) =
  AlgebraicGeometry.StructureSheaf.const S (f a) (f b) V ⋯
-- AlgebraicGeometry.StructureSheaf.comap_id_eq_map
theorem comap_id_eq_map (U V : Opens (PrimeSpectrum.Top R)) (iVU : V ⟶ U) :
    (comap (RingHom.id R) U V fun p hpV => leOfHom iVU <| hpV) =
      (structureSheaf R).1.map iVU.op 
Arguments: {R : Type u} [CommRing R] (U V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (iVU : V ⟶ U)
Goal: AlgebraicGeometry.StructureSheaf.comap (RingHom.id R) U V ⋯ = (AlgebraicGeometry.Spec.structureSheaf R).val.map iVU.op
-- AlgebraicGeometry.StructureSheaf.comap_id
theorem comap_id {U V : Opens (PrimeSpectrum.Top R)} (hUV : U = V) :
    (comap (RingHom.id R) U V fun p hpV => by rwa [hUV, PrimeSpectrum.comap_id]) =
      eqToHom (show (structureSheaf R).1.obj (op U) = _ by rw [hUV]) 
Arguments: {R : Type u} [CommRing R] {U V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)} (hUV : U = V)
Goal: AlgebraicGeometry.StructureSheaf.comap (RingHom.id R) U V ⋯ = CategoryTheory.eqToHom ⋯
-- AlgebraicGeometry.StructureSheaf.comap_id'
@[simp]
theorem comap_id' (U : Opens (PrimeSpectrum.Top R)) :
    (comap (RingHom.id R) U U fun p hpU => by rwa [PrimeSpectrum.comap_id]) = RingHom.id _ 
Arguments: {R : Type u} [CommRing R] (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R))
Goal: AlgebraicGeometry.StructureSheaf.comap (RingHom.id R) U U ⋯ =
  RingHom.id ↑((AlgebraicGeometry.Spec.structureSheaf R).val.obj (Opposite.op U))
-- AlgebraicGeometry.StructureSheaf.comap_comp
theorem comap_comp (f : R →+* S) (g : S →+* P) (U : Opens (PrimeSpectrum.Top R))
    (V : Opens (PrimeSpectrum.Top S)) (W : Opens (PrimeSpectrum.Top P))
    (hUV : ∀ p ∈ V, PrimeSpectrum.comap f p ∈ U) (hVW : ∀ p ∈ W, PrimeSpectrum.comap g p ∈ V) :
    (comap (g.comp f) U W fun p hpW => hUV (PrimeSpectrum.comap g p) (hVW p hpW)) =
      (comap g V W hVW).comp (comap f U V hUV) 
Arguments: {R : Type u} [CommRing R] {S : Type u} [CommRing S] {P : Type u} [CommRing P] (f : R →+* S) (g : S →+* P) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R)) (V : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top S)) (W : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top P)) (hUV : ∀ p ∈ V, (PrimeSpectrum.comap f) p ∈ U) (hVW : ∀ p ∈ W, (PrimeSpectrum.comap g) p ∈ V)
Goal: AlgebraicGeometry.StructureSheaf.comap (g.comp f) U W ⋯ =
  (AlgebraicGeometry.StructureSheaf.comap g V W hVW).comp (AlgebraicGeometry.StructureSheaf.comap f U V hUV)
-- AlgebraicGeometry.StructureSheaf.toOpen_comp_comap
@[elementwise, reassoc]
theorem toOpen_comp_comap (f : R →+* S) (U : Opens (PrimeSpectrum.Top R)) :
    (toOpen R U ≫ comap f U (Opens.comap (PrimeSpectrum.comap f) U) fun _ => id) =
      CommRingCat.ofHom f ≫ toOpen S _ 
Arguments: {R : Type u} [CommRing R] {S : Type u} [CommRing S] (f : R →+* S) (U : TopologicalSpace.Opens ↑(AlgebraicGeometry.PrimeSpectrum.Top R))
Goal: AlgebraicGeometry.StructureSheaf.toOpen R U ≫
    AlgebraicGeometry.StructureSheaf.comap f U ((TopologicalSpace.Opens.comap (PrimeSpectrum.comap f)) U) ⋯ =
  CommRingCat.ofHom f ≫
    AlgebraicGeometry.StructureSheaf.toOpen S ((TopologicalSpace.Opens.comap (PrimeSpectrum.comap f)) U)
-- AlgebraicGeometry.StructureSheaf.comap_basicOpen
lemma comap_basicOpen (f : R →+* S) (x : R) :
    comap f (PrimeSpectrum.basicOpen x) (PrimeSpectrum.basicOpen (f x))
        (PrimeSpectrum.comap_basicOpen f x).le =
      IsLocalization.map (M := .powers x) (T := .powers (f x)) _ f
        (Submonoid.powers_le.mpr (Submonoid.mem_powers _)) 
Arguments: {R : Type u} [CommRing R] {S : Type u} [CommRing S] (f : R →+* S) (x : R)
Goal: AlgebraicGeometry.StructureSheaf.comap f (PrimeSpectrum.basicOpen x) (PrimeSpectrum.basicOpen (f x)) ⋯ =
  IsLocalization.map
    (↑((AlgebraicGeometry.Spec.structureSheaf S).val.obj (Opposite.op (PrimeSpectrum.basicOpen (f x))))) f ⋯
-- Set.finite_zero
@[to_additive (attr := simp)]
theorem finite_one : (1 : Set α).Finite 
Arguments: {α : Type u_2} [Zero α]
Goal: Set.Finite 0
-- Set.finite_one
@[to_additive (attr := simp)]
theorem finite_one : (1 : Set α).Finite 
Arguments: {α : Type u_2} [One α]
Goal: Set.Finite 1
-- Set.Finite.inv
@[to_additive]
theorem Finite.inv (hs : s.Finite) : s⁻¹.Finite 
Arguments: {α : Type u_2} [InvolutiveInv α] {s : Set α} (hs : s.Finite)
Goal: s⁻¹.Finite
-- Set.Finite.neg
@[to_additive]
theorem Finite.inv (hs : s.Finite) : s⁻¹.Finite 
Arguments: {α : Type u_2} [InvolutiveNeg α] {s : Set α} (hs : s.Finite)
Goal: (-s).Finite
-- Set.Finite.add
@[to_additive]
theorem Finite.mul : s.Finite → t.Finite → (s * t).Finite 
Arguments: {α : Type u_2} [Add α] {s t : Set α}
Goal: s.Finite → t.Finite → (s + t).Finite
-- Set.Finite.mul
@[to_additive]
theorem Finite.mul : s.Finite → t.Finite → (s * t).Finite 
Arguments: {α : Type u_2} [Mul α] {s t : Set α}
Goal: s.Finite → t.Finite → (s * t).Finite
-- Set.Finite.vadd
@[to_additive]
theorem Finite.smul : s.Finite → t.Finite → (s • t).Finite 
Arguments: {α : Type u_2} {β : Type u_3} [VAdd α β] {s : Set α} {t : Set β}
Goal: s.Finite → t.Finite → (s +ᵥ t).Finite
-- Set.Finite.smul
@[to_additive]
theorem Finite.smul : s.Finite → t.Finite → (s • t).Finite 
Arguments: {α : Type u_2} {β : Type u_3} [SMul α β] {s : Set α} {t : Set β}
Goal: s.Finite → t.Finite → (s • t).Finite
-- Set.Finite.smul_set
@[to_additive]
theorem Finite.smul_set : s.Finite → (a • s).Finite 
Arguments: {α : Type u_2} {β : Type u_3} [SMul α β] {s : Set β} {a : α}
Goal: s.Finite → (a • s).Finite
-- Set.Finite.vadd_set
@[to_additive]
theorem Finite.smul_set : s.Finite → (a • s).Finite 
Arguments: {α : Type u_2} {β : Type u_3} [VAdd α β] {s : Set β} {a : α}
Goal: s.Finite → (a +ᵥ s).Finite
-- Set.Infinite.of_vadd_set
@[to_additive]
theorem Infinite.of_smul_set : (a • s).Infinite → s.Infinite 
Arguments: {α : Type u_2} {β : Type u_3} [VAdd α β] {s : Set β} {a : α}
Goal: (a +ᵥ s).Infinite → s.Infinite
-- Set.Infinite.of_smul_set
@[to_additive]
theorem Infinite.of_smul_set : (a • s).Infinite → s.Infinite 
Arguments: {α : Type u_2} {β : Type u_3} [SMul α β] {s : Set β} {a : α}
Goal: (a • s).Infinite → s.Infinite
-- Set.Finite.vsub
theorem Finite.vsub (hs : s.Finite) (ht : t.Finite) : Set.Finite (s -ᵥ t) 
Arguments: {α : Type u_2} {β : Type u_3} [VSub α β] {s t : Set β} (hs : s.Finite) (ht : t.Finite)
Goal: (s -ᵥ t).Finite
-- Set.infinite_mul
@[to_additive]
theorem infinite_mul : (s * t).Infinite ↔ s.Infinite ∧ t.Nonempty ∨ t.Infinite ∧ s.Nonempty 
Arguments: {α : Type u_2} [Mul α] [IsLeftCancelMul α] [IsRightCancelMul α] {s t : Set α}
Goal: (s * t).Infinite ↔ s.Infinite ∧ t.Nonempty ∨ t.Infinite ∧ s.Nonempty
-- Set.infinite_add
@[to_additive]
theorem infinite_mul : (s * t).Infinite ↔ s.Infinite ∧ t.Nonempty ∨ t.Infinite ∧ s.Nonempty 
Arguments: {α : Type u_2} [Add α] [IsLeftCancelAdd α] [IsRightCancelAdd α] {s t : Set α}
Goal: (s + t).Infinite ↔ s.Infinite ∧ t.Nonempty ∨ t.Infinite ∧ s.Nonempty
-- Set.finite_add
@[to_additive]
lemma finite_mul : (s * t).Finite ↔ s.Finite ∧ t.Finite ∨ s = ∅ ∨ t = ∅ 
Arguments: {α : Type u_2} [Add α] [IsLeftCancelAdd α] [IsRightCancelAdd α] {s t : Set α}
Goal: (s + t).Finite ↔ s.Finite ∧ t.Finite ∨ s = ∅ ∨ t = ∅
-- Set.finite_mul
@[to_additive]
lemma finite_mul : (s * t).Finite ↔ s.Finite ∧ t.Finite ∨ s = ∅ ∨ t = ∅ 
Arguments: {α : Type u_2} [Mul α] [IsLeftCancelMul α] [IsRightCancelMul α] {s t : Set α}
Goal: (s * t).Finite ↔ s.Finite ∧ t.Finite ∨ s = ∅ ∨ t = ∅
-- Set.finite_vadd_set
@[to_additive (attr := simp)]
theorem finite_smul_set : (a • s).Finite ↔ s.Finite 
Arguments: {α : Type u_2} {β : Type u_3} [AddGroup α] [AddAction α β] {a : α} {s : Set β}
Goal: (a +ᵥ s).Finite ↔ s.Finite
-- Set.finite_smul_set
@[to_additive (attr := simp)]
theorem finite_smul_set : (a • s).Finite ↔ s.Finite 
Arguments: {α : Type u_2} {β : Type u_3} [Group α] [MulAction α β] {a : α} {s : Set β}
Goal: (a • s).Finite ↔ s.Finite
-- Set.infinite_smul_set
@[to_additive (attr := simp)]
theorem infinite_smul_set : (a • s).Infinite ↔ s.Infinite 
Arguments: {α : Type u_2} {β : Type u_3} [Group α] [MulAction α β] {a : α} {s : Set β}
Goal: (a • s).Infinite ↔ s.Infinite
-- Set.infinite_vadd_set
@[to_additive (attr := simp)]
theorem infinite_smul_set : (a • s).Infinite ↔ s.Infinite 
Arguments: {α : Type u_2} {β : Type u_3} [AddGroup α] [AddAction α β] {a : α} {s : Set β}
Goal: (a +ᵥ s).Infinite ↔ s.Infinite
-- AddGroup.card_nsmul_eq_card_nsmul_card_univ
@[to_additive]
theorem card_pow_eq_card_pow_card_univ [∀ k : ℕ, DecidablePred (· ∈ S ^ k)] :
    ∀ k, Fintype.card G ≤ k → Fintype.card (↥(S ^ k)) = Fintype.card (↥(S ^ Fintype.card G)) 
Arguments: {G : Type u_5} [AddGroup G] [Fintype G] (S : Set G) [(k : ℕ) → DecidablePred fun x => x ∈ k • S] (k : ℕ)
Goal: Fintype.card G ≤ k → Fintype.card ↑(k • S) = Fintype.card ↑(Fintype.card G • S)
-- Group.card_pow_eq_card_pow_card_univ
@[to_additive]
theorem card_pow_eq_card_pow_card_univ [∀ k : ℕ, DecidablePred (· ∈ S ^ k)] :
    ∀ k, Fintype.card G ≤ k → Fintype.card (↥(S ^ k)) = Fintype.card (↥(S ^ Fintype.card G)) 
Arguments: {G : Type u_5} [Group G] [Fintype G] (S : Set G) [(k : ℕ) → DecidablePred fun x => x ∈ S ^ k] (k : ℕ)
Goal: Fintype.card G ≤ k → Fintype.card ↑(S ^ k) = Fintype.card ↑(S ^ Fintype.card G)
-- AlgebraicGeometry.QuasiSeparated.diagonalQuasiCompact
@[mk_iff]
class QuasiSeparated (f : X ⟶ Y) : Prop where
    diagonalQuasiCompact : QuasiCompact (pullback.diagonal f) := by infer_instance
Arguments: {X Y : AlgebraicGeometry.Scheme} {f : X ⟶ Y} [self : AlgebraicGeometry.QuasiSeparated f]
Goal: AlgebraicGeometry.QuasiCompact (CategoryTheory.Limits.pullback.diagonal f)
-- AlgebraicGeometry.quasiSeparated_iff
@[mk_iff]
class QuasiSeparated (f : X ⟶ Y) : Prop where
    diagonalQuasiCompact : QuasiCompact (pullback.diagonal f) := by infer_instance
Arguments: {X Y : AlgebraicGeometry.Scheme} (f : X ⟶ Y)
Goal: AlgebraicGeometry.QuasiSeparated f ↔
  autoParam (AlgebraicGeometry.QuasiCompact (CategoryTheory.Limits.pullback.diagonal f)) _auto✝
-- AlgebraicGeometry.quasiSeparatedSpace_iff_affine
theorem quasiSeparatedSpace_iff_affine (X : Scheme) :
    QuasiSeparatedSpace X ↔ ∀ U V : X.affineOpens, IsCompact (U ∩ V : Set X) 
Arguments: (X : AlgebraicGeometry.Scheme)
Goal: QuasiSeparatedSpace ↑↑X.toPresheafedSpace ↔ ∀ (U V : ↑X.affineOpens), IsCompact (↑↑U ∩ ↑↑V)
-- AlgebraicGeometry.quasiCompact_affineProperty_iff_quasiSeparatedSpace
theorem quasiCompact_affineProperty_iff_quasiSeparatedSpace {X Y : Scheme} [IsAffine Y]
    (f : X ⟶ Y) :
    AffineTargetMorphismProperty.diagonal (fun X _ _ _ ↦ CompactSpace X) f ↔
      QuasiSeparatedSpace X 
Arguments: {X Y : AlgebraicGeometry.Scheme} [AlgebraicGeometry.IsAffine Y] (f : X ⟶ Y)
Goal: AlgebraicGeometry.AffineTargetMorphismProperty.diagonal (fun X x x_1 x => CompactSpace ↑↑X.toPresheafedSpace) f ↔
  QuasiSeparatedSpace ↑↑X.toPresheafedSpace
-- AlgebraicGeometry.quasiSeparated_eq_diagonal_is_quasiCompact
theorem quasiSeparated_eq_diagonal_is_quasiCompact :
    @QuasiSeparated = MorphismProperty.diagonal @QuasiCompact 
Goal: @AlgebraicGeometry.QuasiSeparated = CategoryTheory.MorphismProperty.diagonal @AlgebraicGeometry.QuasiCompact