Zulip Chat Archive

Stream: Is there code for X?

Topic: Directed union of subobject


Chris Hughes (Sep 05 2021 at 14:13):

Do we have an undeprecated version of

@[to_additive]
lemma is_subgroup_Union_of_directed {ι : Type*} [ : nonempty ι]
  {s : ι  set G} (hs :  i, is_subgroup (s i))
  (directed :  i j,  k, s i  s k  s j  s k) :
  is_subgroup (i, s i) :=
{ inv_mem := λ a ha,
    let i, hi := set.mem_Union.1 ha in
    set.mem_Union.2 i, (hs i).inv_mem hi⟩,
  to_is_submonoid := is_submonoid_Union_of_directed (λ i, (hs i).to_is_submonoid) directed }

I need it for subalgebras and I'm curious about the best way to state it.

Ruben Van de Velde (Sep 05 2021 at 14:23):

Would something like this work?

import group_theory.subgroup

variables {G : Type*} [group G]

def t {ι : Type*} [ : nonempty ι]
  {s : ι  subgroup G}
  (directed :  i j,  k, (s i : set G)  s k  (s j : set G)  s k) : subgroup G :=
{ carrier := i, s i,
  one_mem' :=
    let i :=  in set.mem_Union.2 i, (s i).one_mem⟩,
  mul_mem' := λ a b ha hb,
    let i, hi := set.mem_Union.1 ha in
    let j, hj := set.mem_Union.1 hb in
    let k, hk := directed i j in
    set.mem_Union.2 k, (s k).mul_mem (hk.1 hi) (hk.2 hj)⟩,
  inv_mem' := λ a ha,
    let i, hi := set.mem_Union.1 ha in
    set.mem_Union.2 i, (s i).inv_mem hi }

Kevin Buzzard (Sep 05 2021 at 14:30):

We have docs#subgroup.mem_supr_of_directed


Last updated: Dec 20 2023 at 11:08 UTC