Loogle!
Result
Found 23 definitions whose name contains "of_open".
- T0Space.of_open_cover 📋 Mathlib.Topology.Separation.Basic
{X : Type u_1} [TopologicalSpace X] (h : ∀ (x : X), ∃ s, x ∈ s ∧ IsOpen s ∧ T0Space ↑s) : T0Space X - isLindelof_open_iff_eq_countable_iUnion_of_isTopologicalBasis 📋 Mathlib.Topology.Compactness.Lindelof
{X : Type u} {ι : Type u_1} [TopologicalSpace X] (b : ι → Set X) (hb : TopologicalSpace.IsTopologicalBasis (Set.range b)) (hb' : ∀ (i : ι), IsLindelof (b i)) (U : Set X) : IsLindelof U ∧ IsOpen U ↔ ∃ s, s.Countable ∧ U = ⋃ i ∈ s, b i - TopCat.pullback_map_openEmbedding_of_open_embeddings 📋 Mathlib.Topology.Category.TopCat.Limits.Pullbacks
{W X Y Z S T : TopCat} (f₁ : W ⟶ S) (f₂ : X ⟶ S) (g₁ : Y ⟶ T) (g₂ : Z ⟶ T) {i₁ : W ⟶ Y} {i₂ : X ⟶ Z} (H₁ : Topology.IsOpenEmbedding ⇑(CategoryTheory.ConcreteCategory.hom i₁)) (H₂ : Topology.IsOpenEmbedding ⇑(CategoryTheory.ConcreteCategory.hom i₂)) (i₃ : S ⟶ T) [H₃ : CategoryTheory.Mono i₃] (eq₁ : CategoryTheory.CategoryStruct.comp f₁ i₃ = CategoryTheory.CategoryStruct.comp i₁ g₁) (eq₂ : CategoryTheory.CategoryStruct.comp f₂ i₃ = CategoryTheory.CategoryStruct.comp i₂ g₂) : Topology.IsOpenEmbedding ⇑(CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.pullback.map f₁ f₂ g₁ g₂ i₁ i₂ i₃ eq₁ eq₂)) - StrictConvex.eq_of_openSegment_subset_frontier 📋 Mathlib.Analysis.Convex.Strict
{𝕜 : Type u_1} {E : Type u_3} [OrderedRing 𝕜] [TopologicalSpace E] [AddCommGroup E] [Module 𝕜 E] {s : Set E} {x y : E} [Nontrivial 𝕜] [DenselyOrdered 𝕜] (hs : StrictConvex 𝕜 s) (hx : x ∈ s) (hy : y ∈ s) (h : openSegment 𝕜 x y ⊆ frontier s) : x = y - QuasiSeparatedSpace.of_openEmbedding 📋 Mathlib.Topology.QuasiSeparated
{α : Type u_1} {β : Type u_2} [TopologicalSpace α] [TopologicalSpace β] [QuasiSeparatedSpace α] {f : β → α} (h : Topology.IsOpenEmbedding f) : QuasiSeparatedSpace β - TopCat.Presheaf.isSheaf_of_openEmbedding 📋 Mathlib.Topology.Sheaves.SheafCondition.Sites
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : TopCat} {f : X ⟶ Y} {F : TopCat.Presheaf C Y} (h : Topology.IsOpenEmbedding ⇑(CategoryTheory.ConcreteCategory.hom f)) (hF : F.IsSheaf) : TopCat.Presheaf.IsSheaf (⋯.functor.op.comp F) - TopCat.Presheaf.stalkPushforward.stalkPushforward_iso_of_openEmbedding 📋 Mathlib.Topology.Sheaves.Stalks
(C : Type u) [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasColimits C] {X Y : TopCat} {f : X ⟶ Y} (hf : Topology.IsInducing ⇑(CategoryTheory.ConcreteCategory.hom f)) (F : TopCat.Presheaf C X) (x : ↑X) : CategoryTheory.IsIso (TopCat.Presheaf.stalkPushforward C f F x) - quasiSober_of_open_cover 📋 Mathlib.Topology.Sober
{α : Type u_1} [TopologicalSpace α] (S : Set (Set α)) (hS : ∀ (s : ↑S), IsOpen ↑s) [∀ (s : ↑S), QuasiSober ↑↑s] (hS' : ⋃₀ S = ⊤) : QuasiSober α - AlgebraicGeometry.isIso_of_isOpenImmersion_of_opensRange_eq_top 📋 Mathlib.AlgebraicGeometry.OpenImmersion
{X Y : AlgebraicGeometry.Scheme} (f : X ⟶ Y) [AlgebraicGeometry.IsOpenImmersion f] (hf : AlgebraicGeometry.Scheme.Hom.opensRange f = ⊤) : CategoryTheory.IsIso f - AlgebraicGeometry.IsLocalAtSource.of_openCover 📋 Mathlib.AlgebraicGeometry.Morphisms.Basic
{P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme} [AlgebraicGeometry.IsLocalAtSource P] {X Y : AlgebraicGeometry.Scheme} {f : X ⟶ Y} (𝒰 : X.OpenCover) (H : ∀ (i : 𝒰.J), P (CategoryTheory.CategoryStruct.comp (𝒰.map i) f)) : P f - AlgebraicGeometry.IsLocalAtSource.iff_of_openCover 📋 Mathlib.AlgebraicGeometry.Morphisms.Basic
{P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme} [AlgebraicGeometry.IsLocalAtSource P] {X Y : AlgebraicGeometry.Scheme} {f : X ⟶ Y} (𝒰 : X.OpenCover) : P f ↔ ∀ (i : 𝒰.J), P (CategoryTheory.CategoryStruct.comp (𝒰.map i) f) - AlgebraicGeometry.IsLocalAtSource.iff_of_openCover' 📋 Mathlib.AlgebraicGeometry.Morphisms.Basic
{P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme} [self : AlgebraicGeometry.IsLocalAtSource P] {X Y : AlgebraicGeometry.Scheme} (f : X ⟶ Y) (𝒰 : X.OpenCover) : P f ↔ ∀ (i : 𝒰.J), P (CategoryTheory.CategoryStruct.comp (𝒰.map i) f) - AlgebraicGeometry.IsLocalAtTarget.of_openCover 📋 Mathlib.AlgebraicGeometry.Morphisms.Basic
{P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme} [hP : AlgebraicGeometry.IsLocalAtTarget P] {X Y : AlgebraicGeometry.Scheme} {f : X ⟶ Y} (𝒰 : Y.OpenCover) (H : ∀ (i : 𝒰.1), P (AlgebraicGeometry.Scheme.Cover.pullbackHom 𝒰 f i)) : P f - AlgebraicGeometry.IsLocalAtTarget.iff_of_openCover 📋 Mathlib.AlgebraicGeometry.Morphisms.Basic
{P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme} [hP : AlgebraicGeometry.IsLocalAtTarget P] {X Y : AlgebraicGeometry.Scheme} {f : X ⟶ Y} (𝒰 : Y.OpenCover) : P f ↔ ∀ (i : 𝒰.1), P (AlgebraicGeometry.Scheme.Cover.pullbackHom 𝒰 f i) - AlgebraicGeometry.IsLocalAtTarget.iff_of_openCover' 📋 Mathlib.AlgebraicGeometry.Morphisms.Basic
{P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme} [self : AlgebraicGeometry.IsLocalAtTarget P] {X Y : AlgebraicGeometry.Scheme} (f : X ⟶ Y) (𝒰 : Y.OpenCover) : P f ↔ ∀ (i : 𝒰.1), P (AlgebraicGeometry.Scheme.Cover.pullbackHom 𝒰 f i) - AlgebraicGeometry.HasAffineProperty.of_openCover 📋 Mathlib.AlgebraicGeometry.Morphisms.Basic
{P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme} {Q : AlgebraicGeometry.AffineTargetMorphismProperty} [AlgebraicGeometry.HasAffineProperty P Q] {X Y : AlgebraicGeometry.Scheme} {f : X ⟶ Y} (𝒰 : Y.OpenCover) [∀ (i : 𝒰.J), AlgebraicGeometry.IsAffine (𝒰.obj i)] (h𝒰 : ∀ (i : 𝒰.1), Q (AlgebraicGeometry.Scheme.Cover.pullbackHom 𝒰 f i)) : P f - AlgebraicGeometry.HasAffineProperty.iff_of_openCover 📋 Mathlib.AlgebraicGeometry.Morphisms.Basic
{P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme} {Q : AlgebraicGeometry.AffineTargetMorphismProperty} [AlgebraicGeometry.HasAffineProperty P Q] {X Y : AlgebraicGeometry.Scheme} {f : X ⟶ Y} (𝒰 : Y.OpenCover) [∀ (i : 𝒰.J), AlgebraicGeometry.IsAffine (𝒰.obj i)] : P f ↔ ∀ (i : 𝒰.1), Q (AlgebraicGeometry.Scheme.Cover.pullbackHom 𝒰 f i) - AlgebraicGeometry.HasAffineProperty.diagonal_of_openCover_diagonal 📋 Mathlib.AlgebraicGeometry.Morphisms.Constructors
(P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme) {Q : AlgebraicGeometry.AffineTargetMorphismProperty} [AlgebraicGeometry.HasAffineProperty P Q] {X Y : AlgebraicGeometry.Scheme} (f : X ⟶ Y) (𝒰 : Y.OpenCover) [∀ (i : 𝒰.J), AlgebraicGeometry.IsAffine (𝒰.obj i)] (h𝒰 : ∀ (i : 𝒰.1), Q.diagonal (AlgebraicGeometry.Scheme.Cover.pullbackHom 𝒰 f i)) : P.diagonal f - AlgebraicGeometry.HasAffineProperty.diagonal_of_openCover 📋 Mathlib.AlgebraicGeometry.Morphisms.Constructors
(P : CategoryTheory.MorphismProperty AlgebraicGeometry.Scheme) {Q : AlgebraicGeometry.AffineTargetMorphismProperty} [AlgebraicGeometry.HasAffineProperty P Q] {X Y : AlgebraicGeometry.Scheme} (f : X ⟶ Y) (𝒰 : Y.OpenCover) [∀ (i : 𝒰.J), AlgebraicGeometry.IsAffine (𝒰.obj i)] (𝒰' : (i : 𝒰.J) → (CategoryTheory.Limits.pullback f (𝒰.map i)).OpenCover) [∀ (i : 𝒰.J) (j : (𝒰' i).J), AlgebraicGeometry.IsAffine ((𝒰' i).obj j)] (h𝒰' : ∀ (i : 𝒰.J) (j k : (𝒰' i).J), Q (CategoryTheory.Limits.pullback.mapDesc ((𝒰' i).map j) ((𝒰' i).map k) (AlgebraicGeometry.Scheme.Cover.pullbackHom 𝒰 f i))) : P.diagonal f - AlgebraicGeometry.Scheme.IsGermInjective.of_openCover 📋 Mathlib.AlgebraicGeometry.SpreadingOut
{X : AlgebraicGeometry.Scheme} (𝒰 : X.OpenCover) [∀ (i : 𝒰.J), (𝒰.obj i).IsGermInjective] : X.IsGermInjective - mem_tangentCone_of_openSegment_subset 📋 Mathlib.Analysis.Calculus.TangentCone
{G : Type u_4} [NormedAddCommGroup G] [NormedSpace ℝ G] {s : Set G} {x y : G} (h : openSegment ℝ x y ⊆ s) : y - x ∈ tangentConeAt ℝ s x - AddSubgroup.isOpen_of_openAddSubgroup 📋 Mathlib.Topology.Algebra.OpenSubgroup
{G : Type u_1} [AddGroup G] [TopologicalSpace G] [ContinuousAdd G] (H : AddSubgroup G) {U : OpenAddSubgroup G} (h : ↑U ≤ H) : IsOpen ↑H - Subgroup.isOpen_of_openSubgroup 📋 Mathlib.Topology.Algebra.OpenSubgroup
{G : Type u_1} [Group G] [TopologicalSpace G] [ContinuousMul G] (H : Subgroup G) {U : OpenSubgroup G} (h : ↑U ≤ H) : IsOpen ↑H
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using (by default) Ctrl-K Ctrl-S. You can also try the
#loogle
command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
🔍Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
🔍"differ"
finds all lemmas that have"differ"
somewhere in their lemma name.By subexpression:
🔍_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
🔍Real.sqrt ?a * Real.sqrt ?a
If the pattern has parameters, they are matched in any order. Both of these will find
List.map
:
🔍(?a -> ?b) -> List ?a -> List ?b
🔍List ?a -> (?a -> ?b) -> List ?b
By main conclusion:
🔍|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of all→
and∀
) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
🔍|- _ < _ → tsum _ < tsum _
will findtsum_lt_tsum
even though the hypothesisf i < g i
is not the last.
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
🔍 Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ → _
woould find all lemmas which mention the constants Real.sin
and tsum
, have "two"
as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _
(if
there were any such lemmas). Metavariables (?a
) are
assigned independently in each filter.
The #lucky
button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO.
This is Loogle revision d56dbe9
serving mathlib revision 3d845f2