Loogle!
Result
Found 52 declarations mentioning Profinite.NobelingProof.ord.
- Profinite.NobelingProof.ord 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
(I : Type u) [LinearOrder I] [WellFoundedLT I] (i : I) : Ordinal.{u} - Profinite.NobelingProof.contained_proj 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) : Profinite.NobelingProof.contained (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) o - Profinite.NobelingProof.contained_eq_proj 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) (h : Profinite.NobelingProof.contained C o) : C = Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o - Profinite.NobelingProof.ord_term_aux 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : Profinite.NobelingProof.ord I (Profinite.NobelingProof.term I ho) = o - Profinite.NobelingProof.isClosed_proj 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) (hC : IsClosed C) : IsClosed (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) - Profinite.NobelingProof.term_ord_aux 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} [LinearOrder I] [WellFoundedLT I] {i : I} (ho : Profinite.NobelingProof.ord I i < Ordinal.type fun x1 x2 => x1 < x2) : Profinite.NobelingProof.term I ho = i - Profinite.NobelingProof.ord_term 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : o < Ordinal.type fun x1 x2 => x1 < x2) (i : I) : Profinite.NobelingProof.ord I i = o ↔ Profinite.NobelingProof.term I ho = i - Profinite.NobelingProof.Products.prop_of_isGood_of_contained 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {l : Profinite.NobelingProof.Products I} (o : Ordinal.{u}) (h : Profinite.NobelingProof.Products.isGood C l) (hsC : Profinite.NobelingProof.contained C o) (i : I) (hi : i ∈ ↑l) : Profinite.NobelingProof.ord I i < o - Profinite.NobelingProof.Products.isGood_mono 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {l : Profinite.NobelingProof.Products I} {o₁ o₂ : Ordinal.{u}} (h : o₁ ≤ o₂) (hl : Profinite.NobelingProof.Products.isGood (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₁) l) : Profinite.NobelingProof.Products.isGood (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₂) l - Profinite.NobelingProof.Products.head_lt_ord_of_isGood 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] [Inhabited I] {l : Profinite.NobelingProof.Products I} {o : Ordinal.{u}} (h : Profinite.NobelingProof.Products.isGood (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) l) (hn : ↑l ≠ []) : Profinite.NobelingProof.ord I (↑l).head! < o - Profinite.NobelingProof.Products.lt_ord_of_lt 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} [LinearOrder I] [WellFoundedLT I] {l m : Profinite.NobelingProof.Products I} {o : Ordinal.{u}} (h₁ : m < l) (h₂ : ∀ i ∈ ↑l, Profinite.NobelingProof.ord I i < o) (i : I) : i ∈ ↑m → Profinite.NobelingProof.ord I i < o - Profinite.NobelingProof.πs 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) : LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) ℤ →ₗ[ℤ] LocallyConstant ↑C ℤ - Profinite.NobelingProof.πs' 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o₁ o₂ : Ordinal.{u}} (h : o₁ ≤ o₂) : LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₁) ℤ →ₗ[ℤ] LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₂) ℤ - Profinite.NobelingProof.injective_πs 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) : Function.Injective ⇑(Profinite.NobelingProof.πs C o) - Profinite.NobelingProof.Products.eval_πs 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {l : Profinite.NobelingProof.Products I} {o : Ordinal.{u}} (hlt : ∀ i ∈ ↑l, Profinite.NobelingProof.ord I i < o) : (Profinite.NobelingProof.πs C o) (Profinite.NobelingProof.Products.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) l) = Profinite.NobelingProof.Products.eval C l - Profinite.NobelingProof.πs_apply_apply 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) (g : LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) ℤ) (a✝ : ↑C) : ((Profinite.NobelingProof.πs C o) g) a✝ = g (Profinite.NobelingProof.ProjRestrict C (fun x => Profinite.NobelingProof.ord I x < o) a✝) - Profinite.NobelingProof.Products.eval_πs_image 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {l : Profinite.NobelingProof.Products I} {o : Ordinal.{u}} (hl : ∀ i ∈ ↑l, Profinite.NobelingProof.ord I i < o) : Profinite.NobelingProof.Products.eval C '' {m | m < l} = ⇑(Profinite.NobelingProof.πs C o) '' Profinite.NobelingProof.Products.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) '' {m | m < l} - Profinite.NobelingProof.coe_πs 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) (f : LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) ℤ) : ⇑((Profinite.NobelingProof.πs C o) f) = ⇑f ∘ Profinite.NobelingProof.ProjRestrict C fun x => Profinite.NobelingProof.ord I x < o - Profinite.NobelingProof.injective_πs' 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o₁ o₂ : Ordinal.{u}} (h : o₁ ≤ o₂) : Function.Injective ⇑(Profinite.NobelingProof.πs' C h) - Profinite.NobelingProof.Products.eval_πs' 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {l : Profinite.NobelingProof.Products I} {o₁ o₂ : Ordinal.{u}} (h : o₁ ≤ o₂) (hlt : ∀ i ∈ ↑l, Profinite.NobelingProof.ord I i < o₁) : (Profinite.NobelingProof.πs' C h) (Profinite.NobelingProof.Products.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₁) l) = Profinite.NobelingProof.Products.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₂) l - Profinite.NobelingProof.coe_πs' 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o₁ o₂ : Ordinal.{u}} (h : o₁ ≤ o₂) (f : LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₁) ℤ) : ((Profinite.NobelingProof.πs' C h) f).toFun = f.toFun ∘ Profinite.NobelingProof.ProjRestricts C ⋯ - Profinite.NobelingProof.Products.eval_πs_image' 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {l : Profinite.NobelingProof.Products I} {o₁ o₂ : Ordinal.{u}} (h : o₁ ≤ o₂) (hl : ∀ i ∈ ↑l, Profinite.NobelingProof.ord I i < o₁) : Profinite.NobelingProof.Products.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₂) '' {m | m < l} = ⇑(Profinite.NobelingProof.πs' C h) '' Profinite.NobelingProof.Products.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₁) '' {m | m < l} - Profinite.NobelingProof.πs'_apply_apply 📋 Mathlib.Topology.Category.Profinite.Nobeling.Basic
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o₁ o₂ : Ordinal.{u}} (h : o₁ ≤ o₂) (g : LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₁) ℤ) (a✝ : ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o₂)) : ((Profinite.NobelingProof.πs' C h) g) a✝ = g (Profinite.NobelingProof.ProjRestricts C ⋯ a✝) - Profinite.NobelingProof.contained_C1 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : Profinite.NobelingProof.contained (Profinite.NobelingProof.π (Profinite.NobelingProof.C1 C ho) fun x => Profinite.NobelingProof.ord I x < o) o - Profinite.NobelingProof.GoodProducts.sum_to 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : ↑(Profinite.NobelingProof.GoodProducts (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)) ⊕ ↑(Profinite.NobelingProof.GoodProducts.MaxProducts C ho) → Profinite.NobelingProof.Products I - Profinite.NobelingProof.GoodProducts.injective_sum_to 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : Function.Injective (Profinite.NobelingProof.GoodProducts.sum_to C ho) - Profinite.NobelingProof.C0_projOrd 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) {x : I → Bool} (hx : x ∈ Profinite.NobelingProof.C0 C ho) : Profinite.NobelingProof.Proj (fun x => Profinite.NobelingProof.ord I x < o) x = x - Profinite.NobelingProof.C1_projOrd 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) {x : I → Bool} (hx : x ∈ Profinite.NobelingProof.C1 C ho) : Profinite.NobelingProof.SwapTrue o (Profinite.NobelingProof.Proj (fun x => Profinite.NobelingProof.ord I x < o) x) = x - Profinite.NobelingProof.GoodProducts.sum_equiv 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : ↑(Profinite.NobelingProof.GoodProducts (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)) ⊕ ↑(Profinite.NobelingProof.GoodProducts.MaxProducts C ho) ≃ ↑(Profinite.NobelingProof.GoodProducts C) - Profinite.NobelingProof.GoodProducts.union_succ 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : Profinite.NobelingProof.GoodProducts C = Profinite.NobelingProof.GoodProducts (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) ∪ Profinite.NobelingProof.GoodProducts.MaxProducts C ho - Profinite.NobelingProof.GoodProducts.SumEval 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : ↑(Profinite.NobelingProof.GoodProducts (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)) ⊕ ↑(Profinite.NobelingProof.GoodProducts.MaxProducts C ho) → LocallyConstant ↑C ℤ - Profinite.NobelingProof.GoodProducts.sum_to_range 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : Set.range (Profinite.NobelingProof.GoodProducts.sum_to C ho) = Profinite.NobelingProof.GoodProducts (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) ∪ Profinite.NobelingProof.GoodProducts.MaxProducts C ho - Profinite.NobelingProof.swapTrue_mem_C1 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) (f : ↑(Profinite.NobelingProof.π (Profinite.NobelingProof.C1 C ho) fun x => Profinite.NobelingProof.ord I x < o)) : Profinite.NobelingProof.SwapTrue o ↑f ∈ Profinite.NobelingProof.C1 C ho - Profinite.NobelingProof.GoodProducts.good_lt_maxProducts 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) (q : ↑(Profinite.NobelingProof.GoodProducts (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o))) (l : ↑(Profinite.NobelingProof.GoodProducts.MaxProducts C ho)) : List.Lex (fun x1 x2 => x1 < x2) ↑↑q ↑↑l - Profinite.NobelingProof.GoodProducts.linearIndependent_iff_sum 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : LinearIndependent ℤ (Profinite.NobelingProof.GoodProducts.eval C) ↔ LinearIndependent ℤ (Profinite.NobelingProof.GoodProducts.SumEval C ho) - Profinite.NobelingProof.GoodProducts.span_sum 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : Set.range (Profinite.NobelingProof.GoodProducts.eval C) = Set.range (Sum.elim (fun l => Profinite.NobelingProof.Products.eval C ↑l) fun l => Profinite.NobelingProof.Products.eval C ↑l) - Profinite.NobelingProof.GoodProducts.sum_equiv_comp_eval_eq_elim 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : Profinite.NobelingProof.GoodProducts.eval C ∘ (Profinite.NobelingProof.GoodProducts.sum_equiv C hsC ho).toFun = Sum.elim (fun l => Profinite.NobelingProof.Products.eval C ↑l) fun l => Profinite.NobelingProof.Products.eval C ↑l - Profinite.NobelingProof.succ_mono 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) : CategoryTheory.Mono (ModuleCat.ofHom (Profinite.NobelingProof.πs C o)) - Profinite.NobelingProof.succ_exact 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hC : IsClosed C) (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : { X₁ := ModuleCat.of ℤ (LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) ℤ), X₂ := ModuleCat.of ℤ (LocallyConstant ↑C ℤ), X₃ := ModuleCat.of ℤ (LocallyConstant ↑(Profinite.NobelingProof.C' C ho) ℤ), f := ModuleCat.ofHom (Profinite.NobelingProof.πs C o), g := ModuleCat.ofHom (Profinite.NobelingProof.Linear_CC' C hsC ho), zero := ⋯ }.Exact - Profinite.NobelingProof.CC_comp_zero 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) (y : LocallyConstant ↑(Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) ℤ) : (Profinite.NobelingProof.Linear_CC' C hsC ho) ((Profinite.NobelingProof.πs C o) y) = 0 - Profinite.NobelingProof.CC_exact 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hC : IsClosed C) (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) {f : LocallyConstant ↑C ℤ} (hf : (Profinite.NobelingProof.Linear_CC' C hsC ho) f = 0) : ∃ y, (Profinite.NobelingProof.πs C o) y = f - Profinite.NobelingProof.GoodProducts.MaxToGood 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hC : IsClosed C) (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) (h₁ : ⊤ ≤ Submodule.span ℤ (Set.range (Profinite.NobelingProof.GoodProducts.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)))) : ↑(Profinite.NobelingProof.GoodProducts.MaxProducts C ho) → ↑(Profinite.NobelingProof.GoodProducts (Profinite.NobelingProof.C' C ho)) - Profinite.NobelingProof.GoodProducts.maxToGood_injective 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hC : IsClosed C) (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) (h₁ : ⊤ ≤ Submodule.span ℤ (Set.range (Profinite.NobelingProof.GoodProducts.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)))) : Function.Injective (Profinite.NobelingProof.GoodProducts.MaxToGood C hC hsC ho h₁) - Profinite.NobelingProof.GoodProducts.maxTail_isGood 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hC : IsClosed C) (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) (l : ↑(Profinite.NobelingProof.GoodProducts.MaxProducts C ho)) (h₁ : ⊤ ≤ Submodule.span ℤ (Set.range (Profinite.NobelingProof.GoodProducts.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)))) : Profinite.NobelingProof.Products.isGood (Profinite.NobelingProof.C' C ho) (↑l).Tail - Profinite.NobelingProof.GoodProducts.square_commutes 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : o < Ordinal.type fun x1 x2 => x1 < x2) : Profinite.NobelingProof.GoodProducts.SumEval C ho ∘ Sum.inl = ⇑(CategoryTheory.ConcreteCategory.hom (ModuleCat.ofHom (Profinite.NobelingProof.πs C o))) ∘ Profinite.NobelingProof.GoodProducts.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) - Profinite.NobelingProof.GoodProducts.linearIndependent_comp_of_eval 📋 Mathlib.Topology.Category.Profinite.Nobeling.Successor
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (hC : IsClosed C) (hsC : Profinite.NobelingProof.contained C (Order.succ o)) (ho : o < Ordinal.type fun x1 x2 => x1 < x2) (h₁ : ⊤ ≤ Submodule.span ℤ (Set.range (Profinite.NobelingProof.GoodProducts.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)))) : LinearIndependent ℤ (Profinite.NobelingProof.GoodProducts.eval (Profinite.NobelingProof.C' C ho)) → LinearIndependent (ι := ↑(Profinite.NobelingProof.GoodProducts.MaxProducts C ho)) ℤ (⇑(CategoryTheory.ConcreteCategory.hom (ModuleCat.ofHom (Profinite.NobelingProof.Linear_CC' C hsC ho))) ∘ Profinite.NobelingProof.GoodProducts.SumEval C ho ∘ Sum.inr) - Profinite.NobelingProof.Products.limitOrdinal 📋 Mathlib.Topology.Category.Profinite.Nobeling.ZeroLimit
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] {o : Ordinal.{u}} (ho : Order.IsSuccLimit o) (l : Profinite.NobelingProof.Products I) : Profinite.NobelingProof.Products.isGood (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o) l ↔ ∃ o' < o, Profinite.NobelingProof.Products.isGood (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o') l - Profinite.NobelingProof.GoodProducts.range_equiv_smaller_toFun 📋 Mathlib.Topology.Category.Profinite.Nobeling.ZeroLimit
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) (x : ↑(Profinite.NobelingProof.GoodProducts.range (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o))) : ↑(Profinite.NobelingProof.GoodProducts.smaller C o) - Profinite.NobelingProof.GoodProducts.range_equiv_smaller 📋 Mathlib.Topology.Category.Profinite.Nobeling.ZeroLimit
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) : ↑(Profinite.NobelingProof.GoodProducts.range (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)) ≃ ↑(Profinite.NobelingProof.GoodProducts.smaller C o) - Profinite.NobelingProof.GoodProducts.range_equiv_smaller_toFun_bijective 📋 Mathlib.Topology.Category.Profinite.Nobeling.ZeroLimit
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) : Function.Bijective (Profinite.NobelingProof.GoodProducts.range_equiv_smaller_toFun C o) - Profinite.NobelingProof.GoodProducts.linearIndependent_iff_smaller 📋 Mathlib.Topology.Category.Profinite.Nobeling.ZeroLimit
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) : LinearIndependent ℤ (Profinite.NobelingProof.GoodProducts.eval (Profinite.NobelingProof.π C fun x => Profinite.NobelingProof.ord I x < o)) ↔ LinearIndependent ℤ fun (p : ↑(Profinite.NobelingProof.GoodProducts.smaller C o)) => ↑p - Profinite.NobelingProof.GoodProducts.smaller_factorization 📋 Mathlib.Topology.Category.Profinite.Nobeling.ZeroLimit
{I : Type u} (C : Set (I → Bool)) [LinearOrder I] [WellFoundedLT I] (o : Ordinal.{u}) : (fun p => ↑p) ∘ (Profinite.NobelingProof.GoodProducts.range_equiv_smaller C o).toFun = ⇑(Profinite.NobelingProof.πs C o) ∘ fun p => ↑p
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