Loogle!
Result
Found 118 declarations mentioning FirstOrder.Language.Relations.
- FirstOrder.Language.Relations π Mathlib.ModelTheory.Basic
(self : FirstOrder.Language) : β β Type v - FirstOrder.Language.Structure.RelMap π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} [self : L.Structure M] {n : β} : L.Relations n β (Fin n β M) β Prop - FirstOrder.Language.instDecidableEqRelations π Mathlib.ModelTheory.Basic
{f : β β Type u_1} {R : β β Type u_2} (n : β) [DecidableEq (R n)] : DecidableEq ({ Functions := f, Relations := R }.Relations 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_relations_sum π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {L' : FirstOrder.Language} (i : β) : Cardinal.mk ((L.sum L').Relations i) = Cardinal.lift.{v', v} (Cardinal.mk (L.Relations i)) + Cardinal.lift.{v, v'} (Cardinal.mk (L'.Relations i)) - FirstOrder.Language.relMap_sumInl π Mathlib.ModelTheory.Basic
{Lβ : FirstOrder.Language} {Lβ : FirstOrder.Language} {S : Type u_3} [Lβ.Structure S] [Lβ.Structure S] {n : β} (R : Lβ.Relations n) : FirstOrder.Language.Structure.RelMap (Sum.inl R) = FirstOrder.Language.Structure.RelMap R - FirstOrder.Language.relMap_sumInr π Mathlib.ModelTheory.Basic
{Lβ : FirstOrder.Language} {Lβ : FirstOrder.Language} {S : Type u_3} [Lβ.Structure S] [Lβ.Structure S] {n : β} (R : Lβ.Relations n) : FirstOrder.Language.Structure.RelMap (Sum.inr R) = FirstOrder.Language.Structure.RelMap R - FirstOrder.Language.Hom.map_rel' π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (self : L.Hom M N) {n : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r x β FirstOrder.Language.Structure.RelMap r (self.toFun β x) - 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.Embedding.map_rel' π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (self : L.Embedding M N) {n : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r (self.toFun β x) β FirstOrder.Language.Structure.RelMap r x - FirstOrder.Language.Equiv.map_rel' π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (self : L.Equiv M N) {n : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r (self.toFun β x) β FirstOrder.Language.Structure.RelMap r x - FirstOrder.Language.Hom.map_rel π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (Ο : L.Hom M N) {n : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r x β FirstOrder.Language.Structure.RelMap r (βΟ β x) - FirstOrder.Language.Embedding.map_rel π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (Ο : L.Embedding M N) {n : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r (βΟ β x) β FirstOrder.Language.Structure.RelMap r x - FirstOrder.Language.HomClass.map_rel π 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 : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r x β FirstOrder.Language.Structure.RelMap r (βΟ β x) - FirstOrder.Language.StrongHomClass.map_rel π 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 : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r (βΟ β x) β FirstOrder.Language.Structure.RelMap r x - Equiv.inducedStructure_RelMap π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type u_1} {N : Type u_2} [L.Structure M] (e : M β N) {nβ : β} (r : L.Relations nβ) (x : Fin nβ β N) : FirstOrder.Language.Structure.RelMap r x = FirstOrder.Language.Structure.RelMap r (βe.symm β x) - FirstOrder.Language.Equiv.map_rel π Mathlib.ModelTheory.Basic
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] (Ο : L.Equiv M N) {n : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r (βΟ β x) β FirstOrder.Language.Structure.RelMap r 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 - 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.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_Relations π Mathlib.ModelTheory.LanguageMap
(Ξ± : Type u') (xβ : β) : (FirstOrder.Language.constantsOn Ξ±).Relations xβ = Empty - FirstOrder.Language.LHom.onRelation π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (self : L βα΄Έ L') β¦n : ββ¦ : L.Relations n β L'.Relations n - FirstOrder.Language.LHom.id_onRelation π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) (_n : β) (a : L.Relations _n) : (FirstOrder.Language.LHom.id L).onRelation 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.onRelation π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ο : L βα΄Έ L'} (self : Ο.Injective) {n : β} : Function.Injective fun R => Ο.onRelation R - FirstOrder.Language.lhomWithConstants_onRelation π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) (Ξ± : Type w') (_n : β) (val : L.Relations _n) : (L.lhomWithConstants Ξ±).onRelation val = Sum.inl val - FirstOrder.Language.LHom.sumInl_onRelation π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (_n : β) (val : L.Relations _n) : FirstOrder.Language.LHom.sumInl.onRelation val = Sum.inl val - FirstOrder.Language.LHom.sumInr_onRelation π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (_n : β) (val : L'.Relations _n) : FirstOrder.Language.LHom.sumInr.onRelation val = Sum.inr val - FirstOrder.Language.LHom.ofIsEmpty_onRelation π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) (L' : FirstOrder.Language) [L.IsAlgebraic] [L.IsRelational] {n : β} (a : L.Relations n) : (FirstOrder.Language.LHom.ofIsEmpty L L').onRelation a = isEmptyElim a - FirstOrder.Language.LHom.comp_onRelation π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} {L'' : FirstOrder.Language} (g : L' βα΄Έ L'') (f : L βα΄Έ L') (xβ : β) (R : L.Relations xβ) : (g.comp f).onRelation R = g.onRelation (f.onRelation R) - 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_onRelation π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (Ο : L βα΄Έ L') {M : Type u_1} [L.Structure M] [L'.Structure M] [Ο.IsExpansionOn M] {n : β} (R : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap (Ο.onRelation R) x = FirstOrder.Language.Structure.RelMap R x - FirstOrder.Language.LHom.IsExpansionOn.map_onRelation π 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 : β} (R : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap (Ο.onRelation R) x = FirstOrder.Language.Structure.RelMap R 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.withConstants_relMap_sumInl π Mathlib.ModelTheory.LanguageMap
(L : FirstOrder.Language) {M : Type w} [L.Structure M] {Ξ± : Type w'} [(L.withConstants Ξ±).Structure M] [(L.lhomWithConstants Ξ±).IsExpansionOn M] {n : β} {R : L.Relations n} {x : Fin n β M} : FirstOrder.Language.Structure.RelMap (Sum.inl R) x = FirstOrder.Language.Structure.RelMap R x - FirstOrder.Language.LHom.sumElim_onRelation π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (Ο : L βα΄Έ L') {L'' : FirstOrder.Language} (Ο : L'' βα΄Έ L') (_n : β) (aβ : L.Relations _n β L''.Relations _n) : (Ο.sumElim Ο).onRelation aβ = Sum.elim (fun f => Ο.onRelation f) (fun f => Ο.onRelation f) aβ - FirstOrder.Language.LHom.sumMap_onRelation π Mathlib.ModelTheory.LanguageMap
{L : FirstOrder.Language} {L' : FirstOrder.Language} (Ο : L βα΄Έ L') {Lβ : FirstOrder.Language} {Lβ : FirstOrder.Language} (Ο : Lβ βα΄Έ Lβ) (_n : β) (aβ : L.Relations _n β Lβ.Relations _n) : (Ο.sumMap Ο).onRelation aβ = Sum.map (fun f => Ο.onRelation f) (fun f => Ο.onRelation 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.Relations.antisymmetric π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} (r : L.Relations 2) : L.Sentence - FirstOrder.Language.Relations.irreflexive π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} (r : L.Relations 2) : L.Sentence - FirstOrder.Language.Relations.reflexive π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} (r : L.Relations 2) : L.Sentence - FirstOrder.Language.Relations.symmetric π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} (r : L.Relations 2) : L.Sentence - FirstOrder.Language.Relations.total π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} (r : L.Relations 2) : L.Sentence - FirstOrder.Language.Relations.transitive π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} (r : L.Relations 2) : L.Sentence - FirstOrder.Language.Relations.formula π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} {n : β} (R : L.Relations n) (ts : Fin n β L.Term Ξ±) : L.Formula Ξ± - FirstOrder.Language.Relations.formulaβ π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} (r : L.Relations 1) (t : L.Term Ξ±) : L.Formula Ξ± - FirstOrder.Language.Relations.formulaβ π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} (r : L.Relations 2) (tβ tβ : L.Term Ξ±) : L.Formula Ξ± - FirstOrder.Language.BoundedFormula.rel π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} {n l : β} (R : L.Relations l) (ts : Fin l β L.Term (Ξ± β Fin n)) : L.BoundedFormula Ξ± n - FirstOrder.Language.Relations.boundedFormula π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} {n l : β} (R : L.Relations n) (ts : Fin n β L.Term (Ξ± β Fin l)) : L.BoundedFormula Ξ± l - FirstOrder.Language.Relations.boundedFormulaβ π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} {n : β} (r : L.Relations 1) (t : L.Term (Ξ± β Fin n)) : L.BoundedFormula Ξ± n - FirstOrder.Language.Relations.boundedFormulaβ π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} {n : β} (r : L.Relations 2) (tβ tβ : L.Term (Ξ± β Fin n)) : L.BoundedFormula Ξ± n - FirstOrder.Language.BoundedFormula.mapTermRelEquiv π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ξ± : Type u'} {Ξ² : Type v'} (ft : (n : β) β L.Term (Ξ± β Fin n) β L'.Term (Ξ² β Fin n)) (fr : (n : β) β L.Relations n β L'.Relations n) {n : β} : L.BoundedFormula Ξ± n β L'.BoundedFormula Ξ² n - FirstOrder.Language.BoundedFormula.mapTermRel_id_id_id π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {Ξ± : Type u'} {n : β} (Ο : L.BoundedFormula Ξ± n) : FirstOrder.Language.BoundedFormula.mapTermRel (fun x => id) (fun x => id) (fun x => id) Ο = Ο - FirstOrder.Language.BoundedFormula.mapTermRel π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ξ± : Type u'} {Ξ² : Type v'} {g : β β β} (ft : (n : β) β L.Term (Ξ± β Fin n) β L'.Term (Ξ² β Fin (g n))) (fr : (n : β) β L.Relations n β L'.Relations n) (h : (n : β) β L'.BoundedFormula Ξ² (g (n + 1)) β L'.BoundedFormula Ξ² (g n + 1)) {n : β} : L.BoundedFormula Ξ± n β L'.BoundedFormula Ξ² (g n) - FirstOrder.Language.BoundedFormula.mapTermRel_mapTermRel π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ξ± : Type u'} {Ξ² : Type v'} {Ξ³ : Type u_1} {L'' : FirstOrder.Language} (ft : (n : β) β L.Term (Ξ± β Fin n) β L'.Term (Ξ² β Fin n)) (fr : (n : β) β L.Relations n β L'.Relations n) (ft' : (n : β) β L'.Term (Ξ² β Fin n) β L''.Term (Ξ³ β Fin n)) (fr' : (n : β) β L'.Relations n β L''.Relations n) {n : β} (Ο : L.BoundedFormula Ξ± n) : FirstOrder.Language.BoundedFormula.mapTermRel ft' fr' (fun x => id) (FirstOrder.Language.BoundedFormula.mapTermRel ft fr (fun x => id) Ο) = FirstOrder.Language.BoundedFormula.mapTermRel (fun x => ft' x β ft x) (fun x => fr' x β fr x) (fun x => id) Ο - FirstOrder.Language.BoundedFormula.mapTermRelEquiv_apply π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ξ± : Type u'} {Ξ² : Type v'} (ft : (n : β) β L.Term (Ξ± β Fin n) β L'.Term (Ξ² β Fin n)) (fr : (n : β) β L.Relations n β L'.Relations n) {n : β} (aβ : L.BoundedFormula Ξ± n) : (FirstOrder.Language.BoundedFormula.mapTermRelEquiv ft fr) aβ = FirstOrder.Language.BoundedFormula.mapTermRel (fun n => β(ft n)) (fun n => β(fr n)) (fun x => id) aβ - FirstOrder.Language.BoundedFormula.mapTermRelEquiv_symm_apply π Mathlib.ModelTheory.Syntax
{L : FirstOrder.Language} {L' : FirstOrder.Language} {Ξ± : Type u'} {Ξ² : Type v'} (ft : (n : β) β L.Term (Ξ± β Fin n) β L'.Term (Ξ² β Fin n)) (fr : (n : β) β L.Relations n β L'.Relations n) {n : β} (aβ : L'.BoundedFormula Ξ² n) : (FirstOrder.Language.BoundedFormula.mapTermRelEquiv ft fr).symm aβ = FirstOrder.Language.BoundedFormula.mapTermRel (fun n => β(ft n).symm) (fun n => β(fr n).symm) (fun x => id) aβ - FirstOrder.Language.Formula.realize_rel π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {v : Ξ± β M} {k : β} {R : L.Relations k} {ts : Fin k β L.Term Ξ±} : (R.formula ts).Realize v β FirstOrder.Language.Structure.RelMap R fun i => FirstOrder.Language.Term.realize v (ts i) - FirstOrder.Language.Relations.realize_antisymmetric π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {r : L.Relations 2} : M β¨ r.antisymmetric β Std.Antisymm fun x y => FirstOrder.Language.Structure.RelMap r ![x, y] - FirstOrder.Language.Relations.realize_irreflexive π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {r : L.Relations 2} : M β¨ r.irreflexive β Std.Irrefl fun x y => FirstOrder.Language.Structure.RelMap r ![x, y] - FirstOrder.Language.Relations.realize_reflexive π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {r : L.Relations 2} : M β¨ r.reflexive β Std.Refl fun x y => FirstOrder.Language.Structure.RelMap r ![x, y] - FirstOrder.Language.Relations.realize_symmetric π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {r : L.Relations 2} : M β¨ r.symmetric β Std.Symm fun x y => FirstOrder.Language.Structure.RelMap r ![x, y] - FirstOrder.Language.Relations.realize_total π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {r : L.Relations 2} : M β¨ r.total β Std.Total fun x y => FirstOrder.Language.Structure.RelMap r ![x, y] - FirstOrder.Language.Relations.realize_transitive π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {r : L.Relations 2} : M β¨ r.transitive β IsTrans M fun x y => FirstOrder.Language.Structure.RelMap r ![x, y] - FirstOrder.Language.Formula.realize_relβ π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {v : Ξ± β M} {R : L.Relations 1} {t : L.Term Ξ±} : (R.formulaβ t).Realize v β FirstOrder.Language.Structure.RelMap R ![FirstOrder.Language.Term.realize v t] - FirstOrder.Language.BoundedFormula.realize_rel π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {l : β} {v : Ξ± β M} {xs : Fin l β M} {k : β} {R : L.Relations k} {ts : Fin k β L.Term (Ξ± β Fin l)} : (R.boundedFormula ts).Realize v xs β FirstOrder.Language.Structure.RelMap R fun i => FirstOrder.Language.Term.realize (Sum.elim v xs) (ts i) - FirstOrder.Language.Formula.realize_relβ π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {v : Ξ± β M} {R : L.Relations 2} {tβ tβ : L.Term Ξ±} : (R.formulaβ tβ tβ).Realize v β FirstOrder.Language.Structure.RelMap R ![FirstOrder.Language.Term.realize v tβ, FirstOrder.Language.Term.realize v tβ] - FirstOrder.Language.BoundedFormula.realize_relβ π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {l : β} {v : Ξ± β M} {xs : Fin l β M} {R : L.Relations 1} {t : L.Term (Ξ± β Fin l)} : (R.boundedFormulaβ t).Realize v xs β FirstOrder.Language.Structure.RelMap R ![FirstOrder.Language.Term.realize (Sum.elim v xs) t] - FirstOrder.Language.BoundedFormula.realize_relβ π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {l : β} {v : Ξ± β M} {xs : Fin l β M} {R : L.Relations 2} {tβ tβ : L.Term (Ξ± β Fin l)} : (R.boundedFormulaβ tβ tβ).Realize v xs β FirstOrder.Language.Structure.RelMap R ![FirstOrder.Language.Term.realize (Sum.elim v xs) tβ, FirstOrder.Language.Term.realize (Sum.elim v xs) tβ] - FirstOrder.Language.BoundedFormula.realize_mapTermRel_id π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {L' : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {Ξ² : Type v'} [L'.Structure M] {ft : (n : β) β L.Term (Ξ± β Fin n) β L'.Term (Ξ² β Fin n)} {fr : (n : β) β L.Relations n β L'.Relations n} {n : β} {Ο : L.BoundedFormula Ξ± n} {v : Ξ± β M} {v' : Ξ² β M} {xs : Fin n β M} (h1 : β (n : β) (t : L.Term (Ξ± β Fin n)) (xs : Fin n β M), FirstOrder.Language.Term.realize (Sum.elim v' xs) (ft n t) = FirstOrder.Language.Term.realize (Sum.elim v xs) t) (h2 : β (n : β) (R : L.Relations n) (x : Fin n β M), FirstOrder.Language.Structure.RelMap (fr n R) x = FirstOrder.Language.Structure.RelMap R x) : (FirstOrder.Language.BoundedFormula.mapTermRel ft fr (fun x => id) Ο).Realize v' xs β Ο.Realize v xs - FirstOrder.Language.BoundedFormula.realize_mapTermRel_add_castLe π Mathlib.ModelTheory.Semantics
{L : FirstOrder.Language} {L' : FirstOrder.Language} {M : Type w} [L.Structure M] {Ξ± : Type u'} {Ξ² : Type v'} [L'.Structure M] {k : β} {ft : (n : β) β L.Term (Ξ± β Fin n) β L'.Term (Ξ² β Fin (k + n))} {fr : (n : β) β L.Relations n β L'.Relations n} {n : β} {Ο : L.BoundedFormula Ξ± n} (v : {n : β} β (Fin (k + n) β M) β Ξ± β M) {v' : Ξ² β M} (xs : Fin (k + n) β M) (h1 : β (n : β) (t : L.Term (Ξ± β Fin n)) (xs' : Fin (k + n) β M), FirstOrder.Language.Term.realize (Sum.elim v' xs') (ft n t) = FirstOrder.Language.Term.realize (Sum.elim (v xs') (xs' β Fin.natAdd k)) t) (h2 : β (n : β) (R : L.Relations n) (x : Fin n β M), FirstOrder.Language.Structure.RelMap (fr n R) x = FirstOrder.Language.Structure.RelMap R x) (hv : β (n : β) (xs : Fin (k + n) β M) (x : M), v (Fin.snoc xs x) = v xs) : (FirstOrder.Language.BoundedFormula.mapTermRel ft fr (fun x => FirstOrder.Language.BoundedFormula.castLE β―) Ο).Realize v' xs β Ο.Realize (v xs) (xs β Fin.natAdd k) - FirstOrder.Language.relMap_quotient_mk' π Mathlib.ModelTheory.Quotients
{L : FirstOrder.Language} {M : Type u_1} (s : Setoid M) [ps : L.Prestructure s] {n : β} (r : L.Relations n) (x : Fin n β M) : (FirstOrder.Language.Structure.RelMap r fun i => β¦x iβ§) β FirstOrder.Language.Structure.RelMap r x - FirstOrder.Language.Prestructure.rel_equiv π Mathlib.ModelTheory.Quotients
{L : FirstOrder.Language} {M : Type u_1} {s : Setoid M} [self : L.Prestructure s] {n : β} {r : L.Relations n} (x y : Fin n β M) : x β y β FirstOrder.Language.Structure.RelMap r x = FirstOrder.Language.Structure.RelMap r 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.BoundedFormula.listEncode π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} {n : β} : L.BoundedFormula Ξ± n β List ((k : β) Γ L.Term (Ξ± β Fin k) β (n : β) Γ L.Relations n β β) - FirstOrder.Language.BoundedFormula.encoding π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : Computability.Encoding ((n : β) Γ L.BoundedFormula Ξ± n) ((k : β) Γ L.Term (Ξ± β Fin k) β (n : β) Γ L.Relations n β β) - FirstOrder.Language.BoundedFormula.listDecode π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : List ((k : β) Γ L.Term (Ξ± β Fin k) β (n : β) Γ L.Relations n β β) β List ((n : β) Γ L.BoundedFormula Ξ± n) - FirstOrder.Language.BoundedFormula.listEncode_sigma_injective π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} : Function.Injective fun Ο => Ο.snd.listEncode - FirstOrder.Language.BoundedFormula.listDecode_encode_list π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} (l : List ((n : β) Γ L.BoundedFormula Ξ± n)) : FirstOrder.Language.BoundedFormula.listDecode (List.flatMap (fun Ο => Ο.snd.listEncode) l) = l - FirstOrder.Language.BoundedFormula.encoding_encode π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} (Ο : (n : β) Γ L.BoundedFormula Ξ± n) : FirstOrder.Language.BoundedFormula.encoding.encode Ο = Ο.snd.listEncode - FirstOrder.Language.BoundedFormula.encoding_decode π Mathlib.ModelTheory.Encoding
{L : FirstOrder.Language} {Ξ± : Type u'} (l : List ((k : β) Γ L.Term (Ξ± β Fin k) β (n : β) Γ L.Relations n β β)) : FirstOrder.Language.BoundedFormula.encoding.decode l = (FirstOrder.Language.BoundedFormula.listDecode l)[0]? - FirstOrder.Language.ElementaryEmbedding.map_rel π 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 : β} (r : L.Relations n) (x : Fin n β M) : FirstOrder.Language.Structure.RelMap r (βΟ β x) β FirstOrder.Language.Structure.RelMap r x - 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β_Relations π Mathlib.ModelTheory.Skolem
(L : FirstOrder.Language) (xβ : β) : L.skolemβ.Relations xβ = Empty - FirstOrder.Language.Relations.isUniversal_antisymmetric π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} (r : L.Relations 2) : FirstOrder.Language.BoundedFormula.IsUniversal r.antisymmetric - FirstOrder.Language.Relations.isUniversal_irreflexive π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} (r : L.Relations 2) : FirstOrder.Language.BoundedFormula.IsUniversal r.irreflexive - FirstOrder.Language.Relations.isUniversal_reflexive π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} (r : L.Relations 2) : FirstOrder.Language.BoundedFormula.IsUniversal r.reflexive - FirstOrder.Language.Relations.isUniversal_symmetric π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} (r : L.Relations 2) : FirstOrder.Language.BoundedFormula.IsUniversal r.symmetric - FirstOrder.Language.Relations.isUniversal_total π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} (r : L.Relations 2) : FirstOrder.Language.BoundedFormula.IsUniversal r.total - FirstOrder.Language.Relations.isUniversal_transitive π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} (r : L.Relations 2) : FirstOrder.Language.BoundedFormula.IsUniversal r.transitive - FirstOrder.Language.Relations.isAtomic π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} {Ξ± : Type u'} {n l : β} (r : L.Relations l) (ts : Fin l β L.Term (Ξ± β Fin n)) : (r.boundedFormula ts).IsAtomic - FirstOrder.Language.Relations.isQF π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} {Ξ± : Type u'} {n l : β} (r : L.Relations l) (ts : Fin l β L.Term (Ξ± β Fin n)) : (r.boundedFormula ts).IsQF - FirstOrder.Language.BoundedFormula.IsAtomic.rel π Mathlib.ModelTheory.Complexity
{L : FirstOrder.Language} {Ξ± : Type u'} {n l : β} (R : L.Relations l) (ts : Fin l β L.Term (Ξ± β Fin n)) : (R.boundedFormula ts).IsAtomic - FirstOrder.Language.DirectLimit.relMap_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 : β} (R : L.Relations n) (x : Fin n β FirstOrder.Language.Structure.Sigma f) (i : ΞΉ) (hi : i β upperBounds (Set.range (Sigma.fst β x))) : FirstOrder.Language.Structure.RelMap R x = FirstOrder.Language.Structure.RelMap R (FirstOrder.Language.DirectLimit.unify f x i hi) - FirstOrder.Language.DirectLimit.relMap_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 : β} {R : L.Relations n} {i : ΞΉ} {x : Fin n β G i} : (FirstOrder.Language.Structure.RelMap R fun a => β¦FirstOrder.Language.Structure.Sigma.mk f i (x a)β§) = FirstOrder.Language.Structure.RelMap R x - FirstOrder.Language.DirectLimit.relMap_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 : β} (R : L.Relations 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.RelMap R (FirstOrder.Language.DirectLimit.unify f x i hi) = FirstOrder.Language.Structure.RelMap R (FirstOrder.Language.DirectLimit.unify f x j hj) - FirstOrder.Language.inhabited_FGEquiv_of_IsEmpty_Constants_and_Relations π Mathlib.ModelTheory.PartialEquiv
{L : FirstOrder.Language} {M : Type w} {N : Type w'} [L.Structure M] [L.Structure N] [IsEmpty L.Constants] [IsEmpty (L.Relations 0)] : Inhabited (L.FGEquiv 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.graph.instSubsingleton π Mathlib.ModelTheory.Graph
{n : β} : Subsingleton (FirstOrder.Language.graph.Relations n) - FirstOrder.Language.adj π Mathlib.ModelTheory.Graph
: FirstOrder.Language.graph.Relations 2 - FirstOrder.Language.order.instSubsingleton π Mathlib.ModelTheory.Order
{n : β} : Subsingleton (FirstOrder.Language.order.Relations n) - FirstOrder.Language.order.instUniqueSigmaNatRelations π Mathlib.ModelTheory.Order
: Unique ((n : β) Γ FirstOrder.Language.order.Relations n) - FirstOrder.Language.order.instIsEmptyRelationsOfNatNat π Mathlib.ModelTheory.Order
: IsEmpty (FirstOrder.Language.order.Relations 0) - FirstOrder.Language.IsOrdered.leSymb π Mathlib.ModelTheory.Order
{L : FirstOrder.Language} [self : L.IsOrdered] : L.Relations 2 - FirstOrder.Language.IsOrdered.mk π Mathlib.ModelTheory.Order
{L : FirstOrder.Language} (leSymb : L.Relations 2) : L.IsOrdered - FirstOrder.Language.order.relation_eq_leSymb π Mathlib.ModelTheory.Order
(R : FirstOrder.Language.order.Relations 2) : R = FirstOrder.Language.leSymb - FirstOrder.Language.order.forall_relations π Mathlib.ModelTheory.Order
{P : (n : β) β FirstOrder.Language.order.Relations n β Prop} : (β {n : β} (R : FirstOrder.Language.order.Relations n), P n R) β P 2 FirstOrder.Language.orderRel.le - FirstOrder.Language.orderLHom_leSymb π Mathlib.ModelTheory.Order
(L : FirstOrder.Language) [L.IsOrdered] : L.orderLHom.onRelation FirstOrder.Language.leSymb = FirstOrder.Language.leSymb - FirstOrder.Language.orderLHom_onRelation π Mathlib.ModelTheory.Order
(L : FirstOrder.Language) [L.IsOrdered] (xβ : β) (xβΒΉ : FirstOrder.Language.order.Relations xβ) : L.orderLHom.onRelation xβΒΉ = match xβ, xβΒΉ with | .(2), FirstOrder.Language.orderRel.le => FirstOrder.Language.leSymb
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