ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.toLocallyRingedSpace_toSheafedSpace
@[simp]
theorem toLocallyRingedSpace_toSheafedSpace :
    (toLocallyRingedSpace Y f).toSheafedSpace = toSheafedSpace Y.1 f 
Arguments: {X : AlgebraicGeometry.PresheafedSpace CommRingCat} (Y : AlgebraicGeometry.LocallyRingedSpace) (f : X ⟶ Y.toPresheafedSpace) [H : AlgebraicGeometry.PresheafedSpace.IsOpenImmersion f]
Goal: (AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.toLocallyRingedSpace Y f).toSheafedSpace =
  AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.toSheafedSpace Y.toSheafedSpace f
-- AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.toLocallyRingedSpaceHom_val
@[simp]
theorem toLocallyRingedSpaceHom_val : (toLocallyRingedSpaceHom Y f).val = f 
Arguments: {X : AlgebraicGeometry.PresheafedSpace CommRingCat} (Y : AlgebraicGeometry.LocallyRingedSpace) (f : X ⟶ Y.toPresheafedSpace) [H : AlgebraicGeometry.PresheafedSpace.IsOpenImmersion f]
Goal: (AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.toLocallyRingedSpaceHom Y f).val = f
-- AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.locallyRingedSpace_toLocallyRingedSpace
@[simp]
theorem locallyRingedSpace_toLocallyRingedSpace {X Y : LocallyRingedSpace} (f : X ⟶ Y)
    [LocallyRingedSpace.IsOpenImmersion f] : toLocallyRingedSpace Y f.1 = X 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f]
Goal: AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.toLocallyRingedSpace Y f.val = X
-- AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.isIso_of_subset
theorem isIso_of_subset {X Y : PresheafedSpace C} (f : X ⟶ Y)
    [H : PresheafedSpace.IsOpenImmersion f] (U : Opens Y.carrier)
    (hU : (U : Set Y.carrier) ⊆ Set.range f.base) : IsIso (f.c.app <| op U) 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.PresheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.PresheafedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑↑Y) (hU : ↑U ⊆ Set.range ⇑f.base)
Goal: CategoryTheory.IsIso (f.c.app (Opposite.op U))
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.of_stalk_iso
theorem of_stalk_iso {X Y : SheafedSpace C} (f : X ⟶ Y) (hf : OpenEmbedding f.base)
    [H : ∀ x : X.1, IsIso (f.stalkMap x)] : SheafedSpace.IsOpenImmersion f 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasLimits C] [CategoryTheory.Limits.HasColimits C] [CategoryTheory.ConcreteCategory C] [(CategoryTheory.forget C).ReflectsIsomorphisms] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget C)] [CategoryTheory.Limits.PreservesFilteredColimits (CategoryTheory.forget C)] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) (hf : OpenEmbedding ⇑f.base) [H : ∀ (x : ↑↑X.toPresheafedSpace), CategoryTheory.IsIso (AlgebraicGeometry.PresheafedSpace.Hom.stalkMap f x)]
Goal: AlgebraicGeometry.SheafedSpace.IsOpenImmersion f
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.isoRestrict_hom_c_app
@[simps! hom_c_app]
noncomputable def isoRestrict : X ≅ Y.restrict H.base_open 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f]
Goal: ∀ (X_1 : (TopologicalSpace.Opens ↑↑(Y.restrict ⋯))ᵒᵖ),
  (AlgebraicGeometry.SheafedSpace.IsOpenImmersion.isoRestrict f).hom.c.app X_1 =
    f.c.app (Opposite.op ((AlgebraicGeometry.PresheafedSpace.IsOpenImmersion.opensFunctor f).obj (Opposite.unop X_1))) ≫
      X.presheaf.map (CategoryTheory.eqToHom ⋯)
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.isoRestrict_hom_ofRestrict
@[reassoc (attr := simp)]
theorem isoRestrict_hom_ofRestrict : (isoRestrict f).hom ≫ Y.ofRestrict _ = f 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f]
Goal: (AlgebraicGeometry.SheafedSpace.IsOpenImmersion.isoRestrict f).hom ≫ Y.ofRestrict ⋯ = f
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.isoRestrict_inv_ofRestrict
@[reassoc (attr := simp)]
theorem isoRestrict_inv_ofRestrict : (isoRestrict f).inv ≫ f = Y.ofRestrict _ 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f]
Goal: (AlgebraicGeometry.SheafedSpace.IsOpenImmersion.isoRestrict f).inv ≫ f = Y.ofRestrict ⋯
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.inv_naturality
@[reassoc (attr := simp)]
theorem inv_naturality {U V : (Opens X)ᵒᵖ} (i : U ⟶ V) :
    X.presheaf.map i ≫ H.invApp (unop V) =
      H.invApp (unop U) ≫ Y.presheaf.map (opensFunctor f |>.op.map i) 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f] {U V : (TopologicalSpace.Opens ↑↑X.toPresheafedSpace)ᵒᵖ} (i : U ⟶ V)
