Loogle!
Result
Found 3765 declarations mentioning Prod.fst and Eq. Of these, 371 have a name containing "_fst". Of these, 219 match your pattern(s). Of these, only the first 200 are shown.
- Prod.map_fst 📋 Init.Core
{α : Type u_1} {β : Type u_2} {γ : Type u_3} {δ : Type u_4} (f : α → β) (g : γ → δ) (x : α × γ) : (Prod.map f g x).1 = f x.1 - List.unzip_fst 📋 Init.Data.List.Zip
{α✝ : Type u_1} {β✝ : Type u_2} {l : List (α✝ × β✝)} : l.unzip.1 = List.map Prod.fst l - List.MergeSort.Internal.splitInTwo_fst 📋 Init.Data.List.Sort.Lemmas
{α : Type u_1} {n : ℕ} (l : { l // l.length = n }) : (List.MergeSort.Internal.splitInTwo l).1 = ⟨List.take ((n + 1) / 2) ↑l, ⋯⟩ - List.MergeSort.Internal.splitRevInTwo'_fst 📋 Init.Data.List.Sort.Impl
{α : Type u_1} {n : ℕ} (l : { l // l.length = n }) : (List.MergeSort.Internal.splitRevInTwo' l).1 = ⟨↑(List.MergeSort.Internal.splitInTwo ⟨(↑l).reverse, ⋯⟩).2, ⋯⟩ - List.MergeSort.Internal.splitRevInTwo_fst 📋 Init.Data.List.Sort.Impl
{α : Type u_1} {n : ℕ} (l : { l // l.length = n }) : (List.MergeSort.Internal.splitRevInTwo l).1 = ⟨(↑(List.MergeSort.Internal.splitInTwo l).1).reverse, ⋯⟩ - Vector.unzip_fst 📋 Init.Data.Vector.Zip
{α✝ : Type u_1} {β✝ : Type u_2} {n✝ : ℕ} {xs : Vector (α✝ × β✝) n✝} : xs.unzip.1 = Vector.map Prod.fst xs - Std.DHashMap.Internal.Raw.containsThenInsertIfNew_fst_eq 📋 Std.Data.DHashMap.Internal.Raw
{α : Type u} {β : α → Type v} [BEq α] [Hashable α] {m : Std.DHashMap.Raw α β} (h : m.WF) {a : α} {b : β a} : (m.containsThenInsertIfNew a b).1 = (Std.DHashMap.Internal.Raw₀.containsThenInsertIfNew ⟨m, ⋯⟩ a b).1 - Std.DHashMap.Internal.Raw.containsThenInsert_fst_eq 📋 Std.Data.DHashMap.Internal.Raw
{α : Type u} {β : α → Type v} [BEq α] [Hashable α] {m : Std.DHashMap.Raw α β} (h : m.WF) {a : α} {b : β a} : (m.containsThenInsert a b).1 = (Std.DHashMap.Internal.Raw₀.containsThenInsert ⟨m, ⋯⟩ a b).1 - Std.DHashMap.Internal.Raw.Const.getThenInsertIfNew?_fst_eq 📋 Std.Data.DHashMap.Internal.Raw
{α : Type u} {β : Type v} [BEq α] [Hashable α] {m : Std.DHashMap.Raw α fun x => β} (h : m.WF) {a : α} {b : β} : (Std.DHashMap.Raw.Const.getThenInsertIfNew? m a b).1 = (Std.DHashMap.Internal.Raw₀.Const.getThenInsertIfNew? ⟨m, ⋯⟩ a b).1 - Std.DHashMap.Internal.Raw.getThenInsertIfNew?_fst_eq 📋 Std.Data.DHashMap.Internal.Raw
{α : Type u} {β : α → Type v} [BEq α] [Hashable α] [LawfulBEq α] {m : Std.DHashMap.Raw α β} (h : m.WF) {a : α} {b : β a} : (m.getThenInsertIfNew? a b).1 = (Std.DHashMap.Internal.Raw₀.getThenInsertIfNew? ⟨m, ⋯⟩ a b).1 - Std.DHashMap.Internal.Raw₀.containsThenInsertIfNew_fst 📋 Std.Data.DHashMap.Internal.RawLemmas
{α : Type u} {β : α → Type v} (m : Std.DHashMap.Internal.Raw₀ α β) [BEq α] [Hashable α] {k : α} {v : β k} : (m.containsThenInsertIfNew k v).1 = m.contains k - Std.DHashMap.Internal.Raw₀.containsThenInsert_fst 📋 Std.Data.DHashMap.Internal.RawLemmas
{α : Type u} {β : α → Type v} (m : Std.DHashMap.Internal.Raw₀ α β) [BEq α] [Hashable α] {k : α} {v : β k} : (m.containsThenInsert k v).1 = m.contains k - Std.DHashMap.Internal.Raw₀.Const.getThenInsertIfNew?_fst 📋 Std.Data.DHashMap.Internal.RawLemmas
{α : Type u} [BEq α] [Hashable α] {β : Type v} (m : Std.DHashMap.Internal.Raw₀ α fun x => β) {k : α} {v : β} : (Std.DHashMap.Internal.Raw₀.Const.getThenInsertIfNew? m k v).1 = Std.DHashMap.Internal.Raw₀.Const.get? m k - Std.DHashMap.Internal.Raw₀.getThenInsertIfNew?_fst 📋 Std.Data.DHashMap.Internal.RawLemmas
{α : Type u} {β : α → Type v} (m : Std.DHashMap.Internal.Raw₀ α β) [BEq α] [Hashable α] [LawfulBEq α] {k : α} {v : β k} : (m.getThenInsertIfNew? k v).1 = m.get? k - Std.DHashMap.containsThenInsertIfNew_fst 📋 Std.Data.DHashMap.Lemmas
{α : Type u} {β : α → Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.DHashMap α β} {k : α} {v : β k} : (m.containsThenInsertIfNew k v).1 = m.contains k - Std.DHashMap.containsThenInsert_fst 📋 Std.Data.DHashMap.Lemmas
{α : Type u} {β : α → Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.DHashMap α β} {k : α} {v : β k} : (m.containsThenInsert k v).1 = m.contains k - Std.DHashMap.Const.getThenInsertIfNew?_fst 📋 Std.Data.DHashMap.Lemmas
{α : Type u} {x✝ : BEq α} {x✝¹ : Hashable α} {β : Type v} {m : Std.DHashMap α fun x => β} {k : α} {v : β} : (Std.DHashMap.Const.getThenInsertIfNew? m k v).1 = Std.DHashMap.Const.get? m k - Std.DHashMap.getThenInsertIfNew?_fst 📋 Std.Data.DHashMap.Lemmas
{α : Type u} {β : α → Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.DHashMap α β} [LawfulBEq α] {k : α} {v : β k} : (m.getThenInsertIfNew? k v).1 = m.get? k - Std.DHashMap.Raw.containsThenInsertIfNew_fst 📋 Std.Data.DHashMap.RawLemmas
{α : Type u} {β : α → Type v} {m : Std.DHashMap.Raw α β} [BEq α] [Hashable α] (h : m.WF) {k : α} {v : β k} : (m.containsThenInsertIfNew k v).1 = m.contains k - Std.DHashMap.Raw.containsThenInsert_fst 📋 Std.Data.DHashMap.RawLemmas
{α : Type u} {β : α → Type v} {m : Std.DHashMap.Raw α β} [BEq α] [Hashable α] (h : m.WF) {k : α} {v : β k} : (m.containsThenInsert k v).1 = m.contains k - Std.DHashMap.Raw.Const.getThenInsertIfNew?_fst 📋 Std.Data.DHashMap.RawLemmas
{α : Type u} [BEq α] [Hashable α] {β : Type v} {m : Std.DHashMap.Raw α fun x => β} (h : m.WF) {k : α} {v : β} : (Std.DHashMap.Raw.Const.getThenInsertIfNew? m k v).1 = Std.DHashMap.Raw.Const.get? m k - Std.DHashMap.Raw.getThenInsertIfNew?_fst 📋 Std.Data.DHashMap.RawLemmas
{α : Type u} {β : α → Type v} {m : Std.DHashMap.Raw α β} [BEq α] [Hashable α] [LawfulBEq α] (h : m.WF) {k : α} {v : β k} : (m.getThenInsertIfNew? k v).1 = m.get? k - Std.HashMap.containsThenInsertIfNew_fst 📋 Std.Data.HashMap.Lemmas
{α : Type u} {β : Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.HashMap α β} {k : α} {v : β} : (m.containsThenInsertIfNew k v).1 = m.contains k - Std.HashMap.containsThenInsert_fst 📋 Std.Data.HashMap.Lemmas
{α : Type u} {β : Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.HashMap α β} {k : α} {v : β} : (m.containsThenInsert k v).1 = m.contains k - Std.HashMap.getThenInsertIfNew?_fst 📋 Std.Data.HashMap.Lemmas
{α : Type u} {β : Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.HashMap α β} {k : α} {v : β} : (m.getThenInsertIfNew? k v).1 = m[k]? - Std.HashMap.Raw.containsThenInsertIfNew_fst 📋 Std.Data.HashMap.RawLemmas
{α : Type u} {β : Type v} {m : Std.HashMap.Raw α β} [BEq α] [Hashable α] (h : m.WF) {k : α} {v : β} : (m.containsThenInsertIfNew k v).1 = m.contains k - Std.HashMap.Raw.containsThenInsert_fst 📋 Std.Data.HashMap.RawLemmas
{α : Type u} {β : Type v} {m : Std.HashMap.Raw α β} [BEq α] [Hashable α] (h : m.WF) {k : α} {v : β} : (m.containsThenInsert k v).1 = m.contains k - Std.HashMap.Raw.getThenInsertIfNew?_fst 📋 Std.Data.HashMap.RawLemmas
{α : Type u} {β : Type v} {m : Std.HashMap.Raw α β} [BEq α] [Hashable α] (h : m.WF) {k : α} {v : β} : (m.getThenInsertIfNew? k v).1 = m[k]? - Std.HashSet.containsThenInsert_fst 📋 Std.Data.HashSet.Lemmas
{α : Type u} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.HashSet α} {k : α} : (m.containsThenInsert k).1 = m.contains k - Std.HashSet.Raw.containsThenInsert_fst 📋 Std.Data.HashSet.RawLemmas
{α : Type u} {m : Std.HashSet.Raw α} [BEq α] [Hashable α] (h : m.WF) {k : α} : (m.containsThenInsert k).1 = m.contains k - Std.DTreeMap.Internal.Impl.containsThenInsertIfNew!_fst_eq_containsₘ 📋 Std.Data.DTreeMap.Internal.Model
{α : Type u} {β : α → Type v} [Ord α] [Std.TransOrd α] (t : Std.DTreeMap.Internal.Impl α β) (a : α) (b : β a) : (Std.DTreeMap.Internal.Impl.containsThenInsertIfNew! a b t).1 = t.containsₘ a - Std.DTreeMap.Internal.Impl.containsThenInsertIfNew_fst_eq_containsₘ 📋 Std.Data.DTreeMap.Internal.Model
{α : Type u} {β : α → Type v} [Ord α] [Std.TransOrd α] (t : Std.DTreeMap.Internal.Impl α β) (htb : t.Balanced) (a : α) (b : β a) : (Std.DTreeMap.Internal.Impl.containsThenInsertIfNew a b t htb).1 = t.containsₘ a - Std.DTreeMap.Internal.Impl.containsThenInsert!_fst_eq_containsThenInsert_fst 📋 Std.Data.DTreeMap.Internal.Model
{α : Type u} {β : α → Type v} [Ord α] (t : Std.DTreeMap.Internal.Impl α β) (htb : t.Balanced) (a : α) (b : β a) : (Std.DTreeMap.Internal.Impl.containsThenInsert! a b t).1 = (Std.DTreeMap.Internal.Impl.containsThenInsert a b t htb).1 - Std.DTreeMap.Internal.Impl.containsThenInsertIfNew!_fst_eq_containsThenInsertIfNew_fst 📋 Std.Data.DTreeMap.Internal.Model
{α : Type u} {β : α → Type v} [Ord α] (t : Std.DTreeMap.Internal.Impl α β) (htb : t.Balanced) (a : α) (b : β a) : (Std.DTreeMap.Internal.Impl.containsThenInsertIfNew! a b t).1 = (Std.DTreeMap.Internal.Impl.containsThenInsertIfNew a b t htb).1 - Std.DTreeMap.Internal.Impl.containsThenInsert_fst_eq_containsₘ 📋 Std.Data.DTreeMap.Internal.WF.Lemmas
{α : Type u} {β : α → Type v} [Ord α] [Std.TransOrd α] [BEq α] [Std.LawfulBEqOrd α] (t : Std.DTreeMap.Internal.Impl α β) (htb : t.Balanced) (ho : t.Ordered) (a : α) (b : β a) : (Std.DTreeMap.Internal.Impl.containsThenInsert a b t htb).1 = t.containsₘ a - Std.DTreeMap.Internal.Impl.Const.getThenInsertIfNew?!_fst 📋 Std.Data.DTreeMap.Internal.Lemmas
{α : Type u} {instOrd : Ord α} {β : Type v} {t : Std.DTreeMap.Internal.Impl α fun x => β} [Std.TransOrd α] {k : α} {v : β} : (Std.DTreeMap.Internal.Impl.Const.getThenInsertIfNew?! t k v).1 = Std.DTreeMap.Internal.Impl.Const.get? t k - Std.DTreeMap.Internal.Impl.containsThenInsert!_fst 📋 Std.Data.DTreeMap.Internal.Lemmas
{α : Type u} {β : α → Type v} {instOrd : Ord α} {t : Std.DTreeMap.Internal.Impl α β} [Std.TransOrd α] (h : t.WF) {k : α} {v : β k} : (Std.DTreeMap.Internal.Impl.containsThenInsert! k v t).1 = Std.DTreeMap.Internal.Impl.contains k t - Std.DTreeMap.Internal.Impl.containsThenInsertIfNew!_fst 📋 Std.Data.DTreeMap.Internal.Lemmas
{α : Type u} {β : α → Type v} {instOrd : Ord α} {t : Std.DTreeMap.Internal.Impl α β} [Std.TransOrd α] (h : t.WF) {k : α} {v : β k} : (Std.DTreeMap.Internal.Impl.containsThenInsertIfNew! k v t).1 = Std.DTreeMap.Internal.Impl.contains k t - Std.DTreeMap.Internal.Impl.getThenInsertIfNew?!_fst 📋 Std.Data.DTreeMap.Internal.Lemmas
{α : Type u} {β : α → Type v} {instOrd : Ord α} {t : Std.DTreeMap.Internal.Impl α β} [Std.TransOrd α] [Std.LawfulEqOrd α] {k : α} {v : β k} : (t.getThenInsertIfNew?! k v).1 = t.get? k - Std.DTreeMap.Internal.Impl.Const.getThenInsertIfNew?_fst 📋 Std.Data.DTreeMap.Internal.Lemmas
{α : Type u} {instOrd : Ord α} {β : Type v} {t : Std.DTreeMap.Internal.Impl α fun x => β} [Std.TransOrd α] (h : t.WF) {k : α} {v : β} : (Std.DTreeMap.Internal.Impl.Const.getThenInsertIfNew? t k v ⋯).1 = Std.DTreeMap.Internal.Impl.Const.get? t k - Std.DTreeMap.Internal.Impl.getThenInsertIfNew?_fst 📋 Std.Data.DTreeMap.Internal.Lemmas
{α : Type u} {β : α → Type v} {instOrd : Ord α} {t : Std.DTreeMap.Internal.Impl α β} [Std.TransOrd α] [Std.LawfulEqOrd α] (h : t.WF) {k : α} {v : β k} : (t.getThenInsertIfNew? k v ⋯).1 = t.get? k - Std.DTreeMap.Internal.Impl.containsThenInsertIfNew_fst 📋 Std.Data.DTreeMap.Internal.Lemmas
{α : Type u} {β : α → Type v} {instOrd : Ord α} {t : Std.DTreeMap.Internal.Impl α β} [Std.TransOrd α] (h : t.WF) {k : α} {v : β k} : (Std.DTreeMap.Internal.Impl.containsThenInsertIfNew k v t ⋯).1 = Std.DTreeMap.Internal.Impl.contains k t - Std.DTreeMap.Internal.Impl.containsThenInsert_fst 📋 Std.Data.DTreeMap.Internal.Lemmas
{α : Type u} {β : α → Type v} {instOrd : Ord α} {t : Std.DTreeMap.Internal.Impl α β} [Std.TransOrd α] (h : t.WF) {k : α} {v : β k} : (Std.DTreeMap.Internal.Impl.containsThenInsert k v t ⋯).1 = Std.DTreeMap.Internal.Impl.contains k t - Std.DTreeMap.containsThenInsertIfNew_fst 📋 Std.Data.DTreeMap.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.DTreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β k} : (t.containsThenInsertIfNew k v).1 = t.contains k - Std.DTreeMap.containsThenInsert_fst 📋 Std.Data.DTreeMap.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.DTreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β k} : (t.containsThenInsert k v).1 = t.contains k - Std.DTreeMap.Const.getThenInsertIfNew?_fst 📋 Std.Data.DTreeMap.Lemmas
{α : Type u} {cmp : α → α → Ordering} {β : Type v} {t : Std.DTreeMap α (fun x => β) cmp} [Std.TransCmp cmp] {k : α} {v : β} : (Std.DTreeMap.Const.getThenInsertIfNew? t k v).1 = Std.DTreeMap.Const.get? t k - Std.DTreeMap.getThenInsertIfNew?_fst 📋 Std.Data.DTreeMap.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.DTreeMap α β cmp} [Std.TransCmp cmp] [Std.LawfulEqCmp cmp] {k : α} {v : β k} : (t.getThenInsertIfNew? k v).1 = t.get? k - Std.DTreeMap.Raw.containsThenInsertIfNew_fst 📋 Std.Data.DTreeMap.Raw.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.DTreeMap.Raw α β cmp} [Std.TransCmp cmp] (h : t.WF) {k : α} {v : β k} : (t.containsThenInsertIfNew k v).1 = t.contains k - Std.DTreeMap.Raw.containsThenInsert_fst 📋 Std.Data.DTreeMap.Raw.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.DTreeMap.Raw α β cmp} [Std.TransCmp cmp] (h : t.WF) {k : α} {v : β k} : (t.containsThenInsert k v).1 = t.contains k - Std.DTreeMap.Raw.Const.getThenInsertIfNew?_fst 📋 Std.Data.DTreeMap.Raw.Lemmas
{α : Type u} {cmp : α → α → Ordering} {β : Type v} {t : Std.DTreeMap.Raw α (fun x => β) cmp} [Std.TransCmp cmp] : t.WF → ∀ {k : α} {v : β}, (Std.DTreeMap.Raw.Const.getThenInsertIfNew? t k v).1 = Std.DTreeMap.Raw.Const.get? t k - Std.DTreeMap.Raw.getThenInsertIfNew?_fst 📋 Std.Data.DTreeMap.Raw.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.DTreeMap.Raw α β cmp} [Std.TransCmp cmp] [Std.LawfulEqCmp cmp] : t.WF → ∀ {k : α} {v : β k}, (t.getThenInsertIfNew? k v).1 = t.get? k - Std.TreeMap.containsThenInsertIfNew_fst 📋 Std.Data.TreeMap.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.TreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β} : (t.containsThenInsertIfNew k v).1 = t.contains k - Std.TreeMap.containsThenInsert_fst 📋 Std.Data.TreeMap.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.TreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β} : (t.containsThenInsert k v).1 = t.contains k - Std.TreeMap.getThenInsertIfNew?_fst 📋 Std.Data.TreeMap.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.TreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β} : (t.getThenInsertIfNew? k v).1 = t[k]? - Std.TreeSet.containsThenInsert_fst 📋 Std.Data.TreeSet.Lemmas
{α : Type u} {cmp : α → α → Ordering} {t : Std.TreeSet α cmp} [Std.TransCmp cmp] {k : α} : (t.containsThenInsert k).1 = t.contains k - Std.ExtDHashMap.getThenInsertIfNew?_fst 📋 Std.Data.ExtDHashMap.Lemmas
{α : Type u} {x✝ : BEq α} {x✝¹ : Hashable α} {β : α → Type v} {m : Std.ExtDHashMap α β} [LawfulBEq α] {k : α} {v : β k} : (m.getThenInsertIfNew? k v).1 = m.get? k - Std.ExtDHashMap.containsThenInsertIfNew_fst 📋 Std.Data.ExtDHashMap.Lemmas
{α : Type u} {x✝ : BEq α} {x✝¹ : Hashable α} {β : α → Type v} {m : Std.ExtDHashMap α β} [EquivBEq α] [LawfulHashable α] {k : α} {v : β k} : (m.containsThenInsertIfNew k v).1 = m.contains k - Std.ExtDHashMap.containsThenInsert_fst 📋 Std.Data.ExtDHashMap.Lemmas
{α : Type u} {x✝ : BEq α} {x✝¹ : Hashable α} {β : α → Type v} {m : Std.ExtDHashMap α β} [EquivBEq α] [LawfulHashable α] {k : α} {v : β k} : (m.containsThenInsert k v).1 = m.contains k - Std.ExtDHashMap.Const.getThenInsertIfNew?_fst 📋 Std.Data.ExtDHashMap.Lemmas
{α : Type u} {x✝ : BEq α} {x✝¹ : Hashable α} {β : Type v} {m : Std.ExtDHashMap α fun x => β} [EquivBEq α] [LawfulHashable α] {k : α} {v : β} : (Std.ExtDHashMap.Const.getThenInsertIfNew? m k v).1 = Std.ExtDHashMap.Const.get? m k - Std.ExtHashMap.containsThenInsertIfNew_fst 📋 Std.Data.ExtHashMap.Lemmas
{α : Type u} {β : Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.ExtHashMap α β} [EquivBEq α] [LawfulHashable α] {k : α} {v : β} : (m.containsThenInsertIfNew k v).1 = m.contains k - Std.ExtHashMap.containsThenInsert_fst 📋 Std.Data.ExtHashMap.Lemmas
{α : Type u} {β : Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.ExtHashMap α β} [EquivBEq α] [LawfulHashable α] {k : α} {v : β} : (m.containsThenInsert k v).1 = m.contains k - Std.ExtHashMap.getThenInsertIfNew?_fst 📋 Std.Data.ExtHashMap.Lemmas
{α : Type u} {β : Type v} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.ExtHashMap α β} [EquivBEq α] [LawfulHashable α] {k : α} {v : β} : (m.getThenInsertIfNew? k v).1 = m.get? k - Std.ExtHashSet.containsThenInsert_fst 📋 Std.Data.ExtHashSet.Lemmas
{α : Type u} {x✝ : BEq α} {x✝¹ : Hashable α} {m : Std.ExtHashSet α} [EquivBEq α] [LawfulHashable α] {k : α} : (m.containsThenInsert k).1 = m.contains k - Std.ExtDTreeMap.containsThenInsertIfNew_fst 📋 Std.Data.ExtDTreeMap.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.ExtDTreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β k} : (t.containsThenInsertIfNew k v).1 = t.contains k - Std.ExtDTreeMap.containsThenInsert_fst 📋 Std.Data.ExtDTreeMap.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.ExtDTreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β k} : (t.containsThenInsert k v).1 = t.contains k - Std.ExtDTreeMap.Const.getThenInsertIfNew?_fst 📋 Std.Data.ExtDTreeMap.Lemmas
{α : Type u} {cmp : α → α → Ordering} {β : Type v} {t : Std.ExtDTreeMap α (fun x => β) cmp} [Std.TransCmp cmp] {k : α} {v : β} : (Std.ExtDTreeMap.Const.getThenInsertIfNew? t k v).1 = Std.ExtDTreeMap.Const.get? t k - Std.ExtDTreeMap.getThenInsertIfNew?_fst 📋 Std.Data.ExtDTreeMap.Lemmas
{α : Type u} {β : α → Type v} {cmp : α → α → Ordering} {t : Std.ExtDTreeMap α β cmp} [Std.TransCmp cmp] [Std.LawfulEqCmp cmp] {k : α} {v : β k} : (t.getThenInsertIfNew? k v).1 = t.get? k - Std.ExtTreeMap.containsThenInsertIfNew_fst 📋 Std.Data.ExtTreeMap.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.ExtTreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β} : (t.containsThenInsertIfNew k v).1 = t.contains k - Std.ExtTreeMap.containsThenInsert_fst 📋 Std.Data.ExtTreeMap.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.ExtTreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β} : (t.containsThenInsert k v).1 = t.contains k - Std.ExtTreeMap.getThenInsertIfNew?_fst 📋 Std.Data.ExtTreeMap.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.ExtTreeMap α β cmp} [Std.TransCmp cmp] {k : α} {v : β} : (t.getThenInsertIfNew? k v).1 = t[k]? - Std.ExtTreeSet.containsThenInsert_fst 📋 Std.Data.ExtTreeSet.Lemmas
{α : Type u} {cmp : α → α → Ordering} {t : Std.ExtTreeSet α cmp} [Std.TransCmp cmp] {k : α} : (t.containsThenInsert k).1 = t.contains k - Std.TreeMap.Raw.containsThenInsertIfNew_fst 📋 Std.Data.TreeMap.Raw.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.TreeMap.Raw α β cmp} [Std.TransCmp cmp] (h : t.WF) {k : α} {v : β} : (t.containsThenInsertIfNew k v).1 = t.contains k - Std.TreeMap.Raw.containsThenInsert_fst 📋 Std.Data.TreeMap.Raw.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.TreeMap.Raw α β cmp} [Std.TransCmp cmp] (h : t.WF) {k : α} {v : β} : (t.containsThenInsert k v).1 = t.contains k - Std.TreeMap.Raw.getThenInsertIfNew?_fst 📋 Std.Data.TreeMap.Raw.Lemmas
{α : Type u} {β : Type v} {cmp : α → α → Ordering} {t : Std.TreeMap.Raw α β cmp} [Std.TransCmp cmp] (h : t.WF) {k : α} {v : β} : (t.getThenInsertIfNew? k v).1 = t[k]? - Std.TreeSet.Raw.containsThenInsert_fst 📋 Std.Data.TreeSet.Raw.Lemmas
{α : Type u} {cmp : α → α → Ordering} {t : Std.TreeSet.Raw α cmp} [Std.TransCmp cmp] (h : t.WF) {k : α} : (t.containsThenInsert k).1 = t.contains k - Std.Sat.AIG.relabelNat'_fst_eq_relabelNat 📋 Std.Sat.AIG.RelabelNat
{α : Type} [DecidableEq α] [Hashable α] {aig : Std.Sat.AIG α} : aig.relabelNat'.1 = aig.relabelNat - Prod.eq_iff_fst_eq_snd_eq 📋 Mathlib.Data.Prod.Basic
{α : Type u_1} {β : Type u_2} {p q : α × β} : p = q ↔ p.1 = q.1 ∧ p.2 = q.2 - Equiv.prodCongrRight_apply_fst 📋 Mathlib.Logic.Equiv.Prod
{α₁ : Type u_9} {β₁ : Type u_11} {β₂ : Type u_12} (e : α₁ → β₁ ≃ β₂) (ab : α₁ × β₁) : ((Equiv.prodCongrRight e) ab).1 = ab.1 - Equiv.prodCongrLeft_apply_fst 📋 Mathlib.Logic.Equiv.Prod
{α₁ : Type u_9} {β₁ : Type u_11} {β₂ : Type u_12} (e : α₁ → β₁ ≃ β₂) (ab : β₁ × α₁) : ((Equiv.prodCongrLeft e) ab).1 = (e ab.2) ab.1 - bihimp_fst 📋 Mathlib.Order.SymmDiff
{α : Type u_2} {β : Type u_3} [GeneralizedHeytingAlgebra α] [GeneralizedHeytingAlgebra β] (a b : α × β) : (bihimp a b).1 = bihimp a.1 b.1 - symmDiff_fst 📋 Mathlib.Order.SymmDiff
{α : Type u_2} {β : Type u_3} [GeneralizedCoheytingAlgebra α] [GeneralizedCoheytingAlgebra β] (a b : α × β) : (symmDiff a b).1 = symmDiff a.1 b.1 - Prod.pow_fst 📋 Mathlib.Algebra.Notation.Prod
{E : Type u_8} {α : Type u_9} {β : Type u_10} [Pow α E] [Pow β E] (p : α × β) (c : E) : (p ^ c).1 = p.1 ^ c - Prod.smul_fst 📋 Mathlib.Algebra.Notation.Prod
{M : Type u_8} {α : Type u_9} {β : Type u_10} [SMul M α] [SMul M β] (a : M) (x : α × β) : (a • x).1 = a • x.1 - Prod.vadd_fst 📋 Mathlib.Algebra.Notation.Prod
{M : Type u_8} {α : Type u_9} {β : Type u_10} [VAdd M α] [VAdd M β] (a : M) (x : α × β) : (a +ᵥ x).1 = a +ᵥ x.1 - Nat.xgcdAux_fst 📋 Mathlib.Data.Int.GCD
(x y : ℕ) (s t s' t' : ℤ) : (x.xgcdAux s t y s' t').1 = x.gcd y - Finset.insertPiProd_fst 📋 Mathlib.Data.Finset.Insert
{α : Type u_1} [DecidableEq α] {s : Finset α} {a : α} (f : α → Type u_3) (x : (i : α) → i ∈ insert a s → f i) : (Finset.insertPiProd f x).1 = x a ⋯ - Finset.consPiProd_fst 📋 Mathlib.Data.Finset.Insert
{α : Type u_1} {s : Finset α} {a : α} (f : α → Type u_3) (has : a ∉ s) (x : (i : α) → i ∈ Finset.cons a s has → f i) : (Finset.consPiProd f has x).1 = x a ⋯ - Finset.sumEquiv_apply_fst 📋 Mathlib.Data.Finset.Sum
{α : Type u_4} {β : Type u_5} (s : Finset (α ⊕ β)) : (Finset.sumEquiv s).1 = s.toLeft - Prod.ωSupImpl_fst 📋 Mathlib.Order.OmegaCompletePartialOrder
{α : Type u_2} {β : Type u_3} [OmegaCompletePartialOrder α] [OmegaCompletePartialOrder β] (c : OmegaCompletePartialOrder.Chain (α × β)) : (Prod.ωSupImpl c).1 = OmegaCompletePartialOrder.ωSup (c.map OrderHom.fst) - Prod.ωSup_fst 📋 Mathlib.Order.OmegaCompletePartialOrder
{α : Type u_2} {β : Type u_3} [OmegaCompletePartialOrder α] [OmegaCompletePartialOrder β] (c : OmegaCompletePartialOrder.Chain (α × β)) : (OmegaCompletePartialOrder.ωSup c).1 = OmegaCompletePartialOrder.ωSup (c.map OrderHom.fst) - Finset.filter_fst_eq_antidiagonal 📋 Mathlib.Algebra.Order.Antidiag.Prod
{A : Type u_1} [AddCommMonoid A] [PartialOrder A] [CanonicallyOrderedAdd A] [Sub A] [OrderedSub A] [AddLeftReflectLE A] [Finset.HasAntidiagonal A] (n m : A) [DecidablePred fun x => x = m] [Decidable (m ≤ n)] : {x ∈ Finset.antidiagonal n | x.1 = m} = if m ≤ n then {(m, n - m)} else ∅ - Submodule.prodEquivOfIsCompl_symm_apply_fst_eq_zero 📋 Mathlib.LinearAlgebra.Projection
{R : Type u_1} [Ring R] {E : Type u_2} [AddCommGroup E] [Module R E] (p q : Submodule R E) (h : IsCompl p q) {x : E} : ((p.prodEquivOfIsCompl q h).symm x).1 = 0 ↔ x ∈ q - EuclideanDomain.xgcdAux_fst 📋 Mathlib.Algebra.EuclideanDomain.Basic
{R : Type u} [EuclideanDomain R] [DecidableEq R] (x y s t s' t' : R) : (EuclideanDomain.xgcdAux x s t y s' t').1 = EuclideanDomain.gcd x y - Module.Basis.prod_apply_inr_fst 📋 Mathlib.LinearAlgebra.Basis.Prod
{ι : Type u_1} {ι' : Type u_2} {R : Type u_3} {M : Type u_5} {M' : Type u_6} [Semiring R] [AddCommMonoid M] [Module R M] [AddCommMonoid M'] [Module R M'] (b : Module.Basis ι R M) (b' : Module.Basis ι' R M') (i : ι') : ((b.prod b') (Sum.inr i)).1 = 0 - Module.Basis.prod_apply_inl_fst 📋 Mathlib.LinearAlgebra.Basis.Prod
{ι : Type u_1} {ι' : Type u_2} {R : Type u_3} {M : Type u_5} {M' : Type u_6} [Semiring R] [AddCommMonoid M] [Module R M] [AddCommMonoid M'] [Module R M'] (b : Module.Basis ι R M) (b' : Module.Basis ι' R M') (i : ι) : ((b.prod b') (Sum.inl i)).1 = b i - Ideal.quotientInfEquivQuotientProd_fst 📋 Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u_2} [CommRing R] (I J : Ideal R) (coprime : IsCoprime I J) (x : R ⧸ I ⊓ J) : ((I.quotientInfEquivQuotientProd J coprime) x).1 = (Ideal.Quotient.factor ⋯) x - Ideal.quotientMulEquivQuotientProd_fst 📋 Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u_2} [CommRing R] (I J : Ideal R) (coprime : IsCoprime I J) (x : R ⧸ I * J) : ((I.quotientMulEquivQuotientProd J coprime) x).1 = (Ideal.Quotient.factor ⋯) x - List.permutationsAux2_fst 📋 Mathlib.Data.List.Permutation
{α : Type u_1} {β : Type u_2} (t : α) (ts : List α) (r : List β) (ys : List α) (f : List α → β) : (List.permutationsAux2 t ts r ys f).1 = ys ++ ts - CategoryTheory.prod_id_fst 📋 Mathlib.CategoryTheory.Products.Basic
(C : Type u₁) [CategoryTheory.CategoryStruct.{v₁, u₁} C] (D : Type u₂) [CategoryTheory.CategoryStruct.{v₂, u₂} D] (X : C × D) : (CategoryTheory.CategoryStruct.id X).1 = CategoryTheory.CategoryStruct.id X.1 - CategoryTheory.prod_comp_fst 📋 Mathlib.CategoryTheory.Products.Basic
(C : Type u₁) [CategoryTheory.CategoryStruct.{v₁, u₁} C] (D : Type u₂) [CategoryTheory.CategoryStruct.{v₂, u₂} D] {X✝ Y✝ Z✝ : C × D} (f : (X✝.1 ⟶ Y✝.1) × (X✝.2 ⟶ Y✝.2)) (g : (Y✝.1 ⟶ Z✝.1) × (Y✝.2 ⟶ Z✝.2)) : (CategoryTheory.CategoryStruct.comp f g).1 = CategoryTheory.CategoryStruct.comp f.1 g.1 - CategoryTheory.NatTrans.prod'_app_fst 📋 Mathlib.CategoryTheory.Products.Basic
{A : Type u₁} [CategoryTheory.Category.{v₁, u₁} A] {B : Type u₂} [CategoryTheory.Category.{v₂, u₂} B] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F G : CategoryTheory.Functor A B} {H K : CategoryTheory.Functor A C} (α : F ⟶ G) (β : H ⟶ K) (X : A) : ((CategoryTheory.NatTrans.prod' α β).app X).1 = α.app X - CategoryTheory.NatTrans.prod_app_fst 📋 Mathlib.CategoryTheory.Products.Basic
{A : Type u₁} [CategoryTheory.Category.{v₁, u₁} A] {B : Type u₂} [CategoryTheory.Category.{v₂, u₂} B] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {D : Type u₄} [CategoryTheory.Category.{v₄, u₄} D] {F G : CategoryTheory.Functor A B} {H I : CategoryTheory.Functor C D} (α : F ⟶ G) (β : H ⟶ I) (X : A × C) : ((CategoryTheory.NatTrans.prod α β).app X).1 = α.app X.1 - CategoryTheory.Functor.prod'_ε_fst 📋 Mathlib.CategoryTheory.Monoidal.Functor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] [CategoryTheory.MonoidalCategory E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor C E) [F.LaxMonoidal] [G.LaxMonoidal] : (CategoryTheory.Functor.LaxMonoidal.ε (F.prod' G)).1 = CategoryTheory.Functor.LaxMonoidal.ε F - CategoryTheory.Functor.prod'_η_fst 📋 Mathlib.CategoryTheory.Monoidal.Functor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] [CategoryTheory.MonoidalCategory E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor C E) [F.OplaxMonoidal] [G.OplaxMonoidal] : (CategoryTheory.Functor.OplaxMonoidal.η (F.prod' G)).1 = CategoryTheory.Functor.OplaxMonoidal.η F - CategoryTheory.Functor.prod_ε_fst 📋 Mathlib.CategoryTheory.Monoidal.Functor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] [CategoryTheory.MonoidalCategory E] {C' : Type u₁'} [CategoryTheory.Category.{v₁', u₁'} C'] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor E C') [CategoryTheory.MonoidalCategory C'] [F.LaxMonoidal] [G.LaxMonoidal] : (CategoryTheory.Functor.LaxMonoidal.ε (F.prod G)).1 = CategoryTheory.Functor.LaxMonoidal.ε F - CategoryTheory.Functor.prod_η_fst 📋 Mathlib.CategoryTheory.Monoidal.Functor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] [CategoryTheory.MonoidalCategory E] {C' : Type u₁'} [CategoryTheory.Category.{v₁', u₁'} C'] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor E C') [CategoryTheory.MonoidalCategory C'] [F.OplaxMonoidal] [G.OplaxMonoidal] : (CategoryTheory.Functor.OplaxMonoidal.η (F.prod G)).1 = CategoryTheory.Functor.OplaxMonoidal.η F - CategoryTheory.Functor.prod'_δ_fst 📋 Mathlib.CategoryTheory.Monoidal.Functor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] [CategoryTheory.MonoidalCategory E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor C E) [F.OplaxMonoidal] [G.OplaxMonoidal] (X Y : C) : (CategoryTheory.Functor.OplaxMonoidal.δ (F.prod' G) X Y).1 = CategoryTheory.Functor.OplaxMonoidal.δ F X Y - CategoryTheory.Functor.prod'_μ_fst 📋 Mathlib.CategoryTheory.Monoidal.Functor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] [CategoryTheory.MonoidalCategory E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor C E) [F.LaxMonoidal] [G.LaxMonoidal] (X Y : C) : (CategoryTheory.Functor.LaxMonoidal.μ (F.prod' G) X Y).1 = CategoryTheory.Functor.LaxMonoidal.μ F X Y - CategoryTheory.Functor.prod_δ_fst 📋 Mathlib.CategoryTheory.Monoidal.Functor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] [CategoryTheory.MonoidalCategory E] {C' : Type u₁'} [CategoryTheory.Category.{v₁', u₁'} C'] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor E C') [CategoryTheory.MonoidalCategory C'] [F.OplaxMonoidal] [G.OplaxMonoidal] (X Y : C × E) : (CategoryTheory.Functor.OplaxMonoidal.δ (F.prod G) X Y).1 = CategoryTheory.Functor.OplaxMonoidal.δ F X.1 Y.1 - CategoryTheory.Functor.prod_μ_fst 📋 Mathlib.CategoryTheory.Monoidal.Functor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] [CategoryTheory.MonoidalCategory E] {C' : Type u₁'} [CategoryTheory.Category.{v₁', u₁'} C'] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor E C') [CategoryTheory.MonoidalCategory C'] [F.LaxMonoidal] [G.LaxMonoidal] (X Y : C × E) : (CategoryTheory.Functor.LaxMonoidal.μ (F.prod G) X Y).1 = CategoryTheory.Functor.LaxMonoidal.μ F X.1 Y.1 - CategoryTheory.Limits.Types.binaryProductIso_hom_comp_fst_apply 📋 Mathlib.CategoryTheory.Limits.Types.Products
(X Y : Type u) (x : X ⨯ Y) : ((CategoryTheory.Limits.Types.binaryProductIso X Y).hom x).1 = CategoryTheory.Limits.prod.fst x - CategoryTheory.Limits.PullbackCone.toPullbackObj_coe_fst 📋 Mathlib.CategoryTheory.Limits.Types.Pullbacks
{X Y S : Type v} {f : X ⟶ S} {g : Y ⟶ S} (c : CategoryTheory.Limits.PullbackCone f g) (x : c.pt) : (↑(c.toPullbackObj x)).1 = c.fst x - CategoryTheory.Limits.Types.pullbackIsoPullback_hom_fst 📋 Mathlib.CategoryTheory.Limits.Types.Pullbacks
{X Y Z : Type u} (f : X ⟶ Z) (g : Y ⟶ Z) (p : CategoryTheory.Limits.pullback f g) : (↑((CategoryTheory.Limits.Types.pullbackIsoPullback f g).hom p)).1 = CategoryTheory.Limits.pullback.fst f g p - CategoryTheory.Limits.PullbackCone.IsLimit.equivPullbackObj_apply_fst 📋 Mathlib.CategoryTheory.Limits.Types.Pullbacks
{X Y S : Type v} {f : X ⟶ S} {g : Y ⟶ S} {c : CategoryTheory.Limits.PullbackCone f g} (hc : CategoryTheory.Limits.IsLimit c) (x : c.pt) : (↑((CategoryTheory.Limits.PullbackCone.IsLimit.equivPullbackObj hc) x)).1 = c.fst x - CategoryTheory.Limits.Concrete.prodEquiv_apply_fst 📋 Mathlib.CategoryTheory.Limits.Shapes.ConcreteCategory
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C → C → Type u_1} {CC : C → Type w} [(X Y : C) → FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] (X₁ X₂ : C) [CategoryTheory.Limits.HasBinaryProduct X₁ X₂] [CategoryTheory.Limits.PreservesLimit (CategoryTheory.Limits.pair X₁ X₂) (CategoryTheory.forget C)] (x : CategoryTheory.ToType (X₁ ⨯ X₂)) : ((CategoryTheory.Limits.Concrete.prodEquiv X₁ X₂) x).1 = (CategoryTheory.ConcreteCategory.hom CategoryTheory.Limits.prod.fst) x - CommRingCat.HomTopology.mvPolynomialHomeomorph_apply_fst 📋 Mathlib.Algebra.Category.Ring.Topology
(σ : Type v) (R A : CommRingCat) [TopologicalSpace ↑R] [IsTopologicalRing ↑R] (f : { carrier := MvPolynomial σ ↑A, commRing := MvPolynomial.instCommRingMvPolynomial } ⟶ R) : ((CommRingCat.HomTopology.mvPolynomialHomeomorph σ R A) f).1 = CategoryTheory.CategoryStruct.comp (CommRingCat.ofHom MvPolynomial.C) f - Algebra.TensorProduct.prodRight_tmul_fst 📋 Mathlib.RingTheory.TensorProduct.Pi
(R : Type u_1) (S : Type u_2) (A : Type u_3) [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] (B : Type u_6) (C : Type u_7) [Semiring B] [Semiring C] [Algebra R B] [Algebra R C] (a : A) (x : B × C) : ((Algebra.TensorProduct.prodRight R S A B C) (a ⊗ₜ[R] x)).1 = a ⊗ₜ[R] x.1 - GenContFract.IntFractPair.seq1_fst_eq_of 📋 Mathlib.Algebra.ContinuedFractions.Computation.Translations
{K : Type u_1} [DivisionRing K] [LinearOrder K] [FloorRing K] {v : K} : (GenContFract.IntFractPair.seq1 v).1 = GenContFract.IntFractPair.of v - AlgEquiv.prodQuotientOfIsIdempotentElem_apply_fst 📋 Mathlib.RingTheory.Idempotents
(R : Type u_1) [CommRing R] {S : Type u_4} [CommRing S] [Algebra R S] {e f : S} (he : IsIdempotentElem e) (hf : IsIdempotentElem f) (hef₁ : e + f = 1) (hef₂ : e * f = 0) (a : S) : ((AlgEquiv.prodQuotientOfIsIdempotentElem R he hf hef₁ hef₂) a).1 = (Ideal.Quotient.mk (Ideal.span {e})) a - Subgroup.IsComplement.equiv_fst_eq_self_of_mem_of_one_mem 📋 Mathlib.GroupTheory.Complement
{G : Type u_1} [Group G] {S T : Set G} (hST : Subgroup.IsComplement S T) {g : G} (h1 : 1 ∈ T) (hg : g ∈ S) : (hST.equiv g).1 = ⟨g, hg⟩ - Subgroup.IsComplement.equiv_fst_eq_one_of_mem_of_one_mem 📋 Mathlib.GroupTheory.Complement
{G : Type u_1} [Group G] {S T : Set G} (hST : Subgroup.IsComplement S T) {g : G} (h1 : 1 ∈ S) (hg : g ∈ T) : (hST.equiv g).1 = ⟨1, h1⟩ - Subgroup.IsComplement.equiv_fst_eq_iff_leftCosetEquivalence 📋 Mathlib.GroupTheory.Complement
{G : Type u_1} [Group G] {K : Subgroup G} {S : Set G} (hSK : Subgroup.IsComplement S ↑K) {g₁ g₂ : G} : (hSK.equiv g₁).1 = (hSK.equiv g₂).1 ↔ LeftCosetEquivalence (↑K) g₁ g₂ - ContinuousMultilinearMap.prodEquiv_symm_apply_fst 📋 Mathlib.Topology.Algebra.Module.Multilinear.Basic
{R : Type u} {ι : Type v} {M₁ : ι → Type w₁} {M₂ : Type w₂} {M₃ : Type w₃} [Semiring R] [(i : ι) → AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [AddCommMonoid M₃] [(i : ι) → Module R (M₁ i)] [Module R M₂] [Module R M₃] [(i : ι) → TopologicalSpace (M₁ i)] [TopologicalSpace M₂] [TopologicalSpace M₃] (f : ContinuousMultilinearMap R M₁ (M₂ × M₃)) : (ContinuousMultilinearMap.prodEquiv.symm f).1 = (ContinuousLinearMap.fst R M₂ M₃).compContinuousMultilinearMap f - WithLp.ofLp_fst 📋 Mathlib.Analysis.Normed.Lp.ProdLp
{p : ENNReal} {α : Type u_2} {β : Type u_3} (x : WithLp p (α × β)) : x.ofLp.1 = x.fst - NonemptyInterval.pure_fst 📋 Mathlib.Order.Interval.Basic
{α : Type u_1} [Preorder α] (a : α) : (NonemptyInterval.pure a).toProd.1 = a - NonemptyInterval.map_fst 📋 Mathlib.Order.Interval.Basic
{α : Type u_1} {β : Type u_2} [Preorder α] [Preorder β] (f : α →o β) (a : NonemptyInterval α) : (NonemptyInterval.map f a).toProd.1 = f a.1.1 - NonemptyInterval.map₂_fst 📋 Mathlib.Order.Interval.Basic
{α : Type u_1} {β : Type u_2} {γ : Type u_3} [Preorder α] [Preorder β] [Preorder γ] (f : α → β → γ) (h₀ : ∀ (b : β), Monotone fun a => f a b) (h₁ : ∀ (a : α), Monotone (f a)) (a✝ : NonemptyInterval α) (a✝¹ : NonemptyInterval β) : (NonemptyInterval.map₂ f h₀ h₁ a✝ a✝¹).toProd.1 = f a✝.toProd.1 a✝¹.toProd.1 - Set.AddAntidiagonal.eq_of_fst_eq_fst 📋 Mathlib.Data.Set.MulAntidiagonal
{α : Type u_1} [AddCommMonoid α] [IsCancelAdd α] {s t : Set α} {a : α} {x y : ↑(s.addAntidiagonal t a)} (h : (↑x).1 = (↑y).1) : x = y - Set.MulAntidiagonal.eq_of_fst_eq_fst 📋 Mathlib.Data.Set.MulAntidiagonal
{α : Type u_1} [CommMonoid α] [IsCancelMul α] {s t : Set α} {a : α} {x y : ↑(s.mulAntidiagonal t a)} (h : (↑x).1 = (↑y).1) : x = y - Set.AddAntidiagonal.fst_eq_fst_iff_snd_eq_snd 📋 Mathlib.Data.Set.MulAntidiagonal
{α : Type u_1} [AddCommMonoid α] [IsCancelAdd α] {s t : Set α} {a : α} {x y : ↑(s.addAntidiagonal t a)} : (↑x).1 = (↑y).1 ↔ (↑x).2 = (↑y).2 - Set.MulAntidiagonal.fst_eq_fst_iff_snd_eq_snd 📋 Mathlib.Data.Set.MulAntidiagonal
{α : Type u_1} [CommMonoid α] [IsCancelMul α] {s t : Set α} {a : α} {x y : ↑(s.mulAntidiagonal t a)} : (↑x).1 = (↑y).1 ↔ (↑x).2 = (↑y).2 - Set.SMulAntidiagonal.eq_of_fst_eq_fst 📋 Mathlib.Data.Set.SMulAntidiagonal
{G : Type u_1} {P : Type u_2} {s : Set G} {t : Set P} {a : P} [SMul G P] [IsCancelSMul G P] {x y : ↑(s.smulAntidiagonal t a)} (h : (↑x).1 = (↑y).1) : x = y - Set.VAddAntidiagonal.eq_of_fst_eq_fst 📋 Mathlib.Data.Set.SMulAntidiagonal
{G : Type u_1} {P : Type u_2} {s : Set G} {t : Set P} {a : P} [VAdd G P] [IsCancelVAdd G P] {x y : ↑(s.vaddAntidiagonal t a)} (h : (↑x).1 = (↑y).1) : x = y - Set.SMulAntidiagonal.fst_eq_fst_iff_snd_eq_snd 📋 Mathlib.Data.Set.SMulAntidiagonal
{G : Type u_1} {P : Type u_2} {s : Set G} {t : Set P} {a : P} [SMul G P] [IsCancelSMul G P] {x y : ↑(s.smulAntidiagonal t a)} : (↑x).1 = (↑y).1 ↔ (↑x).2 = (↑y).2 - Set.VAddAntidiagonal.fst_eq_fst_iff_snd_eq_snd 📋 Mathlib.Data.Set.SMulAntidiagonal
{G : Type u_1} {P : Type u_2} {s : Set G} {t : Set P} {a : P} [VAdd G P] [IsCancelVAdd G P] {x y : ↑(s.vaddAntidiagonal t a)} : (↑x).1 = (↑y).1 ↔ (↑x).2 = (↑y).2 - TopCat.Sheaf.objSupIsoProdEqLocus_hom_fst 📋 Mathlib.Topology.Sheaves.CommRingCat
{X : TopCat} (F : TopCat.Sheaf CommRingCat X) (U V : TopologicalSpace.Opens ↑X) (x : ↑(F.val.obj (Opposite.op (U ⊔ V)))) : (↑((CategoryTheory.ConcreteCategory.hom (F.objSupIsoProdEqLocus U V).hom) x)).1 = (CategoryTheory.ConcreteCategory.hom (F.val.map (CategoryTheory.homOfLE ⋯).op)) x - SSet.ι₀_app_fst 📋 Mathlib.AlgebraicTopology.SimplicialSet.Monoidal
{X : SSet} {m : SimplexCategoryᵒᵖ} (x : X.obj m) : (SSet.ι₀.app m x).1 = x - SSet.ι₁_app_fst 📋 Mathlib.AlgebraicTopology.SimplicialSet.Monoidal
{X : SSet} {m : SimplexCategoryᵒᵖ} (x : X.obj m) : (SSet.ι₁.app m x).1 = x - SSet.Truncated.tensor_map_apply_fst 📋 Mathlib.AlgebraicTopology.SimplicialSet.Monoidal
{n : ℕ} {X Y : SSet.Truncated n} {d e : (SimplexCategory.Truncated n)ᵒᵖ} (f : d ⟶ e) (x : (CategoryTheory.MonoidalCategoryStruct.tensorObj X Y).obj d) : ((CategoryTheory.MonoidalCategoryStruct.tensorObj X Y).map f x).1 = X.map f x.1 - SSet.prodStdSimplex.objEquiv_apply_fst 📋 Mathlib.AlgebraicTopology.SimplicialSet.ProdStdSimplex
{p q n : ℕ} (x : (CategoryTheory.MonoidalCategoryStruct.tensorObj (SSet.stdSimplex.obj (SimplexCategory.mk p)) (SSet.stdSimplex.obj (SimplexCategory.mk q))).obj (Opposite.op (SimplexCategory.mk n))) (i : Fin (n + 1)) : ((SSet.prodStdSimplex.objEquiv x) i).1 = x.1 i - SSet.Truncated.Edge.CompStruct.tensor_simplex_fst 📋 Mathlib.AlgebraicTopology.SimplicialSet.HoFunctorMonoidal
{X Y : SSet.Truncated 2} {x₀ x₁ x₂ : X.obj (Opposite.op { obj := SimplexCategory.mk 0, property := SSet.Truncated.Edge.tensor._proof_1 })} {e₀₁ : SSet.Truncated.Edge x₀ x₁} {e₁₂ : SSet.Truncated.Edge x₁ x₂} {e₀₂ : SSet.Truncated.Edge x₀ x₂} (hx : e₀₁.CompStruct e₁₂ e₀₂) {y₀ y₁ y₂ : Y.obj (Opposite.op { obj := SimplexCategory.mk 0, property := SSet.Truncated.Edge.tensor._proof_1 })} {e'₀₁ : SSet.Truncated.Edge y₀ y₁} {e'₁₂ : SSet.Truncated.Edge y₁ y₂} {e'₀₂ : SSet.Truncated.Edge y₀ y₂} (hy : e'₀₁.CompStruct e'₁₂ e'₀₂) : (hx.tensor hy).simplex.1 = hx.simplex - ContinuousAffineMap.toConstProdContinuousLinearMap_fst 📋 Mathlib.Analysis.Normed.Affine.ContinuousAffineMap
(𝕜 : Type u_1) (V : Type u_2) (W : Type u_3) [NormedAddCommGroup V] [NormedAddCommGroup W] [NontriviallyNormedField 𝕜] [NormedSpace 𝕜 V] [NormedSpace 𝕜 W] (f : V →ᴬ[𝕜] W) : ((ContinuousAffineMap.toConstProdContinuousLinearMap 𝕜 V W) f).1 = f 0 - WithCStarModule.smul_fst 📋 Mathlib.Analysis.CStarAlgebra.Module.Synonym
{R : Type u_1} {A : Type u_2} {E : Type u_3} {F : Type u_4} [SMul R E] [SMul R F] (x : WithCStarModule A (E × F)) (c : R) : (c • x).1 = c • x.1 - WithCStarModule.neg_fst 📋 Mathlib.Analysis.CStarAlgebra.Module.Synonym
{A : Type u_2} {E : Type u_3} {F : Type u_4} (x : WithCStarModule A (E × F)) [AddCommGroup E] [AddCommGroup F] : (-x).1 = -x.1 - WithCStarModule.zero_fst 📋 Mathlib.Analysis.CStarAlgebra.Module.Synonym
{A : Type u_2} {E : Type u_3} {F : Type u_4} [AddCommGroup E] [AddCommGroup F] : 0.1 = 0 - WithCStarModule.equiv_fst 📋 Mathlib.Analysis.CStarAlgebra.Module.Synonym
{A : Type u_2} {E : Type u_3} {F : Type u_4} (x : WithCStarModule A (E × F)) : ((WithCStarModule.equiv A (E × F)) x).1 = x.1 - WithCStarModule.equiv_symm_fst 📋 Mathlib.Analysis.CStarAlgebra.Module.Synonym
{A : Type u_2} {E : Type u_3} {F : Type u_4} (x : E × F) : ((WithCStarModule.equiv A (E × F)).symm x).1 = x.1 - WithCStarModule.sub_fst 📋 Mathlib.Analysis.CStarAlgebra.Module.Synonym
{A : Type u_2} {E : Type u_3} {F : Type u_4} (x y : WithCStarModule A (E × F)) [AddCommGroup E] [AddCommGroup F] : (x - y).1 = x.1 - y.1 - WithCStarModule.add_fst 📋 Mathlib.Analysis.CStarAlgebra.Module.Synonym
{A : Type u_2} {E : Type u_3} {F : Type u_4} (x y : WithCStarModule A (E × F)) [AddCommGroup E] [AddCommGroup F] : (x + y).1 = x.1 + y.1 - DoubleCentralizer.natCast_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (n : ℕ) : (↑n).toProd.1 = ↑n - DoubleCentralizer.one_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] : (DoubleCentralizer.toProd 1).1 = 1 - DoubleCentralizer.zero_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] : (DoubleCentralizer.toProd 0).1 = 0 - DoubleCentralizer.intCast_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (n : ℤ) : (↑n).toProd.1 = ↑n - DoubleCentralizer.neg_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (a : DoubleCentralizer 𝕜 A) : (-a).toProd.1 = -a.toProd.1 - DoubleCentralizer.pow_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (n : ℕ) (a : DoubleCentralizer 𝕜 A) : (a ^ n).toProd.1 = a.toProd.1 ^ n - DoubleCentralizer.mul_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (a b : DoubleCentralizer 𝕜 A) : (a * b).toProd.1 = a.toProd.1 * b.toProd.1 - DoubleCentralizer.sub_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (a b : DoubleCentralizer 𝕜 A) : (a - b).toProd.1 = a.toProd.1 - b.toProd.1 - DoubleCentralizer.add_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (a b : DoubleCentralizer 𝕜 A) : (a + b).toProd.1 = a.toProd.1 + b.toProd.1 - DoubleCentralizer.algebraMap_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (k : 𝕜) : ((algebraMap 𝕜 (DoubleCentralizer 𝕜 A)) k).toProd.1 = (algebraMap 𝕜 (A →L[𝕜] A)) k - DoubleCentralizer.coe_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] (a : A) : (↑𝕜 a).toProd.1 = (ContinuousLinearMap.mul 𝕜 A) a - DoubleCentralizer.smul_fst 📋 Mathlib.Analysis.CStarAlgebra.Multiplier
{𝕜 : Type u_1} {A : Type u_2} [NontriviallyNormedField 𝕜] [NonUnitalNormedRing A] [NormedSpace 𝕜 A] [SMulCommClass 𝕜 A A] [IsScalarTower 𝕜 A A] {S : Type u_3} [Monoid S] [DistribMulAction S A] [SMulCommClass 𝕜 S A] [ContinuousConstSMul S A] [IsScalarTower S A A] [SMulCommClass S A A] (s : S) (a : DoubleCentralizer 𝕜 A) : (s • a).toProd.1 = s • a.toProd.1 - Pretrivialization.coe_fst' 📋 Mathlib.Topology.FiberBundle.Trivialization
{B : Type u_1} {F : Type u_2} {Z : Type u_4} [TopologicalSpace B] [TopologicalSpace F] {proj : Z → B} (e : Pretrivialization F proj) {x : Z} (ex : proj x ∈ e.baseSet) : (↑e x).1 = proj x - Pretrivialization.coe_fst 📋 Mathlib.Topology.FiberBundle.Trivialization
{B : Type u_1} {F : Type u_2} {Z : Type u_4} [TopologicalSpace B] [TopologicalSpace F] {proj : Z → B} (e : Pretrivialization F proj) {x : Z} (ex : x ∈ e.source) : (↑e x).1 = proj x - Trivialization.coe_fst' 📋 Mathlib.Topology.FiberBundle.Trivialization
{B : Type u_1} {F : Type u_2} {Z : Type u_4} [TopologicalSpace B] [TopologicalSpace F] {proj : Z → B} [TopologicalSpace Z] (e : Trivialization F proj) {x : Z} (ex : proj x ∈ e.baseSet) : (↑e x).1 = proj x - Trivialization.coe_fst 📋 Mathlib.Topology.FiberBundle.Trivialization
{B : Type u_1} {F : Type u_2} {Z : Type u_4} [TopologicalSpace B] [TopologicalSpace F] {proj : Z → B} [TopologicalSpace Z] (e : Trivialization F proj) {x : Z} (ex : x ∈ e.source) : (↑e x).1 = proj x - Pretrivialization.coe_coe_fst 📋 Mathlib.Topology.FiberBundle.Trivialization
{B : Type u_1} {F : Type u_2} {E : B → Type u_3} [TopologicalSpace B] [TopologicalSpace F] (e' : Pretrivialization F Bundle.TotalSpace.proj) {b : B} {y : E b} (hb : b ∈ e'.baseSet) : (↑e' { proj := b, snd := y }).1 = b - Trivialization.coe_coe_fst 📋 Mathlib.Topology.FiberBundle.Trivialization
{B : Type u_1} {F : Type u_2} {E : B → Type u_3} [TopologicalSpace B] [TopologicalSpace F] [TopologicalSpace (Bundle.TotalSpace F E)] (e' : Trivialization F Bundle.TotalSpace.proj) {b : B} {y : E b} (hb : b ∈ e'.baseSet) : (↑e' { proj := b, snd := y }).1 = b - FiberBundle.trivializationAt_proj_fst 📋 Mathlib.Topology.FiberBundle.Basic
{B : Type u_2} {F : Type u_3} [TopologicalSpace B] [TopologicalSpace F] {E : B → Type u_5} [TopologicalSpace (Bundle.TotalSpace F E)] [(b : B) → TopologicalSpace (E b)] [FiberBundle F E] {x : Bundle.TotalSpace F E} : (↑(trivializationAt F E x.proj) x).1 = x.proj - HasStrictFDerivAt.implicitToOpenPartialHomeomorph_fst 📋 Mathlib.Analysis.Calculus.Implicit
{𝕜 : Type u_1} [NontriviallyNormedField 𝕜] [CompleteSpace 𝕜] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace 𝕜 E] [CompleteSpace E] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace 𝕜 F] [FiniteDimensional 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {a : E} (hf : HasStrictFDerivAt f f' a) (hf' : (↑f').range = ⊤) (x : E) : (↑(HasStrictFDerivAt.implicitToOpenPartialHomeomorph f f' hf hf') x).1 = f x - HasStrictFDerivAt.implicitToPartialHomeomorph_fst 📋 Mathlib.Analysis.Calculus.Implicit
{𝕜 : Type u_1} [NontriviallyNormedField 𝕜] [CompleteSpace 𝕜] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace 𝕜 E] [CompleteSpace E] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace 𝕜 F] [FiniteDimensional 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {a : E} (hf : HasStrictFDerivAt f f' a) (hf' : (↑f').range = ⊤) (x : E) : (↑(HasStrictFDerivAt.implicitToOpenPartialHomeomorph f f' hf hf') x).1 = f x - HasStrictFDerivAt.implicitToOpenPartialHomeomorphOfComplemented_fst 📋 Mathlib.Analysis.Calculus.Implicit
{𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace 𝕜 E] [CompleteSpace E] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace 𝕜 F] [CompleteSpace F] {f : E → F} {f' : E →L[𝕜] F} {a : E} (hf : HasStrictFDerivAt f f' a) (hf' : (↑f').range = ⊤) (hker : (↑f').ker.ClosedComplemented) (x : E) : (↑(HasStrictFDerivAt.implicitToOpenPartialHomeomorphOfComplemented f f' hf hf' hker) x).1 = f x - HasStrictFDerivAt.implicitToPartialHomeomorphOfComplemented_fst 📋 Mathlib.Analysis.Calculus.Implicit
{𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace 𝕜 E] [CompleteSpace E] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace 𝕜 F] [CompleteSpace F] {f : E → F} {f' : E →L[𝕜] F} {a : E} (hf : HasStrictFDerivAt f f' a) (hf' : (↑f').range = ⊤) (hker : (↑f').ker.ClosedComplemented) (x : E) : (↑(HasStrictFDerivAt.implicitToOpenPartialHomeomorphOfComplemented f f' hf hf' hker) x).1 = f x - IsContDiffImplicitAt.implicitFunctionAux_fst 📋 Mathlib.Analysis.Calculus.ImplicitContDiff
{𝕜 : Type u_1} [RCLike 𝕜] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace 𝕜 E] [CompleteSpace E] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace 𝕜 F] [CompleteSpace F] {G : Type u_4} [NormedAddCommGroup G] [NormedSpace 𝕜 G] [CompleteSpace G] {n : WithTop ℕ∞} {f : E × F → G} {f' : E × F →L[𝕜] G} {a : E × F} (h : IsContDiffImplicitAt n f f' a) : ∀ᶠ (p : E × G) in nhds (a.1, f a), (h.implicitFunctionAux p.1 p.2).1 = p.1 - CategoryTheory.Bicategory.prod_id_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] (X : B × C) : (CategoryTheory.CategoryStruct.id X).1 = CategoryTheory.CategoryStruct.id X.1 - CategoryTheory.Bicategory.prod_comp_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {X✝ Y✝ Z✝ : B × C} (f : (X✝.1 ⟶ Y✝.1) × (X✝.2 ⟶ Y✝.2)) (g : (Y✝.1 ⟶ Z✝.1) × (Y✝.2 ⟶ Z✝.2)) : (CategoryTheory.CategoryStruct.comp f g).1 = CategoryTheory.CategoryStruct.comp f.1 g.1 - CategoryTheory.Bicategory.prod_homCategory_id_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] (X Y : B × C) (X✝ : (X.1 ⟶ Y.1) × (X.2 ⟶ Y.2)) : (CategoryTheory.CategoryStruct.id X✝).1 = CategoryTheory.CategoryStruct.id X✝.1 - CategoryTheory.Bicategory.prod_leftUnitor_hom_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {a✝ b✝ : B × C} (f : a✝ ⟶ b✝) : (CategoryTheory.Bicategory.leftUnitor f).hom.1 = (CategoryTheory.Bicategory.leftUnitor f.1).hom - CategoryTheory.Bicategory.prod_leftUnitor_inv_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {a✝ b✝ : B × C} (f : a✝ ⟶ b✝) : (CategoryTheory.Bicategory.leftUnitor f).inv.1 = (CategoryTheory.Bicategory.leftUnitor f.1).inv - CategoryTheory.Bicategory.prod_rightUnitor_hom_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {a✝ b✝ : B × C} (f : a✝ ⟶ b✝) : (CategoryTheory.Bicategory.rightUnitor f).hom.1 = (CategoryTheory.Bicategory.rightUnitor f.1).hom - CategoryTheory.Bicategory.prod_rightUnitor_inv_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {a✝ b✝ : B × C} (f : a✝ ⟶ b✝) : (CategoryTheory.Bicategory.rightUnitor f).inv.1 = (CategoryTheory.Bicategory.rightUnitor f.1).inv - CategoryTheory.Bicategory.prod_homCategory_comp_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] (X Y : B × C) {X✝ Y✝ Z✝ : (X.1 ⟶ Y.1) × (X.2 ⟶ Y.2)} (f : (X✝.1 ⟶ Y✝.1) × (X✝.2 ⟶ Y✝.2)) (g : (Y✝.1 ⟶ Z✝.1) × (Y✝.2 ⟶ Z✝.2)) : (CategoryTheory.CategoryStruct.comp f g).1 = CategoryTheory.CategoryStruct.comp f.1 g.1 - CategoryTheory.Bicategory.prod_whiskerLeft_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {a✝ b✝ c✝ : B × C} (f : a✝ ⟶ b✝) (g h : b✝ ⟶ c✝) (θ : g ⟶ h) : (CategoryTheory.Bicategory.whiskerLeft f θ).1 = CategoryTheory.Bicategory.whiskerLeft f.1 θ.1 - CategoryTheory.Bicategory.prod_whiskerRight_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {a✝ b✝ c✝ : B × C} {f✝ g✝ : a✝ ⟶ b✝} (θ : f✝ ⟶ g✝) (g : b✝ ⟶ c✝) : (CategoryTheory.Bicategory.whiskerRight θ g).1 = CategoryTheory.Bicategory.whiskerRight θ.1 g.1 - CategoryTheory.Bicategory.prod_associator_hom_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {a✝ b✝ c✝ d✝ : B × C} (f : a✝ ⟶ b✝) (g : b✝ ⟶ c✝) (h : c✝ ⟶ d✝) : (CategoryTheory.Bicategory.associator f g h).hom.1 = (CategoryTheory.Bicategory.associator f.1 g.1 h.1).hom - CategoryTheory.Bicategory.prod_associator_inv_fst 📋 Mathlib.CategoryTheory.Bicategory.Product
(B : Type u₁) [CategoryTheory.Bicategory B] (C : Type u₂) [CategoryTheory.Bicategory C] {a✝ b✝ c✝ d✝ : B × C} (f : a✝ ⟶ b✝) (g : b✝ ⟶ c✝) (h : c✝ ⟶ d✝) : (CategoryTheory.Bicategory.associator f g h).inv.1 = (CategoryTheory.Bicategory.associator f.1 g.1 h.1).inv - TwoPointing.bool_fst 📋 Mathlib.Data.TwoPointing
: TwoPointing.bool.toProd.1 = false - TwoPointing.prop_fst 📋 Mathlib.Data.TwoPointing
: TwoPointing.prop.toProd.1 = False - TwoPointing.swap_fst 📋 Mathlib.Data.TwoPointing
{α : Type u_1} (p : TwoPointing α) : p.swap.toProd.1 = p.toProd.2 - TwoPointing.pi_fst 📋 Mathlib.Data.TwoPointing
(α : Type u_1) {β : Type u_2} (q : TwoPointing β) [Nonempty α] : (TwoPointing.pi α q).toProd.1 = Function.const α q.toProd.1 - TwoPointing.sum_fst 📋 Mathlib.Data.TwoPointing
{α : Type u_1} {β : Type u_2} (p : TwoPointing α) (q : TwoPointing β) : (p.sum q).toProd.1 = Sum.inl p.toProd.1 - TwoPointing.prod_fst 📋 Mathlib.Data.TwoPointing
{α : Type u_1} {β : Type u_2} (p : TwoPointing α) (q : TwoPointing β) : (p.prod q).toProd.1 = (p.toProd.1, q.toProd.1) - CategoryTheory.Sum.Swap.equivalenceFunctorEquivFunctorIso_hom_app_fst 📋 Mathlib.CategoryTheory.Sums.Products
{A : Type u_1} [CategoryTheory.Category.{v_1, u_1} A] {A' : Type u_2} [CategoryTheory.Category.{v_2, u_2} A'] {B : Type u} [CategoryTheory.Category.{v, u} B] (X : CategoryTheory.Functor (A ⊕ A') B) : (CategoryTheory.Sum.Swap.equivalenceFunctorEquivFunctorIso.hom.app X).1 = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Sum.inl_ A' A).associator (CategoryTheory.Sum.swap A' A) X).inv (CategoryTheory.Functor.whiskerRight (CategoryTheory.Sum.swapCompInl A' A).hom X) - CategoryTheory.Sum.Swap.equivalenceFunctorEquivFunctorIso_inv_app_fst 📋 Mathlib.CategoryTheory.Sums.Products
{A : Type u_1} [CategoryTheory.Category.{v_1, u_1} A] {A' : Type u_2} [CategoryTheory.Category.{v_2, u_2} A'] {B : Type u} [CategoryTheory.Category.{v, u} B] (X : CategoryTheory.Functor (A ⊕ A') B) : (CategoryTheory.Sum.Swap.equivalenceFunctorEquivFunctorIso.inv.app X).1 = CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight (CategoryTheory.Sum.swapCompInl A' A).inv X) ((CategoryTheory.Sum.inl_ A' A).associator (CategoryTheory.Sum.swap A' A) X).hom - CategoryTheory.Sum.associativityFunctorEquivNaturalityFunctorIso_hom_app_fst 📋 Mathlib.CategoryTheory.Sums.Products
{A : Type u_1} [CategoryTheory.Category.{v_1, u_1} A] {A' : Type u_2} [CategoryTheory.Category.{v_2, u_2} A'] {B : Type u} [CategoryTheory.Category.{v, u} B] (T : Type u_3) [CategoryTheory.Category.{v_3, u_3} T] (X : CategoryTheory.Functor ((A ⊕ A') ⊕ T) B) : ((CategoryTheory.Sum.associativityFunctorEquivNaturalityFunctorIso T).hom.app X).1 = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Sum.inl_ A (A' ⊕ T)).associator (CategoryTheory.sum.inverseAssociator A A' T) X).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight (CategoryTheory.sum.inlCompInverseAssociator A A' T).hom X) ((CategoryTheory.Sum.inl_ A A').associator (CategoryTheory.Sum.inl_ (A ⊕ A') T) X).hom) - CategoryTheory.Sum.associativityFunctorEquivNaturalityFunctorIso_inv_app_fst 📋 Mathlib.CategoryTheory.Sums.Products
{A : Type u_1} [CategoryTheory.Category.{v_1, u_1} A] {A' : Type u_2} [CategoryTheory.Category.{v_2, u_2} A'] {B : Type u} [CategoryTheory.Category.{v, u} B] (T : Type u_3) [CategoryTheory.Category.{v_3, u_3} T] (X : CategoryTheory.Functor ((A ⊕ A') ⊕ T) B) : ((CategoryTheory.Sum.associativityFunctorEquivNaturalityFunctorIso T).inv.app X).1 = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Sum.inl_ A A').associator (CategoryTheory.Sum.inl_ (A ⊕ A') T) X).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight (CategoryTheory.sum.inlCompInverseAssociator A A' T).inv X) ((CategoryTheory.Sum.inl_ A (A' ⊕ T)).associator (CategoryTheory.sum.inverseAssociator A A' T) X).hom) - CategoryTheory.Sum.associativityFunctorEquivNaturalityFunctorIso_hom_app_snd_fst 📋 Mathlib.CategoryTheory.Sums.Products
{A : Type u_1} [CategoryTheory.Category.{v_1, u_1} A] {A' : Type u_2} [CategoryTheory.Category.{v_2, u_2} A'] {B : Type u} [CategoryTheory.Category.{v, u} B] (T : Type u_3) [CategoryTheory.Category.{v_3, u_3} T] (X : CategoryTheory.Functor ((A ⊕ A') ⊕ T) B) : ((CategoryTheory.Sum.associativityFunctorEquivNaturalityFunctorIso T).hom.app X).2.1 = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Sum.inl_ A' T).whiskerLeft ((CategoryTheory.Sum.inr_ A (A' ⊕ T)).associator (CategoryTheory.sum.inverseAssociator A A' T) X).inv) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Sum.inl_ A' T).associator ((CategoryTheory.Sum.inr_ A (A' ⊕ T)).comp (CategoryTheory.sum.inverseAssociator A A' T)) X).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight (CategoryTheory.sum.inlCompInrCompInverseAssociator A A' T).hom X) ((CategoryTheory.Sum.inr_ A A').associator (CategoryTheory.Sum.inl_ (A ⊕ A') T) X).hom)) - CategoryTheory.Sum.associativityFunctorEquivNaturalityFunctorIso_inv_app_snd_fst 📋 Mathlib.CategoryTheory.Sums.Products
{A : Type u_1} [CategoryTheory.Category.{v_1, u_1} A] {A' : Type u_2} [CategoryTheory.Category.{v_2, u_2} A'] {B : Type u} [CategoryTheory.Category.{v, u} B] (T : Type u_3) [CategoryTheory.Category.{v_3, u_3} T] (X : CategoryTheory.Functor ((A ⊕ A') ⊕ T) B) : ((CategoryTheory.Sum.associativityFunctorEquivNaturalityFunctorIso T).inv.app X).2.1 = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Sum.inr_ A A').associator (CategoryTheory.Sum.inl_ (A ⊕ A') T) X).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight (CategoryTheory.sum.inlCompInrCompInverseAssociator A A' T).inv X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Sum.inl_ A' T).associator ((CategoryTheory.Sum.inr_ A (A' ⊕ T)).comp (CategoryTheory.sum.inverseAssociator A A' T)) X).hom ((CategoryTheory.Sum.inl_ A' T).whiskerLeft ((CategoryTheory.Sum.inr_ A (A' ⊕ T)).associator (CategoryTheory.sum.inverseAssociator A A' T) X).hom))) - Finset.addDysonETransform_fst 📋 Mathlib.Combinatorics.Additive.ETransform
{α : Type u_1} [DecidableEq α] [AddCommGroup α] (e : α) (x : Finset α × Finset α) : (Finset.addDysonETransform e x).1 = x.1 ∪ (e +ᵥ x.2) - Finset.mulDysonETransform_fst 📋 Mathlib.Combinatorics.Additive.ETransform
{α : Type u_1} [DecidableEq α] [CommGroup α] (e : α) (x : Finset α × Finset α) : (Finset.mulDysonETransform e x).1 = x.1 ∪ e • x.2 - Finset.addETransformLeft_fst 📋 Mathlib.Combinatorics.Additive.ETransform
{α : Type u_1} [DecidableEq α] [AddGroup α] (e : α) (x : Finset α × Finset α) : (Finset.addETransformLeft e x).1 = x.1 ∩ (AddOpposite.op e +ᵥ x.1)
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using (by default) Ctrl-K Ctrl-S. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
🔍Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
🔍"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
🔍_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
🔍Real.sqrt ?a * Real.sqrt ?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.
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.
This is Loogle revision 6ff4759 serving mathlib revision ee6d0f1