Loogle!
Result
Found 122 declarations mentioning FirstOrder.Language.Functions.
- FirstOrder.Language.Functions π Mathlib.ModelTheory.Basic
(self : FirstOrder.Language) : β β Type u - FirstOrder.Language.Countable.countable_functions π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} [h : Countable L.Symbols] : Countable ((l : β) Γ L.Functions l) - FirstOrder.Language.Structure.funMap π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} [self : L.Structure M] {n : β} : L.Functions n β (Fin n β M) β M - FirstOrder.Language.instDecidableEqFunctions π Mathlib.ModelTheory.Basic
{f : β β Type u_1} {R : β β Type u_2} (n : β) [DecidableEq (f n)] : DecidableEq ({ Functions := f, Relations := R }.Functions n) - FirstOrder.Language.Structure.mk π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} (funMap : {n : β} β L.Functions n β (Fin n β M) β M := by exact fun {n} => isEmptyElim) (RelMap : {n : β} β L.Relations n β (Fin n β M) β Prop := by exact fun {n} => isEmptyElim) : L.Structure M - FirstOrder.Language.card_eq_card_functions_add_card_relations π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} : L.card = (Cardinal.sum fun l => Cardinal.lift.{v, u} (Cardinal.mk (L.Functions l))) + Cardinal.sum fun l => Cardinal.lift.{u, v} (Cardinal.mk (L.Relations l)) - FirstOrder.Language.card_functions_sum π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {L' : FirstOrder.Language} (i : β) : Cardinal.mk ((L.sum L').Functions i) = Cardinal.lift.{u', u} (Cardinal.mk (L.Functions i)) + Cardinal.lift.{u, u'} (Cardinal.mk (L'.Functions i)) - FirstOrder.Language.funMap_sumInl π Mathlib.ModelTheory.Basic
{Lβ : FirstOrder.Language} {Lβ : FirstOrder.Language} {S : Type u_3} [Lβ.Structure S] [Lβ.Structure S] {n : β} (f : Lβ.Functions n) : FirstOrder.Language.Structure.funMap (Sum.inl f) = FirstOrder.Language.Structure.funMap f - FirstOrder.Language.funMap_sumInr π Mathlib.ModelTheory.Basic
{Lβ : FirstOrder.Language} {Lβ : FirstOrder.Language} {S : Type u_3} [Lβ.Structure S] [Lβ.Structure S] {n : β} (f : Lβ.Functions n) : FirstOrder.Language.Structure.funMap (Sum.inr f) = FirstOrder.Language.Structure.funMap f - FirstOrder.Language.Structure.ext π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {x y : L.Structure M} (funMap : @FirstOrder.Language.Structure.funMap L M x = @FirstOrder.Language.Structure.funMap L M y) (RelMap : @FirstOrder.Language.Structure.RelMap L M x = @FirstOrder.Language.Structure.RelMap L M y) : x = y - FirstOrder.Language.Structure.ext_iff π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {x y : L.Structure M} : x = y β @FirstOrder.Language.Structure.funMap L M x = @FirstOrder.Language.Structure.funMap L M y β§ @FirstOrder.Language.Structure.RelMap L M x = @FirstOrder.Language.Structure.RelMap L M y - FirstOrder.Language.Hom.map_fun' π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (self : L.Hom M N) {n : β} (f : L.Functions n) (x : Fin n β M) : self.toFun (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (self.toFun β x) - FirstOrder.Language.Embedding.map_fun' π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (self : L.Embedding M N) {n : β} (f : L.Functions n) (x : Fin n β M) : self.toFun (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (self.toFun β x) - FirstOrder.Language.Equiv.map_fun' π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (self : L.Equiv M N) {n : β} (f : L.Functions n) (x : Fin n β M) : self.toFun (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (self.toFun β x) - FirstOrder.Language.HomClass.map_fun π Mathlib.ModelTheory.Basic
{L : outParam FirstOrder.Language} {F : Type u_3} {M : outParam (Type u_4)} {N : outParam (Type u_5)} {instβ : FunLike F M N} {instβΒΉ : L.Structure M} {instβΒ² : L.Structure N} [self : L.HomClass F M N] (Ο : F) {n : β} (f : L.Functions n) (x : Fin n β M) : Ο (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (βΟ β x) - FirstOrder.Language.StrongHomClass.map_fun π Mathlib.ModelTheory.Basic
{L : outParam FirstOrder.Language} {F : Type u_3} {M : outParam (Type u_4)} {N : outParam (Type u_5)} {instβ : FunLike F M N} {instβΒΉ : L.Structure M} {instβΒ² : L.Structure N} [self : L.StrongHomClass F M N] (Ο : F) {n : β} (f : L.Functions n) (x : Fin n β M) : Ο (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (βΟ β x) - FirstOrder.Language.Embedding.map_fun π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (Ο : L.Embedding M N) {n : β} (f : L.Functions n) (x : Fin n β M) : Ο (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (βΟ β x) - FirstOrder.Language.Hom.map_fun π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (Ο : L.Hom M N) {n : β} (f : L.Functions n) (x : Fin n β M) : Ο (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (βΟ β x) - FirstOrder.Language.Hom.mk π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (toFun : M β N) (map_fun' : β {n : β} (f : L.Functions n) (x : Fin n β M), toFun (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (toFun β x) := by intros; trivial) (map_rel' : β {n : β} (r : L.Relations n) (x : Fin n β M), FirstOrder.Language.Structure.RelMap r x β FirstOrder.Language.Structure.RelMap r (toFun β x) := by intros; trivial) : L.Hom M N - Equiv.inducedStructure_funMap π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type u_1} {N : Type u_2} [L.Structure M] (e : M β N) {nβ : β} (f : L.Functions nβ) (x : Fin nβ β N) : FirstOrder.Language.Structure.funMap f x = e (FirstOrder.Language.Structure.funMap f (βe.symm β x)) - FirstOrder.Language.Embedding.mk π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (toEmbedding : M βͺ N) (map_fun' : β {n : β} (f : L.Functions n) (x : Fin n β M), toEmbedding.toFun (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (toEmbedding.toFun β x) := by intros; trivial) (map_rel' : β {n : β} (r : L.Relations n) (x : Fin n β M), FirstOrder.Language.Structure.RelMap r (toEmbedding.toFun β x) β FirstOrder.Language.Structure.RelMap r x := by intros; trivial) : L.Embedding M N - FirstOrder.Language.Equiv.mk π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (toEquiv : M β N) (map_fun' : β {n : β} (f : L.Functions n) (x : Fin n β M), toEquiv.toFun (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (toEquiv.toFun β x) := by intros; trivial) (map_rel' : β {n : β} (r : L.Relations n) (x : Fin n β M), FirstOrder.Language.Structure.RelMap r (toEquiv.toFun β x) β FirstOrder.Language.Structure.RelMap r x := by intros; trivial) : L.Equiv M N - FirstOrder.Language.Equiv.map_fun π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (Ο : L.Equiv M N) {n : β} (f : L.Functions n) (x : Fin n β M) : Ο (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (βΟ β x) - FirstOrder.Language.HomClass.mk π Mathlib.ModelTheory.Basic
{L : outParam FirstOrder.Language} {F : Type u_3} {M : outParam (Type u_4)} {N : outParam (Type u_5)} [FunLike F M N] [L.Structure M] [L.Structure N] (map_fun : β (Ο : F) {n : β} (f : L.Functions n) (x : Fin n β M), Ο (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (βΟ β x)) (map_rel : β (Ο : F) {n : β} (r : L.Relations n) (x : Fin n β M), FirstOrder.Language.Structure.RelMap r x β FirstOrder.Language.Structure.RelMap r (βΟ β x)) : L.HomClass F M N - FirstOrder.Language.StrongHomClass.mk π Mathlib.ModelTheory.Basic
{L : outParam FirstOrder.Language} {F : Type u_3} {M : outParam (Type u_4)} {N : outParam (Type u_5)} [FunLike F M N] [L.Structure M] [L.Structure N] (map_fun : β (Ο : F) {n : β} (f : L.Functions n) (x : Fin n β M), Ο (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (βΟ β x)) (map_rel : β (Ο : F) {n : β} (r : L.Relations n) (x : Fin n β M), FirstOrder.Language.Structure.RelMap r (βΟ β x) β FirstOrder.Language.Structure.RelMap r x) : L.StrongHomClass F M N - FirstOrder.Language.constantsOn_Functions π Mathlib.ModelTheory.LanguageMap
(Ξ± : Type u') (aβ : β) : (FirstOrder.Language.constantsOn Ξ±).Functions aβ = FirstOrder.Language.constantsOnFunc Ξ± aβ - FirstOrder.Language.LHom.onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (self : L βα΄Έ L') β¦n : ββ¦ : L.Functions n β L'.Functions n - FirstOrder.Language.isEmpty_functions_constantsOn_succ π Mathlib.ModelTheory.LanguageMap
{Ξ± : Type u'} {n : β} : IsEmpty ((FirstOrder.Language.constantsOn Ξ±).Functions (n + 1)) - FirstOrder.Language.LHom.id_onFunction π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) (_n : β) (a : L.Functions _n) : (FirstOrder.Language.LHom.id L).onFunction a = id a - FirstOrder.Language.LHom.mk π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (onFunction : β¦n : ββ¦ β L.Functions n β L'.Functions n := by exact fun {n} => isEmptyElim) (onRelation : β¦n : ββ¦ β L.Relations n β L'.Relations n := by exact fun {n} => isEmptyElim) : L βα΄Έ L' - FirstOrder.Language.LHom.Injective.onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} (self : Ο.Injective) {n : β} : Function.Injective fun f => Ο.onFunction f - FirstOrder.Language.LHom.sumInl_onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (_n : β) (val : L.Functions _n) : FirstOrder.Language.LHom.sumInl.onFunction val = Sum.inl val - FirstOrder.Language.LHom.sumInr_onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (_n : β) (val : L'.Functions _n) : FirstOrder.Language.LHom.sumInr.onFunction val = Sum.inr val - FirstOrder.Language.LHom.ofIsEmpty_onFunction π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) (L' : FirstOrder.Language) [L.IsAlgebraic] [L.IsRelational] {n : β} (a : L.Functions n) : (FirstOrder.Language.LHom.ofIsEmpty L L').onFunction a = isEmptyElim a - FirstOrder.Language.lhomWithConstants_onFunction π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) (Ξ± : Type w') (_n : β) (val : L.Functions _n) : (L.lhomWithConstants Ξ±).onFunction val = Sum.inl val - FirstOrder.Language.LHom.comp_onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {L'' : FirstOrder.Language} (g : L' βα΄Έ L'') (f : L βα΄Έ L') (_n : β) (F : L.Functions _n) : (g.comp f).onFunction F = g.onFunction (f.onFunction F) - FirstOrder.Language.LHom.Injective.mk π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} (onFunction : β {n : β}, Function.Injective fun f => Ο.onFunction f) (onRelation : β {n : β}, Function.Injective fun R => Ο.onRelation R) : Ο.Injective - FirstOrder.Language.LHom.funext π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {F G : L βα΄Έ L'} (h_fun : F.onFunction = G.onFunction) (h_rel : F.onRelation = G.onRelation) : F = G - FirstOrder.Language.LHom.map_onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (Ο : L βα΄Έ L') {M : Type u_1} [L.Structure M] [L'.Structure M] [Ο.IsExpansionOn M] {n : β} (f : L.Functions n) (x : Fin n β M) : FirstOrder.Language.Structure.funMap (Ο.onFunction f) x = FirstOrder.Language.Structure.funMap f x - FirstOrder.Language.LHom.IsExpansionOn.map_onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} {M : Type u_1} {instβ : L.Structure M} {instβΒΉ : L'.Structure M} [self : Ο.IsExpansionOn M] {n : β} (f : L.Functions n) (x : Fin n β M) : FirstOrder.Language.Structure.funMap (Ο.onFunction f) x = FirstOrder.Language.Structure.funMap f x - FirstOrder.Language.LHom.funext_iff π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {F G : L βα΄Έ L'} : F = G β F.onFunction = G.onFunction β§ F.onRelation = G.onRelation - FirstOrder.Language.LHom.funMap_sumInl π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {M : Type w} [L.Structure M] [(L.sum L').Structure M] [FirstOrder.Language.LHom.sumInl.IsExpansionOn M] {n : β} {f : L.Functions n} {x : Fin n β M} : FirstOrder.Language.Structure.funMap (Sum.inl f) x = FirstOrder.Language.Structure.funMap f x - FirstOrder.Language.LHom.funMap_sumInr π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {M : Type w} [L.Structure M] [(L'.sum L).Structure M] [FirstOrder.Language.LHom.sumInr.IsExpansionOn M] {n : β} {f : L.Functions n} {x : Fin n β M} : FirstOrder.Language.Structure.funMap (Sum.inr f) x = FirstOrder.Language.Structure.funMap f x - FirstOrder.Language.withConstants_funMap_sumInl π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) {M : Type w} [L.Structure M] {Ξ± : Type w'} [(L.withConstants Ξ±).Structure M] [(L.lhomWithConstants Ξ±).IsExpansionOn M] {n : β} {f : L.Functions n} {x : Fin n β M} : FirstOrder.Language.Structure.funMap (Sum.inl f) x = FirstOrder.Language.Structure.funMap f x - FirstOrder.Language.LHom.sumElim_onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (Ο : L βα΄Έ L') {L'' : FirstOrder.Language} (Ο : L'' βα΄Έ L') (_n : β) (aβ : L.Functions _n β L''.Functions _n) : (Ο.sumElim Ο).onFunction aβ = Sum.elim (fun f => Ο.onFunction f) (fun f => Ο.onFunction f) aβ - FirstOrder.Language.withConstants_funMap_sumInr π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) {M : Type w} [L.Structure M] (Ξ± : Type u_1) [(FirstOrder.Language.constantsOn Ξ±).Structure M] {a : Ξ±} {x : Fin 0 β M} : FirstOrder.Language.Structure.funMap (Sum.inr a) x = β(L.con a) - FirstOrder.Language.LHom.sumMap_onFunction π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (Ο : L βα΄Έ L') {Lβ : FirstOrder.Language} {Lβ : FirstOrder.Language} (Ο : Lβ βα΄Έ Lβ) (_n : β) (aβ : L.Functions _n β Lβ.Functions _n) : (Ο.sumMap Ο).onFunction aβ = Sum.map (fun f => Ο.onFunction f) (fun f => Ο.onFunction f) aβ - FirstOrder.Language.LHom.IsExpansionOn.mk π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} {M : Type u_1} [L.Structure M] [L'.Structure M] (map_onFunction : β {n : β} (f : L.Functions n) (x : Fin n β M), FirstOrder.Language.Structure.funMap (Ο.onFunction f) x = FirstOrder.Language.Structure.funMap f x := by exact fun {n} => isEmptyElim) (map_onRelation : β {n : β} (R : L.Relations n) (x : Fin n β M), FirstOrder.Language.Structure.RelMap (Ο.onRelation R) x = FirstOrder.Language.Structure.RelMap R x := by exact fun {n} => isEmptyElim) : Ο.IsExpansionOn M - FirstOrder.Language.LHom.defaultExpansion π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (Ο : L βα΄Έ L') [(n : β) β (f : L'.Functions n) β Decidable (f β Set.range fun f => Ο.onFunction f)] [(n : β) β (r : L'.Relations n) β Decidable (r β Set.range fun r => Ο.onRelation r)] (M : Type u_1) [Inhabited M] [L.Structure M] : L'.Structure M - FirstOrder.Language.LHom.Injective.isExpansionOn_default π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} [(n : β) β (f : L'.Functions n) β Decidable (f β Set.range fun f => Ο.onFunction f)] [(n : β) β (r : L'.Relations n) β Decidable (r β Set.range fun r => Ο.onRelation r)] (h : Ο.Injective) (M : Type u_1) [Inhabited M] [L.Structure M] : Ο.IsExpansionOn M - FirstOrder.Language.Functions.term π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {n : β} (f : L.Functions n) : L.Term (Fin n) - FirstOrder.Language.Term.instDecidableEq π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} [DecidableEq Ξ±] [(n : β) β DecidableEq (L.Functions n)] : DecidableEq (L.Term Ξ±) - FirstOrder.Language.Term.func π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} {l : β} (_f : L.Functions l) (_ts : Fin l β L.Term Ξ±) : L.Term Ξ± - FirstOrder.Language.Functions.applyβ π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} (f : L.Functions 1) (t : L.Term Ξ±) : L.Term Ξ± - FirstOrder.Language.Term.substFunc π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ξ± : Type u'} : L.Term Ξ± β ({n : β} β L.Functions n β L'.Term (Fin n)) β L'.Term Ξ± - FirstOrder.Language.Functions.applyβ π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} (f : L.Functions 2) (tβ tβ : L.Term Ξ±) : L.Term Ξ± - FirstOrder.Language.Formula.graph π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {n : β} (f : L.Functions n) : L.Formula (Fin (n + 1)) - FirstOrder.Language.Term.realize_function_term π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {n : β} (v : Fin n β M) (f : L.Functions n) : FirstOrder.Language.Term.realize v f.term = FirstOrder.Language.Structure.funMap f v - FirstOrder.Language.Term.realize_func π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} (v : Ξ± β M) {n : β} (f : L.Functions n) (ts : Fin n β L.Term Ξ±) : FirstOrder.Language.Term.realize v (FirstOrder.Language.func f ts) = FirstOrder.Language.Structure.funMap f fun i => FirstOrder.Language.Term.realize v (ts i) - FirstOrder.Language.Term.realize_functions_applyβ π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {f : L.Functions 1} {t : L.Term Ξ±} {v : Ξ± β M} : FirstOrder.Language.Term.realize v (f.applyβ t) = FirstOrder.Language.Structure.funMap f ![FirstOrder.Language.Term.realize v t] - FirstOrder.Language.Formula.realize_graph π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {n : β} {f : L.Functions n} {x : Fin n β M} {y : M} : (FirstOrder.Language.Formula.graph f).Realize (Fin.cons y x) β FirstOrder.Language.Structure.funMap f x = y - FirstOrder.Language.Term.realize_functions_applyβ π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {f : L.Functions 2} {tβ tβ : L.Term Ξ±} {v : Ξ± β M} : FirstOrder.Language.Term.realize v (f.applyβ tβ tβ) = FirstOrder.Language.Structure.funMap f ![FirstOrder.Language.Term.realize v tβ, FirstOrder.Language.Term.realize v tβ] - FirstOrder.Language.Term.realize_substFunc π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {L' : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ² : Type v'} [L'.Structure M] {c : {n : β} β L.Functions n β L'.Term (Fin n)} (hc : β {n : β} (g : L.Functions n) (y : Fin n β M), FirstOrder.Language.Term.realize y g.term = FirstOrder.Language.Term.realize y (c g)) (v : Ξ² β M) (x : L.Term Ξ²) : FirstOrder.Language.Term.realize v (x.substFunc fun {n} => c) = FirstOrder.Language.Term.realize v x - FirstOrder.Ring.addFunc π Mathlib.ModelTheory.Algebra.Ring.Basic
: FirstOrder.Language.ring.Functions 2 - FirstOrder.Ring.mulFunc π Mathlib.ModelTheory.Algebra.Ring.Basic
: FirstOrder.Language.ring.Functions 2 - FirstOrder.Ring.negFunc π Mathlib.ModelTheory.Algebra.Ring.Basic
: FirstOrder.Language.ring.Functions 1 - FirstOrder.Ring.oneFunc π Mathlib.ModelTheory.Algebra.Ring.Basic
: FirstOrder.Language.ring.Functions 0 - FirstOrder.Ring.zeroFunc π Mathlib.ModelTheory.Algebra.Ring.Basic
: FirstOrder.Language.ring.Functions 0 - FirstOrder.Language.funMap_quotient_mk' π Mathlib.ModelTheory.Quotients
{L : FirstOrder.Language} {M : Type u_1} (s : Setoid M) [ps : L.Prestructure s] {n : β} (f : L.Functions n) (x : Fin n β M) : (FirstOrder.Language.Structure.funMap f fun i => β¦x iβ§) = β¦FirstOrder.Language.Structure.funMap f xβ§ - FirstOrder.Language.Prestructure.fun_equiv π Mathlib.ModelTheory.Quotients
{L : FirstOrder.Language} {M : Type u_1} {s : Setoid M} [self : L.Prestructure s] {n : β} {f : L.Functions n} (x y : Fin n β M) : x β y β FirstOrder.Language.Structure.funMap f x β FirstOrder.Language.Structure.funMap f y - FirstOrder.Language.Prestructure.mk π Mathlib.ModelTheory.Quotients
{L : FirstOrder.Language} {M : Type u_1} {s : Setoid M} (toStructure : L.Structure M) (fun_equiv : β {n : β} {f : L.Functions n} (x y : Fin n β M), x β y β FirstOrder.Language.Structure.funMap f x β FirstOrder.Language.Structure.funMap f y) (rel_equiv : β {n : β} {r : L.Relations n} (x y : Fin n β M), x β y β FirstOrder.Language.Structure.RelMap r x = FirstOrder.Language.Structure.RelMap r y) : L.Prestructure s - FirstOrder.Language.Ultraproduct.funMap_cast π Mathlib.ModelTheory.Ultraproducts
{Ξ± : Type u_1} {M : Ξ± β Type u_2} {u : Ultrafilter Ξ±} {L : FirstOrder.Language} [(a : Ξ±) β L.Structure (M a)] {n : β} (f : L.Functions n) (x : Fin n β (a : Ξ±) β M a) : (FirstOrder.Language.Structure.funMap f fun i => Quotient.mk' (x i)) = Quotient.mk' fun a => FirstOrder.Language.Structure.funMap f fun i => x i a - FirstOrder.Language.Term.encoding π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : Computability.Encoding (L.Term Ξ±) (Ξ± β (i : β) Γ L.Functions i) - FirstOrder.Language.Term.listEncode π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : L.Term Ξ± β List (Ξ± β (i : β) Γ L.Functions i) - FirstOrder.Language.Term.instCountableOfSigmaNatFunctions π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} [h1 : Countable Ξ±] [h2 : Countable ((l : β) Γ L.Functions l)] : Countable (L.Term Ξ±) - FirstOrder.Language.Term.instEncodableOfSigmaNatFunctions π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} [Encodable Ξ±] [Encodable ((i : β) Γ L.Functions i)] : Encodable (L.Term Ξ±) - FirstOrder.Language.Term.listDecode π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : List (Ξ± β (i : β) Γ L.Functions i) β List (L.Term Ξ±) - FirstOrder.Language.Term.listEncode_injective π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : Function.Injective FirstOrder.Language.Term.listEncode - FirstOrder.Language.Term.listDecode_encode_list π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} (l : List (L.Term Ξ±)) : FirstOrder.Language.Term.listDecode (List.flatMap FirstOrder.Language.Term.listEncode l) = l - FirstOrder.Language.Term.card_le π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : Cardinal.mk (L.Term Ξ±) β€ max Cardinal.aleph0 (Cardinal.mk (Ξ± β (i : β) Γ L.Functions i)) - FirstOrder.Language.Term.encoding_encode π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} (aβ : L.Term Ξ±) : FirstOrder.Language.Term.encoding.encode aβ = aβ.listEncode - FirstOrder.Language.Term.card_sigma π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : Cardinal.mk ((n : β) Γ L.Term (Ξ± β Fin n)) = max Cardinal.aleph0 (Cardinal.mk (Ξ± β (i : β) Γ L.Functions i)) - FirstOrder.Language.Term.encoding_decode π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} (l : List (Ξ± β (i : β) Γ L.Functions i)) : FirstOrder.Language.Term.encoding.decode l = (do let a β (FirstOrder.Language.Term.listDecode l).head? pure (some a)).join - FirstOrder.Language.ClosedUnder π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {n : β} (f : L.Functions n) (s : Set M) : Prop - FirstOrder.Language.closedUnder_univ π Mathlib.ModelTheory.Substructures
(L : FirstOrder.Language) {M : Type w} [L.Structure M] {n : β} (f : L.Functions n) : FirstOrder.Language.ClosedUnder f Set.univ - FirstOrder.Language.Substructure.mk π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] (carrier : Set M) (fun_mem : β {n : β} (f : L.Functions n), FirstOrder.Language.ClosedUnder f carrier) : L.Substructure M - FirstOrder.Language.Substructure.fun_mem π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] (self : L.Substructure M) {n : β} (f : L.Functions n) : FirstOrder.Language.ClosedUnder f βself - FirstOrder.Language.ClosedUnder.inter π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {n : β} {f : L.Functions n} {s t : Set M} (hs : FirstOrder.Language.ClosedUnder f s) (ht : FirstOrder.Language.ClosedUnder f t) : FirstOrder.Language.ClosedUnder f (s β© t) - FirstOrder.Language.ClosedUnder.sInf π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {n : β} {f : L.Functions n} {S : Set (Set M)} (hS : β s β S, FirstOrder.Language.ClosedUnder f s) : FirstOrder.Language.ClosedUnder f (sInf S) - FirstOrder.Language.ClosedUnder.inf π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {n : β} {f : L.Functions n} {s t : Set M} (hs : FirstOrder.Language.ClosedUnder f s) (ht : FirstOrder.Language.ClosedUnder f t) : FirstOrder.Language.ClosedUnder f (s β t) - FirstOrder.Language.Substructure.mem_closed_iff π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] (s : Set M) : s β (FirstOrder.Language.Substructure.closure L).closed β β {n : β} (f : L.Functions n), FirstOrder.Language.ClosedUnder f s - Set.Countable.substructure_closure π Mathlib.ModelTheory.Substructures
(L : FirstOrder.Language) {M : Type w} [L.Structure M] {s : Set M} [Countable ((l : β) Γ L.Functions l)] (h : s.Countable) : Countable β₯((FirstOrder.Language.Substructure.closure L).toFun s) - FirstOrder.Language.Substructure.dense_induction π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {p : M β Prop} (x : M) {s : Set M} (hs : (FirstOrder.Language.Substructure.closure L).toFun s = β€) (Hs : β x β s, p x) (Hfun : β {n : β} (f : L.Functions n), FirstOrder.Language.ClosedUnder f (Set.ofPred p)) : p x - FirstOrder.Language.Substructure.closure_induction π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {s : Set M} {p : M β Prop} {x : M} (h : x β (FirstOrder.Language.Substructure.closure L).toFun s) (Hs : β x β s, p x) (Hfun : β {n : β} (f : L.Functions n), FirstOrder.Language.ClosedUnder f (Set.ofPred p)) : p x - FirstOrder.Language.Substructure.lift_card_closure_le π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {s : Set M} : Cardinal.lift.{u, w} (Cardinal.mk β₯((FirstOrder.Language.Substructure.closure L).toFun s)) β€ max Cardinal.aleph0 (Cardinal.lift.{u, w} (Cardinal.mk βs) + Cardinal.lift.{w, u} (Cardinal.mk ((i : β) Γ L.Functions i))) - FirstOrder.Language.Substructure.closure_induction' π Mathlib.ModelTheory.Substructures
{L : FirstOrder.Language} {M : Type w} [L.Structure M] (s : Set M) {p : (x : M) β x β (FirstOrder.Language.Substructure.closure L).toFun s β Prop} (Hs : β (x : M) (h : x β s), p x β―) (Hfun : β {n : β} (f : L.Functions n), FirstOrder.Language.ClosedUnder f {x | β (hx : x β (FirstOrder.Language.Substructure.closure L).toFun s), p x hx}) {x : M} (hx : x β (FirstOrder.Language.Substructure.closure L).toFun s) : p x hx - FirstOrder.Language.ElementaryEmbedding.map_fun π Mathlib.ModelTheory.ElementaryMaps
{L : FirstOrder.Language} {M : Type u_1} {N : Type u_2} [L.Structure M] [L.Structure N] (Ο : L.ElementaryEmbedding M N) {n : β} (f : L.Functions n) (x : Fin n β M) : Ο (FirstOrder.Language.Structure.funMap f x) = FirstOrder.Language.Structure.funMap f (βΟ β x) - FirstOrder.Language.ElementaryEmbedding.ofModelsElementaryDiagram_toFun π Mathlib.ModelTheory.ElementaryMaps
(L : FirstOrder.Language) (M : Type u_1) [L.Structure M] (N : Type u_5) [L.Structure N] [(L.withConstants M).Structure N] [(L.lhomWithConstants M).IsExpansionOn N] [N β¨ L.elementaryDiagram M] (aβ : M) : (FirstOrder.Language.ElementaryEmbedding.ofModelsElementaryDiagram L M N) aβ = (FirstOrder.Language.constantMap β Sum.inr) aβ - Set.DefinableFun.fun_symbol π Mathlib.ModelTheory.Definability
{M : Type u_1} {L : FirstOrder.Language} [L.Structure M] {n : β} (f : L.Functions n) : Set.DefinableFun L β (FirstOrder.Language.Structure.funMap f) - Set.TermDefinable.trans π Mathlib.ModelTheory.Definability
{M : Type w} {A : Set M} {L : FirstOrder.Language} {L' : FirstOrder.Language} [L.Structure M] [L'.Structure M] {Ξ² : Type u_1} {f : (Ξ² β M) β M} (hβ : A.TermDefinable L f) (hβ : β {n : β} (g : (L.withConstants βA).Functions n), A.TermDefinable L' fun v => FirstOrder.Language.Term.realize v g.term) : A.TermDefinable L' f - FirstOrder.Language.Theory.ModelType.defaultExpansion π Mathlib.ModelTheory.Bundled
{L : FirstOrder.Language} {T : L.Theory} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} (h : Ο.Injective) [(n : β) β (f : L'.Functions n) β Decidable (f β Set.range fun f => Ο.onFunction f)] [(n : β) β (r : L'.Relations n) β Decidable (r β Set.range fun r => Ο.onRelation r)] (M : T.ModelType) [Inhabited βM] : (Ο.onTheory T).ModelType - FirstOrder.Language.Theory.ModelType.defaultExpansion_Carrier π Mathlib.ModelTheory.Bundled
{L : FirstOrder.Language} {T : L.Theory} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} (h : Ο.Injective) [(n : β) β (f : L'.Functions n) β Decidable (f β Set.range fun f => Ο.onFunction f)] [(n : β) β (r : L'.Relations n) β Decidable (r β Set.range fun r => Ο.onRelation r)] (M : T.ModelType) [Inhabited βM] : β(FirstOrder.Language.Theory.ModelType.defaultExpansion h M) = βM - FirstOrder.Language.Theory.ModelType.defaultExpansion_struc π Mathlib.ModelTheory.Bundled
{L : FirstOrder.Language} {T : L.Theory} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} (h : Ο.Injective) [(n : β) β (f : L'.Functions n) β Decidable (f β Set.range fun f => Ο.onFunction f)] [(n : β) β (r : L'.Relations n) β Decidable (r β Set.range fun r => Ο.onRelation r)] (M : T.ModelType) [Inhabited βM] : (FirstOrder.Language.Theory.ModelType.defaultExpansion h M).struc = Ο.defaultExpansion βM - FirstOrder.Language.skolemβ_Functions π Mathlib.ModelTheory.Skolem
(L : FirstOrder.Language) (n : β) : L.skolemβ.Functions n = L.BoundedFormula Empty (n + 1) - FirstOrder.Language.card_functions_sum_skolemβ_le π Mathlib.ModelTheory.Skolem
{L : FirstOrder.Language} : Cardinal.mk ((n : β) Γ (L.sum L.skolemβ).Functions n) β€ max Cardinal.aleph0 L.card - FirstOrder.Language.card_functions_sum_skolemβ π Mathlib.ModelTheory.Skolem
{L : FirstOrder.Language} : Cardinal.mk ((n : β) Γ (L.sum L.skolemβ).Functions n) = Cardinal.mk ((n : β) Γ L.BoundedFormula Empty (n + 1)) - FirstOrder.Language.Formula.isAtomic_graph π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} {n : β} (f : L.Functions n) : FirstOrder.Language.BoundedFormula.IsAtomic (FirstOrder.Language.Formula.graph f) - FirstOrder.Language.Structure.cg_iff_countable π Mathlib.ModelTheory.FinitelyGenerated
{L : FirstOrder.Language} {M : Type u_1} [L.Structure M] [Countable ((l : β) Γ L.Functions l)] : FirstOrder.Language.Structure.CG L M β Countable M - FirstOrder.Language.Substructure.cg_iff_countable π Mathlib.ModelTheory.FinitelyGenerated
{L : FirstOrder.Language} {M : Type u_1} [L.Structure M] [Countable ((l : β) Γ L.Functions l)] {s : L.Substructure M} : s.CG β Countable β₯s - FirstOrder.Language.DirectLimit.funMap_equiv_unify π Mathlib.ModelTheory.DirectLimit
{L : FirstOrder.Language} {ΞΉ : Type v} [Preorder ΞΉ] (G : ΞΉ β Type w) [(i : ΞΉ) β L.Structure (G i)] (f : (i j : ΞΉ) β i β€ j β L.Embedding (G i) (G j)) [IsDirectedOrder ΞΉ] [DirectedSystem G fun i j h => β(f i j h)] [Nonempty ΞΉ] {n : β} (F : L.Functions n) (x : Fin n β FirstOrder.Language.Structure.Sigma f) (i : ΞΉ) (hi : i β upperBounds (Set.range (Sigma.fst β x))) : FirstOrder.Language.Structure.funMap F x β FirstOrder.Language.Structure.Sigma.mk f i (FirstOrder.Language.Structure.funMap F (FirstOrder.Language.DirectLimit.unify f x i hi)) - FirstOrder.Language.DirectLimit.funMap_quotient_mk'_sigma_mk' π Mathlib.ModelTheory.DirectLimit
{L : FirstOrder.Language} {ΞΉ : Type v} [Preorder ΞΉ] (G : ΞΉ β Type w) [(i : ΞΉ) β L.Structure (G i)] (f : (i j : ΞΉ) β i β€ j β L.Embedding (G i) (G j)) [IsDirectedOrder ΞΉ] [DirectedSystem G fun i j h => β(f i j h)] [Nonempty ΞΉ] {n : β} {F : L.Functions n} {i : ΞΉ} {x : Fin n β G i} : (FirstOrder.Language.Structure.funMap F fun a => β¦FirstOrder.Language.Structure.Sigma.mk f i (x a)β§) = β¦FirstOrder.Language.Structure.Sigma.mk f i (FirstOrder.Language.Structure.funMap F x)β§ - FirstOrder.Language.DirectLimit.funMap_unify_equiv π Mathlib.ModelTheory.DirectLimit
{L : FirstOrder.Language} {ΞΉ : Type v} [Preorder ΞΉ] (G : ΞΉ β Type w) [(i : ΞΉ) β L.Structure (G i)] (f : (i j : ΞΉ) β i β€ j β L.Embedding (G i) (G j)) [IsDirectedOrder ΞΉ] [DirectedSystem G fun i j h => β(f i j h)] {n : β} (F : L.Functions n) (x : Fin n β FirstOrder.Language.Structure.Sigma f) (i j : ΞΉ) (hi : i β upperBounds (Set.range (Sigma.fst β x))) (hj : j β upperBounds (Set.range (Sigma.fst β x))) : FirstOrder.Language.Structure.Sigma.mk f i (FirstOrder.Language.Structure.funMap F (FirstOrder.Language.DirectLimit.unify f x i hi)) β FirstOrder.Language.Structure.Sigma.mk f j (FirstOrder.Language.Structure.funMap F (FirstOrder.Language.DirectLimit.unify f x j hj)) - FirstOrder.Language.IsFraisseLimit π Mathlib.ModelTheory.Fraisse
{L : FirstOrder.Language} (K : Set (CategoryTheory.Bundled L.Structure)) (M : Type w) [L.Structure M] [Countable ((l : β) Γ L.Functions l)] [Countable M] : Prop - FirstOrder.Language.IsFraisseLimit.isFraisse π Mathlib.ModelTheory.Fraisse
{L : FirstOrder.Language} (K : Set (CategoryTheory.Bundled L.Structure)) {M : Type w} [L.Structure M] [Countable ((l : β) Γ L.Functions l)] [Countable M] (h : FirstOrder.Language.IsFraisseLimit K M) : FirstOrder.Language.IsFraisse K - FirstOrder.Language.IsFraisseLimit.ultrahomogeneous π Mathlib.ModelTheory.Fraisse
{L : FirstOrder.Language} {K : Set (CategoryTheory.Bundled L.Structure)} {M : Type w} [L.Structure M] [Countable ((l : β) Γ L.Functions l)] [Countable M] (self : FirstOrder.Language.IsFraisseLimit K M) : L.IsUltrahomogeneous M - FirstOrder.Language.IsFraisseLimit.age π Mathlib.ModelTheory.Fraisse
{L : FirstOrder.Language} {K : Set (CategoryTheory.Bundled L.Structure)} {M : Type w} [L.Structure M] [Countable ((l : β) Γ L.Functions l)] [Countable M] (self : FirstOrder.Language.IsFraisseLimit K M) : L.age M = K - FirstOrder.Language.IsFraisseLimit.mk π Mathlib.ModelTheory.Fraisse
{L : FirstOrder.Language} {K : Set (CategoryTheory.Bundled L.Structure)} {M : Type w} [L.Structure M] [Countable ((l : β) Γ L.Functions l)] [Countable M] (ultrahomogeneous : L.IsUltrahomogeneous M) (age : L.age M = K) : FirstOrder.Language.IsFraisseLimit K M - FirstOrder.Language.IsFraisseLimit.isExtensionPair π Mathlib.ModelTheory.Fraisse
{L : FirstOrder.Language} {K : Set (CategoryTheory.Bundled L.Structure)} {M : Type w} [L.Structure M] {N : Type w} [L.Structure N] [Countable ((l : β) Γ L.Functions l)] [Countable M] [Countable N] (hM : FirstOrder.Language.IsFraisseLimit K M) (hN : FirstOrder.Language.IsFraisseLimit K N) : L.IsExtensionPair M N - FirstOrder.Language.IsFraisseLimit.nonempty_equiv π Mathlib.ModelTheory.Fraisse
{L : FirstOrder.Language} {K : Set (CategoryTheory.Bundled L.Structure)} {M : Type w} [L.Structure M] {N : Type w} [L.Structure N] [Countable ((l : β) Γ L.Functions l)] [Countable M] [Countable N] (hM : FirstOrder.Language.IsFraisseLimit K M) (hN : FirstOrder.Language.IsFraisseLimit K N) : Nonempty (L.Equiv M N) - FirstOrder.Language.empty.isFraisseLimit_of_countable_infinite π Mathlib.ModelTheory.Fraisse
(M : Type u_1) [Countable M] [Infinite M] [FirstOrder.Language.empty.Structure M] : FirstOrder.Language.IsFraisseLimit {S | Finite βS} M - FirstOrder.Language.exists_countable_is_age_of_iff π Mathlib.ModelTheory.Fraisse
{L : FirstOrder.Language} {K : Set (CategoryTheory.Bundled L.Structure)} [Countable ((l : β) Γ L.Functions l)] : (β M, Countable βM β§ L.age βM = K) β K.Nonempty β§ (β (M N : CategoryTheory.Bundled L.Structure), Nonempty (L.Equiv βM βN) β (M β K β N β K)) β§ (Quotient.mk' '' K).Countable β§ (β M β K, FirstOrder.Language.Structure.FG L βM) β§ FirstOrder.Language.Hereditary K β§ FirstOrder.Language.JointEmbedding K - FirstOrder.Language.orderLHom_onFunction π Mathlib.ModelTheory.Order
(L : FirstOrder.Language) [L.IsOrdered] {n : β} (a : FirstOrder.Language.order.Functions n) : L.orderLHom.onFunction a = isEmptyElim a
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. 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 ?aIf 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 ?bBy 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_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
β’ (_ : Type _)finds all definitions which provide data whileβ’ (_ : Prop)finds all theorems (and definitions of proofs).
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, _ * _, _ ^ _, |- _ < _ β _
would 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. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision ce5dd8c