Goal: X.presheaf.map i ≫ AlgebraicGeometry.SheafedSpace.IsOpenImmersion.invApp f (Opposite.unop V) =
  AlgebraicGeometry.SheafedSpace.IsOpenImmersion.invApp f (Opposite.unop U) ≫
    Y.presheaf.map ((AlgebraicGeometry.SheafedSpace.IsOpenImmersion.opensFunctor f).op.map i)
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.inv_invApp
theorem inv_invApp (U : Opens X) :
    inv (H.invApp U) =
      f.c.app (op (opensFunctor f |>.obj U)) ≫
        X.presheaf.map (eqToHom (by simp [Opens.map, Set.preimage_image_eq _ H.base_open.inj])) 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace)
Goal: CategoryTheory.inv (AlgebraicGeometry.SheafedSpace.IsOpenImmersion.invApp f U) =
  f.c.app (Opposite.op ((AlgebraicGeometry.SheafedSpace.IsOpenImmersion.opensFunctor f).obj U)) ≫
    X.presheaf.map (CategoryTheory.eqToHom ⋯)
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.invApp_app
@[reassoc (attr := simp)]
theorem invApp_app (U : Opens X) :
    H.invApp U ≫ f.c.app (op (opensFunctor f |>.obj U)) =
      X.presheaf.map (eqToHom (by simp [Opens.map, Set.preimage_image_eq _ H.base_open.inj])) 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace)
Goal: AlgebraicGeometry.SheafedSpace.IsOpenImmersion.invApp f U ≫
    f.c.app (Opposite.op ((AlgebraicGeometry.SheafedSpace.IsOpenImmersion.opensFunctor f).obj U)) =
  X.presheaf.map (CategoryTheory.eqToHom ⋯)
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.app_invApp
@[reassoc (attr := simp)]
theorem app_invApp (U : Opens Y) :
    f.c.app (op U) ≫ H.invApp ((Opens.map f.base).obj U) =
      Y.presheaf.map
        ((homOfLE (Set.image_preimage_subset f.base U.1)).op :
          op U ⟶ op (opensFunctor f |>.obj ((Opens.map f.base).obj U))) 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑↑Y.toPresheafedSpace)
Goal: f.c.app (Opposite.op U) ≫
    AlgebraicGeometry.SheafedSpace.IsOpenImmersion.invApp f ((TopologicalSpace.Opens.map f.base).obj U) =
  Y.presheaf.map (CategoryTheory.homOfLE ⋯).op
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.app_inv_app'
@[reassoc]
theorem app_inv_app' (U : Opens Y) (hU : (U : Set Y) ⊆ Set.range f.base) :
    f.c.app (op U) ≫ invApp f ((Opens.map f.base).obj U) =
      Y.presheaf.map
        (eqToHom <|
            le_antisymm (Set.image_preimage_subset f.base U.1) <|
              (Set.image_preimage_eq_inter_range (f := f.base) (t := U.1)).symm ▸
                Set.subset_inter_iff.mpr ⟨fun _ h => h, hU⟩).op 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑↑Y.toPresheafedSpace) (hU : ↑U ⊆ Set.range ⇑f.base)
