Zulip Chat Archive

Stream: general

Topic: has_mem notation


Johan Commelin (Jan 14 2019 at 10:46):

Does anyone know how to fix this notation hack?

def covering_family {X : Type u} [category.{v} X] (U : X) : Type (max u v) :=
Π {{V}}, set (V  U)

local notation a ``:50 b:50 := b a -- Aaahrg!

structure coverage (X : Type u) [category.{v} X] :=
(covers   : Π (U : X), set (covering_family U))
(property :  {U V : X} (g : V  U),
             f  covers U,  h  covers V,
             Vj (k : Vj  V), k  h 
             Ui (l : Ui  U), l  f   m : Vj  Ui, m  l = k  g)

Johan Commelin (Jan 14 2019 at 10:46):

Ooh, and here is the relevant top of the file

import category_theory.presheaf
import category_theory.comma
import category_theory.full_subcategory
import analysis.topology.topological_space
import category_theory.examples.topological_spaces
import tactic.where

universes v u

namespace category_theory
open category_theory
open category_theory.limits

Chris Hughes (Jan 14 2019 at 10:49):

Could you do a has_mem instance instead?

Johan Commelin (Jan 14 2019 at 11:28):

No, I don't think has_mem works. I want to say that f : V ⟶ U is a member of c. But the type of f depends on V, which ranges over all of X.


Last updated: Dec 20 2023 at 11:08 UTC