Loogle!
Result
Found 94 declarations mentioning DFinsupp.support.
- DFinsupp.support 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (f : Π₀ (i : ι), β i) : Finset ι - DFinsupp.support_zero 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] : DFinsupp.support 0 = ∅ - DFinsupp.support_erase 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (i : ι) (f : Π₀ (i : ι), β i) : (DFinsupp.erase i f).support = f.support.erase i - DFinsupp.support_single_subset 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {i : ι} {b : β i} : (fun₀ | i => b).support ⊆ {i} - DFinsupp.support_single 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {i : ι} {b : β i} (hb : b ≠ 0) : (fun₀ | i => b).support = {i} - DFinsupp.support_single_ne_zero 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {i : ι} {b : β i} (hb : b ≠ 0) : (fun₀ | i => b).support = {i} - DFinsupp.support_filter 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {p : ι → Prop} [DecidablePred p] (f : Π₀ (i : ι), β i) : (DFinsupp.filter p f).support = {x ∈ f.support | p x} - DFinsupp.support_eq_empty 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {f : Π₀ (i : ι), β i} : f.support = ∅ ↔ f = 0 - DFinsupp.mem_support_iff 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {f : Π₀ (i : ι), β i} {i : ι} : i ∈ f.support ↔ f i ≠ 0 - DFinsupp.mem_support_toFun 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (f : Π₀ (i : ι), β i) (i : ι) : i ∈ f.support ↔ f i ≠ 0 - DFinsupp.notMem_support_iff 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {f : Π₀ (i : ι), β i} {i : ι} : i ∉ f.support ↔ f i = 0 - DFinsupp.support_update_ne_zero 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (f : Π₀ (i : ι), β i) (i : ι) {b : β i} (h : b ≠ 0) : (f.update i b).support = insert i f.support - DFinsupp.support_mk_subset 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {s : Finset ι} {x : (i : ↑↑s) → β ↑i} : (DFinsupp.mk s x).support ⊆ s - DFinsupp.support_subset_iff 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {s : Set ι} {f : Π₀ (i : ι), β i} : ↑f.support ⊆ s ↔ ∀ i ∉ s, f i = 0 - DFinsupp.support_subtypeDomain 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {p : ι → Prop} [DecidablePred p] {f : Π₀ (i : ι), β i} : (DFinsupp.subtypeDomain p f).support = Finset.subtype p f.support - DFinsupp.eq_mk_support 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (f : Π₀ (i : ι), β i) : f = DFinsupp.mk f.support fun i => f ↑i - DFinsupp.support_update 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (f : Π₀ (i : ι), β i) (i : ι) (b : β i) [Decidable (b = 0)] : (f.update i b).support = if b = 0 then (DFinsupp.erase i f).support else insert i f.support - DFinsupp.support_mapRange 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β₁ : ι → Type v₁} {β₂ : ι → Type v₂} [DecidableEq ι] [(i : ι) → Zero (β₁ i)] [(i : ι) → Zero (β₂ i)] [(i : ι) → (x : β₁ i) → Decidable (x ≠ 0)] [(i : ι) → (x : β₂ i) → Decidable (x ≠ 0)] {f : (i : ι) → β₁ i → β₂ i} {hf : ∀ (i : ι), f i 0 = 0} {g : Π₀ (i : ι), β₁ i} : (DFinsupp.mapRange f hf g).support ⊆ g.support - DFinsupp.erase_def 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (i : ι) (f : Π₀ (i : ι), β i) : DFinsupp.erase i f = DFinsupp.mk (f.support.erase i) fun j => f ↑j - DFinsupp.filter_def 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {p : ι → Prop} [DecidablePred p] (f : Π₀ (i : ι), β i) : DFinsupp.filter p f = DFinsupp.mk (Finset.filter p f.support) fun i => f ↑i - DFinsupp.support_neg 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → AddGroup (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {f : Π₀ (i : ι), β i} : (-f).support = f.support - DFinsupp.support_mk'_subset 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {f : (i : ι) → β i} {s : Multiset ι} {h : ∀ (i : ι), i ∈ s ∨ f i = 0} : { toFun := f, support' := Trunc.mk ⟨s, h⟩ }.support ⊆ s.toFinset - DFinsupp.mapRange_def 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β₁ : ι → Type v₁} {β₂ : ι → Type v₂} [DecidableEq ι] [(i : ι) → Zero (β₁ i)] [(i : ι) → Zero (β₂ i)] [(i : ι) → (x : β₁ i) → Decidable (x ≠ 0)] {f : (i : ι) → β₁ i → β₂ i} {hf : ∀ (i : ι), f i 0 = 0} {g : Π₀ (i : ι), β₁ i} : DFinsupp.mapRange f hf g = DFinsupp.mk g.support fun i => f (↑i) (g ↑i) - DFinsupp.support_zipWith 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} {β₁ : ι → Type v₁} {β₂ : ι → Type v₂} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] [(i : ι) → Zero (β₁ i)] [(i : ι) → Zero (β₂ i)] [(i : ι) → (x : β₁ i) → Decidable (x ≠ 0)] [(i : ι) → (x : β₂ i) → Decidable (x ≠ 0)] {f : (i : ι) → β₁ i → β₂ i → β i} {hf : ∀ (i : ι), f i 0 0 = 0} {g₁ : Π₀ (i : ι), β₁ i} {g₂ : Π₀ (i : ι), β₂ i} : (DFinsupp.zipWith f hf g₁ g₂).support ⊆ g₁.support ∪ g₂.support - DFinsupp.subtypeSupportEqEquiv 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (s : Finset ι) : { f // f.support = s } ≃ ((i : ↥s) → { x // x ≠ 0 }) - DFinsupp.support_add 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → AddZeroClass (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {g₁ g₂ : Π₀ (i : ι), β i} : (g₁ + g₂).support ⊆ g₁.support ∪ g₂.support - DFinsupp.subtypeDomain_def 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {p : ι → Prop} [DecidablePred p] (f : Π₀ (i : ι), β i) : DFinsupp.subtypeDomain p f = DFinsupp.mk (Finset.subtype p f.support) fun i => f ↑↑i - DFinsupp.zipWith_def 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} {β₁ : ι → Type v₁} {β₂ : ι → Type v₂} [dec : DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → Zero (β₁ i)] [(i : ι) → Zero (β₂ i)] [(i : ι) → (x : β₁ i) → Decidable (x ≠ 0)] [(i : ι) → (x : β₂ i) → Decidable (x ≠ 0)] {f : (i : ι) → β₁ i → β₂ i → β i} {hf : ∀ (i : ι), f i 0 0 = 0} {g₁ : Π₀ (i : ι), β₁ i} {g₂ : Π₀ (i : ι), β₂ i} : DFinsupp.zipWith f hf g₁ g₂ = DFinsupp.mk (g₁.support ∪ g₂.support) fun i => f (↑i) (g₁ ↑i) (g₂ ↑i) - DFinsupp.sigmaFinsetFunEquiv_apply_fst 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (a✝ : Π₀ (i : ι), β i) : (DFinsupp.sigmaFinsetFunEquiv a✝).fst = a✝.support - DFinsupp.subtypeSupportEqEquiv_apply_coe 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (s : Finset ι) (x✝ : { f // f.support = s }) (i : ↥s) : ↑((DFinsupp.subtypeSupportEqEquiv s) x✝ i) = ↑x✝ ↑i - DFinsupp.subtypeSupportEqEquiv_symm_apply_coe 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (s : Finset ι) (f : (i : ↥s) → { x // x ≠ 0 }) : ↑((DFinsupp.subtypeSupportEqEquiv s).symm f) = DFinsupp.mk s fun i => ↑(f i) - DFinsupp.sigmaFinsetFunEquiv_apply_snd_coe 📋 Mathlib.Data.DFinsupp.Defs
{ι : Type u} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (a✝ : Π₀ (i : ι), β i) (i : ↥((Equiv.sigmaFiberEquiv DFinsupp.support).symm a✝).fst) : ↑((DFinsupp.sigmaFinsetFunEquiv a✝).snd i) = a✝ ↑i - DFinsupp.prod_of_support_subset 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {γ : Type w} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] [CommMonoid γ] {f : Π₀ (i : ι), β i} {g : (i : ι) → β i → γ} {s : Finset ι} (hs : f.support ⊆ s) (map_zero : ∀ i ∈ s, g i 0 = 1) : f.prod g = ∏ i ∈ s, g i (f i) - DFinsupp.sum_of_support_subset 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {γ : Type w} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] [AddCommMonoid γ] {f : Π₀ (i : ι), β i} {g : (i : ι) → β i → γ} {s : Finset ι} (hs : f.support ⊆ s) (map_zero : ∀ i ∈ s, g i 0 = 0) : f.sum g = ∑ i ∈ s, g i (f i) - DFinsupp.prod_subtypeDomain_index 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {γ : Type w} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] [CommMonoid γ] {v : Π₀ (i : ι), β i} {p : ι → Prop} [DecidablePred p] {h : (i : ι) → β i → γ} (hp : ∀ x ∈ v.support, p x) : ((DFinsupp.subtypeDomain p v).prod fun i b => h (↑i) b) = v.prod h - DFinsupp.sum_subtypeDomain_index 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {γ : Type w} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] [AddCommMonoid γ] {v : Π₀ (i : ι), β i} {p : ι → Prop} [DecidablePred p] {h : (i : ι) → β i → γ} (hp : ∀ x ∈ v.support, p x) : ((DFinsupp.subtypeDomain p v).sum fun i b => h (↑i) b) = v.sum h - DFinsupp.prod_ne_zero_iff 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {γ : Type w} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [CommMonoidWithZero γ] [Nontrivial γ] [NoZeroDivisors γ] [(i : ι) → DecidableEq (β i)] {f : Π₀ (i : ι), β i} {g : (i : ι) → β i → γ} : f.prod g ≠ 0 ↔ ∀ i ∈ f.support, g i (f i) ≠ 0 - DFinsupp.prod_eq_zero_iff 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {γ : Type w} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [CommMonoidWithZero γ] [Nontrivial γ] [NoZeroDivisors γ] [(i : ι) → DecidableEq (β i)] {f : Π₀ (i : ι), β i} {g : (i : ι) → β i → γ} : f.prod g = 0 ↔ ∃ i ∈ f.support, g i (f i) = 0 - DFinsupp.support_sum 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {β : ι → Type v} [DecidableEq ι] {ι₁ : Type u₁} [DecidableEq ι₁] {β₁ : ι₁ → Type v₁} [(i₁ : ι₁) → Zero (β₁ i₁)] [(i : ι₁) → (x : β₁ i) → Decidable (x ≠ 0)] [(i : ι) → AddCommMonoid (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {f : Π₀ (i₁ : ι₁), β₁ i₁} {g : (i₁ : ι₁) → β₁ i₁ → Π₀ (i : ι), β i} : (f.sum g).support ⊆ f.support.biUnion fun i => (g i (f i)).support - DFinsupp.prod_congr_of_eq_on_union 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {γ : Type w} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] [CommMonoid γ] {f1 f2 : Π₀ (i : ι), β i} {g1 g2 : (i : ι) → β i → γ} (h : ∀ x ∈ f1.support ∪ f2.support, g1 x (f1 x) = g2 x (f2 x)) (h1 : ∀ x ∈ f1.support ∪ f2.support, g1 x 0 = 1) (h2 : ∀ x ∈ f1.support ∪ f2.support, g2 x 0 = 1) : f1.prod g1 = f2.prod g2 - DFinsupp.sum_congr_of_eq_on_union 📋 Mathlib.Data.DFinsupp.BigOperators
{ι : Type u} {γ : Type w} {β : ι → Type v} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] [AddCommMonoid γ] {f1 f2 : Π₀ (i : ι), β i} {g1 g2 : (i : ι) → β i → γ} (h : ∀ x ∈ f1.support ∪ f2.support, g1 x (f1 x) = g2 x (f2 x)) (h1 : ∀ x ∈ f1.support ∪ f2.support, g1 x 0 = 0) (h2 : ∀ x ∈ f1.support ∪ f2.support, g2 x 0 = 0) : f1.sum g1 = f2.sum g2 - DFinsupp.support_smul 📋 Mathlib.Data.DFinsupp.Module
{ι : Type u} {β : ι → Type v} [DecidableEq ι] {γ : Type w} [(i : ι) → Zero (β i)] [(i : ι) → SMulZeroClass γ (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (b : γ) (v : Π₀ (i : ι), β i) : (b • v).support ⊆ v.support - toDFinsupp_support 📋 Mathlib.Data.Finsupp.ToDFinsupp
{ι : Type u_1} {M : Type u_3} [DecidableEq ι] [Zero M] [(m : M) → Decidable (m ≠ 0)] (f : ι →₀ M) : f.toDFinsupp.support = f.support - DFinsupp.toFinsupp_support 📋 Mathlib.Data.Finsupp.ToDFinsupp
{ι : Type u_1} {M : Type u_3} [DecidableEq ι] [Zero M] [(m : M) → Decidable (m ≠ 0)] (f : Π₀ (x : ι), M) : f.toFinsupp.support = f.support - sigmaFinsuppEquivDFinsupp_support 📋 Mathlib.Data.Finsupp.ToDFinsupp
{ι : Type u_1} {η : ι → Type u_4} {N : Type u_5} [DecidableEq ι] [Zero N] [(i : ι) → (x : η i →₀ N) → Decidable (x ≠ 0)] (f : (i : ι) × η i →₀ N) : (sigmaFinsuppEquivDFinsupp f).support = f.splitSupport - DirectSum.support_zero 📋 Mathlib.Algebra.DirectSum.Basic
{ι : Type v} {β : ι → Type w} [(i : ι) → AddCommMonoid (β i)] [DecidableEq ι] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] : DFinsupp.support 0 = ∅ - DirectSum.support_of_subset 📋 Mathlib.Algebra.DirectSum.Basic
{ι : Type v} {β : ι → Type w} [(i : ι) → AddCommMonoid (β i)] [DecidableEq ι] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {i : ι} {b : β i} : DFinsupp.support ((DirectSum.of β i) b) ⊆ {i} - DirectSum.support_of 📋 Mathlib.Algebra.DirectSum.Basic
{ι : Type v} {β : ι → Type w} [(i : ι) → AddCommMonoid (β i)] [DecidableEq ι] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (i : ι) (x : β i) (h : x ≠ 0) : DFinsupp.support ((DirectSum.of β i) x) = {i} - DirectSum.sum_support_of 📋 Mathlib.Algebra.DirectSum.Basic
{ι : Type v} {β : ι → Type w} [(i : ι) → AddCommMonoid (β i)] [DecidableEq ι] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] (x : DirectSum ι fun i => β i) : ∑ i ∈ DFinsupp.support x, (DirectSum.of β i) (x i) = x - DirectSum.support_subset 📋 Mathlib.Algebra.DirectSum.Basic
{ι : Type v} {M : Type u_1} {S : Type u_2} [AddCommMonoid M] [SetLike S M] [AddSubmonoidClass S M] [DecidableEq ι] [DecidableEq M] (A : ι → S) (x : DirectSum ι fun i => ↥(A i)) : (Function.support fun i => ↑(x i)) ⊆ ↑(DFinsupp.support x) - DirectSum.support_smul 📋 Mathlib.Algebra.DirectSum.Module
{R : Type u} [Semiring R] {ι : Type v} {M : ι → Type w} [(i : ι) → AddCommMonoid (M i)] [(i : ι) → Module R (M i)] [DecidableEq ι] [(i : ι) → (x : M i) → Decidable (x ≠ 0)] (c : R) (v : DirectSum ι fun i => M i) : DFinsupp.support (c • v) ⊆ DFinsupp.support v - MultilinearMap.support_dfinsuppFamily_subset 📋 Mathlib.LinearAlgebra.Multilinear.DFinsupp
{ι : Type uι} {κ : ι → Type uκ} {R : Type uR} {M : (i : ι) → κ i → Type uM} {N : ((i : ι) → κ i) → Type uN} [DecidableEq ι] [Fintype ι] [Semiring R] [(i : ι) → (k : κ i) → AddCommMonoid (M i k)] [(p : (i : ι) → κ i) → AddCommMonoid (N p)] [(i : ι) → (k : κ i) → Module R (M i k)] [(p : (i : ι) → κ i) → Module R (N p)] [(i : ι) → DecidableEq (κ i)] [(i : ι) → (j : κ i) → (x : M i j) → Decidable (x ≠ 0)] [(i : (i : ι) → κ i) → (x : N i) → Decidable (x ≠ 0)] (f : (p : (i : ι) → κ i) → MultilinearMap R (fun i => M i (p i)) (N p)) (x : (i : ι) → Π₀ (j : κ i), M i j) : ((MultilinearMap.dfinsuppFamily f) x).support ⊆ Fintype.piFinset fun i => (x i).support - MultilinearMap.fromDFinsuppEquiv_apply 📋 Mathlib.LinearAlgebra.Multilinear.DFinsupp
{ι : Type uι} {κ : ι → Type uκ} {R : Type uR} {M : (i : ι) → κ i → Type uM} [DecidableEq ι] [Fintype ι] [CommSemiring R] [(i : ι) → (k : κ i) → AddCommMonoid (M i k)] [(i : ι) → (k : κ i) → Module R (M i k)] {N : Type u_1} [AddCommMonoid N] [Module R N] [(i : ι) → DecidableEq (κ i)] [(i : ι) → (j : κ i) → (x : M i j) → Decidable (x ≠ 0)] (f : (p : (i : ι) → κ i) → MultilinearMap R (fun i => M i (p i)) N) (x : (i : ι) → Π₀ (j : κ i), M i j) : ((MultilinearMap.fromDFinsuppEquiv κ R) f) x = ∑ p ∈ Fintype.piFinset fun i => (x i).support, (f p) fun i => (x i) (p i) - DFinsupp.support_inf_union_support_sup 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → Zero (α i)] [(i : ι) → Lattice (α i)] (f g : Π₀ (i : ι), α i) [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] : (f ⊓ g).support ∪ (f ⊔ g).support = f.support ∪ g.support - DFinsupp.support_sup_union_support_inf 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → Zero (α i)] [(i : ι) → Lattice (α i)] (f g : Π₀ (i : ι), α i) [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] : (f ⊔ g).support ∪ (f ⊓ g).support = f.support ∪ g.support - DFinsupp.support_monotone 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), CanonicallyOrderedAdd (α i)] [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] : Monotone DFinsupp.support - DFinsupp.support_mono 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), CanonicallyOrderedAdd (α i)] [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] {f g : Π₀ (i : ι), α i} (hfg : f ≤ g) : f.support ⊆ g.support - DFinsupp.support_tsub 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), CanonicallyOrderedAdd (α i)] [(i : ι) → Sub (α i)] [∀ (i : ι), OrderedSub (α i)] {f g : Π₀ (i : ι), α i} [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] : (f - g).support ⊆ f.support - DFinsupp.le_iff 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), CanonicallyOrderedAdd (α i)] [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] {f g : Π₀ (i : ι), α i} : f ≤ g ↔ ∀ i ∈ f.support, f i ≤ g i - DFinsupp.le_iff' 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), CanonicallyOrderedAdd (α i)] [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] {f g : Π₀ (i : ι), α i} {s : Finset ι} (hf : f.support ⊆ s) : f ≤ g ↔ ∀ i ∈ s, f i ≤ g i - DFinsupp.subset_support_tsub 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), CanonicallyOrderedAdd (α i)] [(i : ι) → Sub (α i)] [∀ (i : ι), OrderedSub (α i)] {f g : Π₀ (i : ι), α i} [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] : f.support \ g.support ⊆ (f - g).support - DFinsupp.disjoint_iff 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → LinearOrder (α i)] [∀ (i : ι), IsBotZeroClass (α i)] [DecidableEq ι] {f g : Π₀ (i : ι), α i} : Disjoint f g ↔ Disjoint f.support g.support - DFinsupp.support_inf 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → LinearOrder (α i)] [∀ (i : ι), IsBotZeroClass (α i)] [DecidableEq ι] {f g : Π₀ (i : ι), α i} : (f ⊓ g).support = f.support ∩ g.support - DFinsupp.support_sup 📋 Mathlib.Data.DFinsupp.Order
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → AddCommMonoid (α i)] [(i : ι) → LinearOrder (α i)] [∀ (i : ι), IsBotZeroClass (α i)] [DecidableEq ι] {f g : Π₀ (i : ι), α i} : (f ⊔ g).support = f.support ∪ g.support - DFinsupp.neLocus_zero_left 📋 Mathlib.Data.DFinsupp.NeLocus
{α : Type u_1} {N : α → Type u_2} [DecidableEq α] [(a : α) → DecidableEq (N a)] [(a : α) → Zero (N a)] (f : Π₀ (a : α), N a) : DFinsupp.neLocus 0 f = f.support - DFinsupp.neLocus_zero_right 📋 Mathlib.Data.DFinsupp.NeLocus
{α : Type u_1} {N : α → Type u_2} [DecidableEq α] [(a : α) → DecidableEq (N a)] [(a : α) → Zero (N a)] (f : Π₀ (a : α), N a) : f.neLocus 0 = f.support - DFinsupp.neLocus_eq_support_sub 📋 Mathlib.Data.DFinsupp.NeLocus
{α : Type u_1} {N : α → Type u_2} [DecidableEq α] [(a : α) → DecidableEq (N a)] [(a : α) → AddGroup (N a)] (f g : Π₀ (a : α), N a) : f.neLocus g = (f - g).support - DFinsupp.neLocus_self_sub_left 📋 Mathlib.Data.DFinsupp.NeLocus
{α : Type u_1} {N : α → Type u_2} [DecidableEq α] [(a : α) → DecidableEq (N a)] [(a : α) → AddGroup (N a)] (f g : Π₀ (a : α), N a) : (f - g).neLocus f = g.support - DFinsupp.neLocus_self_sub_right 📋 Mathlib.Data.DFinsupp.NeLocus
{α : Type u_1} {N : α → Type u_2} [DecidableEq α] [(a : α) → DecidableEq (N a)] [(a : α) → AddGroup (N a)] (f g : Π₀ (a : α), N a) : f.neLocus (f - g) = g.support - DFinsupp.neLocus_self_add_left 📋 Mathlib.Data.DFinsupp.NeLocus
{α : Type u_1} {N : α → Type u_2} [DecidableEq α] [(a : α) → DecidableEq (N a)] [(a : α) → AddGroup (N a)] (f g : Π₀ (a : α), N a) : (f + g).neLocus f = g.support - DFinsupp.neLocus_self_add_right 📋 Mathlib.Data.DFinsupp.NeLocus
{α : Type u_1} {N : α → Type u_2} [DecidableEq α] [(a : α) → DecidableEq (N a)] [(a : α) → AddGroup (N a)] (f g : Π₀ (a : α), N a) : f.neLocus (f + g) = g.support - DirectSum.mul_eq_sum_support_ghas_mul 📋 Mathlib.Algebra.DirectSum.Ring
{ι : Type u_1} [DecidableEq ι] (A : ι → Type u_2) [(i : ι) → AddCommMonoid (A i)] [AddMonoid ι] [DirectSum.GSemiring A] [(i : ι) → (x : A i) → Decidable (x ≠ 0)] (a a' : DirectSum ι fun i => A i) : a * a' = ∑ ij ∈ DFinsupp.support a ×ˢ DFinsupp.support a', (DirectSum.of A (ij.1 + ij.2)) (GradedMonoid.GMul.mul (a ij.1) (a' ij.2)) - DirectSum.sum_support_decompose 📋 Mathlib.Algebra.DirectSum.Decomposition
{ι : Type u_1} {M : Type u_3} {σ : Type u_4} [DecidableEq ι] [AddCommMonoid M] [SetLike σ M] [AddSubmonoidClass σ M] (ℳ : ι → σ) [DirectSum.Decomposition ℳ] [(i : ι) → (x : ↥(ℳ i)) → Decidable (x ≠ 0)] (r : M) : ∑ i ∈ DFinsupp.support ((DirectSum.decompose ℳ) r), ↑(((DirectSum.decompose ℳ) r) i) = r - DirectSum.coe_mul_apply 📋 Mathlib.Algebra.DirectSum.Internal
{ι : Type u_1} {σ : Type u_2} {R : Type u_4} [DecidableEq ι] [Semiring R] [SetLike σ R] [AddSubmonoidClass σ R] (A : ι → σ) [AddMonoid ι] [SetLike.GradedMonoid A] [(i : ι) → (x : ↥(A i)) → Decidable (x ≠ 0)] (r r' : DirectSum ι fun i => ↥(A i)) (n : ι) : ↑((r * r') n) = ∑ ij ∈ DFinsupp.support r ×ˢ DFinsupp.support r' with ij.1 + ij.2 = n, ↑(r ij.1) * ↑(r' ij.2) - GradedRing.mem_support_iff 📋 Mathlib.RingTheory.GradedAlgebra.Basic
{ι : Type u_1} {A : Type u_3} {σ : Type u_4} [DecidableEq ι] [AddMonoid ι] [Semiring A] [SetLike σ A] [AddSubmonoidClass σ A] (𝒜 : ι → σ) [GradedRing 𝒜] [(i : ι) → (x : ↥(𝒜 i)) → Decidable (x ≠ 0)] (r : A) (i : ι) : i ∈ DFinsupp.support ((DirectSum.decompose 𝒜) r) ↔ (GradedRing.proj 𝒜 i) r ≠ 0 - GradedAlgebra.mem_support_iff 📋 Mathlib.RingTheory.GradedAlgebra.Basic
{ι : Type u_1} {R : Type u_2} {A : Type u_3} [DecidableEq ι] [AddMonoid ι] [CommSemiring R] [Semiring A] [Algebra R A] (𝒜 : ι → Submodule R A) [GradedAlgebra 𝒜] [DecidableEq A] (r : A) (i : ι) : i ∈ DFinsupp.support ((DirectSum.decompose 𝒜) r) ↔ (GradedAlgebra.proj 𝒜 i) r ≠ 0 - coeff_addMonoidAlgebraAddEquivDirectSum_symm_apply_support 📋 Mathlib.Algebra.MonoidAlgebra.ToDirectSum
{ι : Type u_1} {M : Type u_3} [DecidableEq ι] [Semiring M] [(m : M) → Decidable (m ≠ 0)] (f : DirectSum ι fun x => M) : (addMonoidAlgebraAddEquivDirectSum.symm f).coeff.support = DFinsupp.support f - DFinsupp.Lex.acc_of_single 📋 Mathlib.Data.DFinsupp.WellFounded
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → Zero (α i)] {r : ι → ι → Prop} {s : (i : ι) → α i → α i → Prop} (hbot : ∀ ⦃i : ι⦄ ⦃a : α i⦄, ¬s i a 0) [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] (x : Π₀ (i : ι), α i) : (∀ i ∈ x.support, Acc (DFinsupp.Lex r s) fun₀ | i => x i) → Acc (DFinsupp.Lex r s) x - DFinsupp.Lex.acc 📋 Mathlib.Data.DFinsupp.WellFounded
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → Zero (α i)] {r : ι → ι → Prop} {s : (i : ι) → α i → α i → Prop} (hbot : ∀ ⦃i : ι⦄ ⦃a : α i⦄, ¬s i a 0) (hs : ∀ (i : ι), WellFounded (s i)) [DecidableEq ι] [(i : ι) → (x : α i) → Decidable (x ≠ 0)] (x : Π₀ (i : ι), α i) (h : ∀ i ∈ x.support, Acc (rᶜ ⊓ fun x1 x2 => x1 ≠ x2) i) : Acc (DFinsupp.Lex r s) x - Finset.mem_dfinsupp_iff 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → Zero (α i)] {s : Finset ι} {f : Π₀ (i : ι), α i} {t : (i : ι) → Finset (α i)} [(i : ι) → DecidableEq (α i)] : f ∈ s.dfinsupp t ↔ f.support ⊆ s ∧ ∀ i ∈ s, f i ∈ t i - DFinsupp.support_rangeIcc_subset 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [(i : ι) → Zero (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → LocallyFiniteOrder (α i)] {f g : Π₀ (i : ι), α i} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] : (f.rangeIcc g).support ⊆ f.support ∪ g.support - DFinsupp.Icc_eq 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) : Finset.Icc f g = (f.support ∪ g.support).dfinsupp ⇑(f.rangeIcc g) - DFinsupp.card_Icc 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) : (Finset.Icc f g).card = ∏ i ∈ f.support ∪ g.support, (Finset.Icc (f i) (g i)).card - DFinsupp.card_uIcc 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → Lattice (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) : (Finset.uIcc f g).card = ∏ i ∈ f.support ∪ g.support, (Finset.uIcc (f i) (g i)).card - DFinsupp.card_Ico 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) : (Finset.Ico f g).card = ∏ i ∈ f.support ∪ g.support, (Finset.Icc (f i) (g i)).card - 1 - DFinsupp.card_Ioc 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) : (Finset.Ioc f g).card = ∏ i ∈ f.support ∪ g.support, (Finset.Icc (f i) (g i)).card - 1 - DFinsupp.card_Ioo 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) : (Finset.Ioo f g).card = ∏ i ∈ f.support ∪ g.support, (Finset.Icc (f i) (g i)).card - 2 - Finset.mem_dfinsupp_iff_of_support_subset 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → Zero (α i)] {s : Finset ι} {f : Π₀ (i : ι), α i} [(i : ι) → DecidableEq (α i)] {t : Π₀ (i : ι), Finset (α i)} (ht : t.support ⊆ s) : f ∈ s.dfinsupp ⇑t ↔ ∀ (i : ι), f i ∈ t i - DFinsupp.card_Iic 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), IsBotZeroClass (α i)] [(i : ι) → OrderBot (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f : Π₀ (i : ι), α i) : (Finset.Iic f).card = ∏ i ∈ f.support, (Finset.Iic (f i)).card - DFinsupp.card_Iio 📋 Mathlib.Data.DFinsupp.Interval
{ι : Type u_1} {α : ι → Type u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), IsBotZeroClass (α i)] [(i : ι) → OrderBot (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f : Π₀ (i : ι), α i) : (Finset.Iio f).card = ∏ i ∈ f.support, (Finset.Iic (f i)).card - 1 - Multiset.toDFinsupp_support 📋 Mathlib.Data.DFinsupp.Multiset
{α : Type u_1} [DecidableEq α] (s : Multiset α) : (Multiset.toDFinsupp s).support = s.toFinset - MultilinearMap.fromDirectSumEquiv_apply 📋 Mathlib.LinearAlgebra.Multilinear.DirectSum
{R : Type u_1} {ι : Type u_2} {M' : Type u_3} {κ : ι → Type u_4} {M : (i : ι) → κ i → Type u_5} [CommSemiring R] [(i : ι) → (j : κ i) → AddCommMonoid (M i j)] [(i : ι) → (j : κ i) → Module R (M i j)] [AddCommMonoid M'] [Module R M'] [DecidableEq ι] [Fintype ι] [(i : ι) → DecidableEq (κ i)] [(i : ι) → (j : κ i) → (x : M i j) → Decidable (x ≠ 0)] (f : (p : (i : ι) → κ i) → MultilinearMap R (fun i => M i (p i)) M') (x : DirectSum ι fun i => DirectSum (κ i) fun j => M i j) : (MultilinearMap.fromDirectSumEquiv f) ⇑x = ∑ p ∈ Fintype.piFinset fun i => DFinsupp.support (x i), (f p) fun i => (x i) (p i) - TwoSidedIdeal.dfinsuppSum_mem 📋 Mathlib.RingTheory.TwoSidedIdeal.BigOperators
{R : Type u_1} [NonUnitalNonAssocRing R] (I : TwoSidedIdeal R) {ι : Type u_2} {β : ι → Type u_3} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {f : Π₀ (i : ι), β i} (g : (i : ι) → β i → R) (h : ∀ i ∈ f.support, g i (f i) ∈ I) : f.sum g ∈ I - TwoSidedIdeal.dfinsuppProd_mem 📋 Mathlib.RingTheory.TwoSidedIdeal.BigOperators
{R : Type u_1} [CommRing R] (I : TwoSidedIdeal R) {ι : Type u_2} {β : ι → Type u_3} [DecidableEq ι] [(i : ι) → Zero (β i)] [(i : ι) → (x : β i) → Decidable (x ≠ 0)] {f : Π₀ (i : ι), β i} (g : (i : ι) → β i → R) (h : ∃ i ∈ f.support, g i (f i) ∈ I) : f.prod g ∈ I
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