Goal: f.c.app (Opposite.op U) ≫
    AlgebraicGeometry.SheafedSpace.IsOpenImmersion.invApp f ((TopologicalSpace.Opens.map f.base).obj U) =
  Y.presheaf.map (CategoryTheory.eqToHom ⋯).op
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.ofRestrict_invApp
@[elementwise, simp]
theorem ofRestrict_invApp {C : Type*} [Category C] (X : SheafedSpace C) {Y : TopCat}
    {f : Y ⟶ TopCat.of X.carrier} (h : OpenEmbedding f) (U : Opens (X.restrict h).carrier) :
    (SheafedSpace.IsOpenImmersion.ofRestrict X h).invApp U = 𝟙 _ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] (X : AlgebraicGeometry.SheafedSpace C) {Y : TopCat} {f : Y ⟶ TopCat.of ↑↑X.toPresheafedSpace} (h : OpenEmbedding ⇑f) (U : TopologicalSpace.Opens ↑↑(X.restrict h).toPresheafedSpace)
Goal: AlgebraicGeometry.SheafedSpace.IsOpenImmersion.invApp (X.ofRestrict h) U =
  𝟙 ((X.restrict h).presheaf.obj (Opposite.op U))
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.to_iso
theorem to_iso [h' : Epi f.base] : IsIso f 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : AlgebraicGeometry.SheafedSpace C} (f : X ⟶ Y) [H : AlgebraicGeometry.SheafedSpace.IsOpenImmersion f] [h' : CategoryTheory.Epi f.base]
Goal: CategoryTheory.IsIso f
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.sigma_ι_openEmbedding
theorem sigma_ι_openEmbedding : OpenEmbedding (colimit.ι F i).base 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasLimits C] {ι : Type v} (F : CategoryTheory.Discrete ι ⥤ AlgebraicGeometry.SheafedSpace C) [CategoryTheory.Limits.HasColimit F] (i : CategoryTheory.Discrete ι)
Goal: OpenEmbedding ⇑(CategoryTheory.Limits.colimit.ι F i).base
-- AlgebraicGeometry.SheafedSpace.IsOpenImmersion.image_preimage_is_empty
theorem image_preimage_is_empty (j : Discrete ι) (h : i ≠ j) (U : Opens (F.obj i)) :
    (Opens.map (colimit.ι (F ⋙ SheafedSpace.forgetToPresheafedSpace) j).base).obj
        ((Opens.map (preservesColimitIso SheafedSpace.forgetToPresheafedSpace F).inv.base).obj
          ((sigma_ι_openEmbedding F i).isOpenMap.functor.obj U)) =
      ⊥ 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasLimits C] {ι : Type v} (F : CategoryTheory.Discrete ι ⥤ AlgebraicGeometry.SheafedSpace C) [CategoryTheory.Limits.HasColimit F] (i j : CategoryTheory.Discrete ι) (h : i ≠ j) (U : TopologicalSpace.Opens ↑↑(F.obj i).toPresheafedSpace)
Goal: (TopologicalSpace.Opens.map
        (CategoryTheory.Limits.colimit.ι (F ⋙ AlgebraicGeometry.SheafedSpace.forgetToPresheafedSpace) j).base).obj
    ((TopologicalSpace.Opens.map
          (CategoryTheory.preservesColimitIso AlgebraicGeometry.SheafedSpace.forgetToPresheafedSpace F).inv.base).obj
      (⋯.functor.obj U)) =
  ⊥
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.pullback_snd_isIso_of_range_subset
theorem pullback_snd_isIso_of_range_subset (H' : Set.range g.1.base ⊆ Set.range f.1.base) :
    IsIso (pullback.snd f g) 
Arguments: {X Y Z : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Z) (g : Y ⟶ Z) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] (H' : Set.range ⇑g.val.base ⊆ Set.range ⇑f.val.base)
Goal: CategoryTheory.IsIso (CategoryTheory.Limits.pullback.snd f g)
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.lift_fac
@[simp, reassoc]
theorem lift_fac (H' : Set.range g.1.base ⊆ Set.range f.1.base) : lift f g H' ≫ f = g 
Arguments: {X Y Z : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Z) (g : Y ⟶ Z) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] (H' : Set.range ⇑g.val.base ⊆ Set.range ⇑f.val.base)
Goal: AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.lift f g H' ≫ f = g
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.lift_uniq
theorem lift_uniq (H' : Set.range g.1.base ⊆ Set.range f.1.base) (l : Y ⟶ X) (hl : l ≫ f = g) :
    l = lift f g H' 
Arguments: {X Y Z : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Z) (g : Y ⟶ Z) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] (H' : Set.range ⇑g.val.base ⊆ Set.range ⇑f.val.base) (l : Y ⟶ X) (hl : l ≫ f = g)
Goal: l = AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.lift f g H'
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.lift_range
theorem lift_range (H' : Set.range g.1.base ⊆ Set.range f.1.base) :
    Set.range (lift f g H').1.base = f.1.base ⁻¹' Set.range g.1.base 
Arguments: {X Y Z : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Z) (g : Y ⟶ Z) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] (H' : Set.range ⇑g.val.base ⊆ Set.range ⇑f.val.base)
Goal: Set.range ⇑(AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.lift f g H').val.base =
  ⇑f.val.base ⁻¹' Set.range ⇑g.val.base
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.of_stalk_iso
theorem of_stalk_iso {X Y : LocallyRingedSpace} (f : X ⟶ Y) (hf : OpenEmbedding f.1.base)
    [stalk_iso : ∀ x : X.1, IsIso (f.stalkMap x)] :
    LocallyRingedSpace.IsOpenImmersion f 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) (hf : OpenEmbedding ⇑f.val.base) [stalk_iso :
  ∀ (x : ↑↑X.toPresheafedSpace), CategoryTheory.IsIso (AlgebraicGeometry.LocallyRingedSpace.Hom.stalkMap f x)]
Goal: AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.isoRestrict_hom_ofRestrict
@[reassoc (attr := simp)]
theorem isoRestrict_hom_ofRestrict : (isoRestrict f).hom ≫ Y.ofRestrict _ = f 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f]
Goal: (AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.isoRestrict f).hom ≫ Y.ofRestrict ⋯ = f
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.isoRestrict_inv_ofRestrict
@[reassoc (attr := simp)]
theorem isoRestrict_inv_ofRestrict : (isoRestrict f).inv ≫ f = Y.ofRestrict _ 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f]
Goal: (AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.isoRestrict f).inv ≫ f = Y.ofRestrict ⋯
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.inv_naturality
@[reassoc (attr := simp)]
theorem inv_naturality {U V : (Opens X)ᵒᵖ} (i : U ⟶ V) :
    X.presheaf.map i ≫ H.invApp (unop V) =
      H.invApp (unop U) ≫ Y.presheaf.map (opensFunctor f |>.op.map i) 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] {U V : (TopologicalSpace.Opens ↑X.toTopCat)ᵒᵖ} (i : U ⟶ V)
Goal: X.presheaf.map i ≫ AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.invApp f (Opposite.unop V) =
  AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.invApp f (Opposite.unop U) ≫
    Y.presheaf.map ((AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.opensFunctor f).op.map i)
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.inv_invApp
theorem inv_invApp (U : Opens X) :
    inv (H.invApp U) =
      f.1.c.app (op (opensFunctor f |>.obj U)) ≫
        X.presheaf.map (eqToHom (by simp [Opens.map, Set.preimage_image_eq _ H.base_open.inj])) 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑X.toTopCat)
Goal: CategoryTheory.inv (AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.invApp f U) =
  f.val.c.app (Opposite.op ((AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.opensFunctor f).obj U)) ≫
    X.presheaf.map (CategoryTheory.eqToHom ⋯)
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.invApp_app
@[reassoc (attr := simp)]
theorem invApp_app (U : Opens X) :
    H.invApp U ≫ f.1.c.app (op (opensFunctor f |>.obj U)) =
      X.presheaf.map (eqToHom (by simp [Opens.map, Set.preimage_image_eq _ H.base_open.inj])) 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑X.toTopCat)
Goal: AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.invApp f U ≫
    f.val.c.app (Opposite.op ((AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.opensFunctor f).obj U)) =
  X.presheaf.map (CategoryTheory.eqToHom ⋯)
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.app_invApp
@[reassoc (attr := simp)]
theorem app_invApp (U : Opens Y) :
    f.1.c.app (op U) ≫ H.invApp ((Opens.map f.1.base).obj U) =
      Y.presheaf.map
        ((homOfLE (Set.image_preimage_subset f.1.base U.1)).op :
          op U ⟶ op (opensFunctor f |>.obj ((Opens.map f.1.base).obj U))) 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑Y.toTopCat)
Goal: f.val.c.app (Opposite.op U) ≫
    AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.invApp f ((TopologicalSpace.Opens.map f.val.base).obj U) =
  Y.presheaf.map (CategoryTheory.homOfLE ⋯).op
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.app_inv_app'
@[reassoc]
theorem app_inv_app' (U : Opens Y) (hU : (U : Set Y) ⊆ Set.range f.1.base) :
    f.1.c.app (op U) ≫ H.invApp ((Opens.map f.1.base).obj U) =
      Y.presheaf.map
        (eqToHom <|
            le_antisymm (Set.image_preimage_subset f.1.base U.1) <|
              (Set.image_preimage_eq_inter_range (f := f.1.base) (t := U.1)).symm ▸
                Set.subset_inter_iff.mpr ⟨fun _ h => h, hU⟩).op 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] (U : TopologicalSpace.Opens ↑Y.toTopCat) (hU : ↑U ⊆ Set.range ⇑f.val.base)
Goal: f.val.c.app (Opposite.op U) ≫
    AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.invApp f ((TopologicalSpace.Opens.map f.val.base).obj U) =
  Y.presheaf.map (CategoryTheory.eqToHom ⋯).op
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.ofRestrict_invApp
@[elementwise, simp]
theorem ofRestrict_invApp (X : LocallyRingedSpace) {Y : TopCat}
    {f : Y ⟶ TopCat.of X.carrier} (h : OpenEmbedding f) (U : Opens (X.restrict h).carrier) :
    (LocallyRingedSpace.IsOpenImmersion.ofRestrict X h).invApp U = 𝟙 _ 
Arguments: (X : AlgebraicGeometry.LocallyRingedSpace) {Y : TopCat} {f : Y ⟶ TopCat.of ↑↑X.toPresheafedSpace} (h : OpenEmbedding ⇑f) (U : TopologicalSpace.Opens ↑↑(X.restrict h).toPresheafedSpace)
Goal: AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.invApp (X.ofRestrict h) U =
  𝟙 ((X.restrict h).presheaf.obj (Opposite.op U))
-- AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion.to_iso
theorem to_iso [h' : Epi f.1.base] : IsIso f 
Arguments: {X Y : AlgebraicGeometry.LocallyRingedSpace} (f : X ⟶ Y) [H : AlgebraicGeometry.LocallyRingedSpace.IsOpenImmersion f] [h' : CategoryTheory.Epi f.val.base]
Goal: CategoryTheory.IsIso f
-- ProbabilityTheory.IsRatStieltjesPoint.iInf_rat_gt_eq
structure IsRatStieltjesPoint (f : α → ℚ → ℝ) (a : α) : Prop where
  mono : Monotone (f a)
  tendsto_atTop_one : Tendsto (f a) atTop (𝓝 1)
  tendsto_atBot_zero : Tendsto (f a) atBot (𝓝 0)
  iInf_rat_gt_eq : ∀ t : ℚ, ⨅ r : Ioi t, f a r = f a t
Arguments: {α : Type u_1} {f : α → ℚ → ℝ} {a : α} (self : ProbabilityTheory.IsRatStieltjesPoint f a) (t : ℚ)
Goal: ⨅ r, f a ↑r = f a t
-- ProbabilityTheory.IsRatStieltjesPoint.tendsto_atBot_zero
structure IsRatStieltjesPoint (f : α → ℚ → ℝ) (a : α) : Prop where
  mono : Monotone (f a)
  tendsto_atTop_one : Tendsto (f a) atTop (𝓝 1)
  tendsto_atBot_zero : Tendsto (f a) atBot (𝓝 0)
  iInf_rat_gt_eq : ∀ t : ℚ, ⨅ r : Ioi t, f a r = f a t
Arguments: {α : Type u_1} {f : α → ℚ → ℝ} {a : α} (self : ProbabilityTheory.IsRatStieltjesPoint f a)
Goal: Filter.Tendsto (f a) Filter.atBot (𝓝 0)
-- ProbabilityTheory.IsRatStieltjesPoint.tendsto_atTop_one
structure IsRatStieltjesPoint (f : α → ℚ → ℝ) (a : α) : Prop where
  mono : Monotone (f a)
  tendsto_atTop_one : Tendsto (f a) atTop (𝓝 1)
  tendsto_atBot_zero : Tendsto (f a) atBot (𝓝 0)
  iInf_rat_gt_eq : ∀ t : ℚ, ⨅ r : Ioi t, f a r = f a t
Arguments: {α : Type u_1} {f : α → ℚ → ℝ} {a : α} (self : ProbabilityTheory.IsRatStieltjesPoint f a)
Goal: Filter.Tendsto (f a) Filter.atTop (𝓝 1)
-- ProbabilityTheory.IsRatStieltjesPoint.mono
structure IsRatStieltjesPoint (f : α → ℚ → ℝ) (a : α) : Prop where
  mono : Monotone (f a)
  tendsto_atTop_one : Tendsto (f a) atTop (𝓝 1)
  tendsto_atBot_zero : Tendsto (f a) atBot (𝓝 0)
  iInf_rat_gt_eq : ∀ t : ℚ, ⨅ r : Ioi t, f a r = f a t
Arguments: {α : Type u_1} {f : α → ℚ → ℝ} {a : α} (self : ProbabilityTheory.IsRatStieltjesPoint f a)
Goal: Monotone (f a)
-- ProbabilityTheory.isRatStieltjesPoint_unit_prod_iff
lemma isRatStieltjesPoint_unit_prod_iff (f : α → ℚ → ℝ) (a : α) :
    IsRatStieltjesPoint (fun p : Unit × α ↦ f p.2) ((), a)
      ↔ IsRatStieltjesPoint f a 
Arguments: {α : Type u_1} (f : α → ℚ → ℝ) (a : α)
Goal: ProbabilityTheory.IsRatStieltjesPoint (fun p => f p.2) ((), a) ↔ ProbabilityTheory.IsRatStieltjesPoint f a
-- ProbabilityTheory.measurableSet_isRatStieltjesPoint
lemma measurableSet_isRatStieltjesPoint (hf : Measurable f) :
    MeasurableSet {a | IsRatStieltjesPoint f a} 
Arguments: {α : Type u_1} [MeasurableSpace α] {f : α → ℚ → ℝ} (hf : Measurable f)
Goal: MeasurableSet {a | ProbabilityTheory.IsRatStieltjesPoint f a}
-- ProbabilityTheory.IsRatStieltjesPoint.ite
lemma IsRatStieltjesPoint.ite {f g : α → ℚ → ℝ} {a : α} (p : α → Prop) [DecidablePred p]
    (hf : p a → IsRatStieltjesPoint f a) (hg : ¬ p a → IsRatStieltjesPoint g a) :
    IsRatStieltjesPoint (fun a ↦ if p a then f a else g a) a 
Arguments: {α : Type u_1} {f g : α → ℚ → ℝ} {a : α} (p : α → Prop) [DecidablePred p] (hf : p a → ProbabilityTheory.IsRatStieltjesPoint f a) (hg : ¬p a → ProbabilityTheory.IsRatStieltjesPoint g a)
Goal: ProbabilityTheory.IsRatStieltjesPoint (fun a => if p a then f a else g a) a
-- ProbabilityTheory.IsMeasurableRatCDF.measurable
structure IsMeasurableRatCDF (f : α → ℚ → ℝ) : Prop where
  isRatStieltjesPoint : ∀ a, IsRatStieltjesPoint f a
  measurable : Measurable f
Arguments: {α : Type u_1} [MeasurableSpace α] {f : α → ℚ → ℝ} (self : ProbabilityTheory.IsMeasurableRatCDF f)
Goal: Measurable f
-- ProbabilityTheory.IsMeasurableRatCDF.isRatStieltjesPoint
structure IsMeasurableRatCDF (f : α → ℚ → ℝ) : Prop where
  isRatStieltjesPoint : ∀ a, IsRatStieltjesPoint f a
  measurable : Measurable f
Arguments: {α : Type u_1} [MeasurableSpace α] {f : α → ℚ → ℝ} (self : ProbabilityTheory.IsMeasurableRatCDF f) (a : α)
Goal: ProbabilityTheory.IsRatStieltjesPoint f a
-- ProbabilityTheory.IsMeasurableRatCDF.nonneg
lemma IsMeasurableRatCDF.nonneg {f : α → ℚ → ℝ} (hf : IsMeasurableRatCDF f) (a : α) (q : ℚ) :
    0 ≤ f a q 
Arguments: {α : Type u_1} [MeasurableSpace α] {f : α → ℚ → ℝ} (hf : ProbabilityTheory.IsMeasurableRatCDF f) (a : α) (q : ℚ)
Goal: 0 ≤ f a q
-- ProbabilityTheory.IsMeasurableRatCDF.le_one
lemma IsMeasurableRatCDF.le_one {f : α → ℚ → ℝ} (hf : IsMeasurableRatCDF f) (a : α) (q : ℚ) :
    f a q ≤ 1 
Arguments: {α : Type u_1} [MeasurableSpace α] {f : α → ℚ → ℝ} (hf : ProbabilityTheory.IsMeasurableRatCDF f) (a : α) (q : ℚ)
Goal: f a q ≤ 1
-- ProbabilityTheory.IsMeasurableRatCDF.tendsto_atTop_one
lemma IsMeasurableRatCDF.tendsto_atTop_one {f : α → ℚ → ℝ} (hf : IsMeasurableRatCDF f) (a : α) :
    Tendsto (f a) atTop (𝓝 1) 
Arguments: {α : Type u_1} [MeasurableSpace α] {f : α → ℚ → ℝ} (hf : ProbabilityTheory.IsMeasurableRatCDF f) (a : α)
Goal: Filter.Tendsto (f a) Filter.atTop (𝓝 1)
-- ProbabilityTheory.IsMeasurableRatCDF.tendsto_atBot_zero
lemma IsMeasurableRatCDF.tendsto_atBot_zero {f : α → ℚ → ℝ} (hf : IsMeasurableRatCDF f) (a : α) :
    Tendsto (f a) atBot (𝓝 0) 
Arguments: {α : Type u_1} [MeasurableSpace α] {f : α → ℚ → ℝ} (hf : ProbabilityTheory.IsMeasurableRatCDF f) (a : α)
Goal: Filter.Tendsto (f a) Filter.atBot (𝓝 0)
-- ProbabilityTheory.IsMeasurableRatCDF.iInf_rat_gt_eq
lemma IsMeasurableRatCDF.iInf_rat_gt_eq {f : α → ℚ → ℝ} (hf : IsMeasurableRatCDF f) (a : α)
    (q : ℚ) :
    ⨅ r : Ioi q, f a r = f a q 
Arguments: {α : Type u_1} [MeasurableSpace α] {f : α → ℚ → ℝ} (hf : ProbabilityTheory.IsMeasurableRatCDF f) (a : α) (q : ℚ)
Goal: ⨅ r, f a ↑r = f a q
-- ProbabilityTheory.monotone_defaultRatCDF
lemma monotone_defaultRatCDF : Monotone defaultRatCDF 
Goal: Monotone ProbabilityTheory.defaultRatCDF
-- ProbabilityTheory.defaultRatCDF_nonneg
lemma defaultRatCDF_nonneg (q : ℚ) : 0 ≤ defaultRatCDF q 
Arguments: (q : ℚ)
Goal: 0 ≤ ProbabilityTheory.defaultRatCDF q