Zulip Chat Archive

Stream: Is there code for X?

Topic: elements of an action which fix a set


Eric Wieser (Feb 09 2022 at 18:44):

Do we have a name for the following?

/-- The set of actions that leave elements in `s` unchanged -/
def what_am_i (M) {α} [has_scalar M α] (s : set α) : set M :=
{ m : M |  x  s, m  x = x }

The closest I can find is docs#intermediate_field.fixing_subgroup which is an extremely special case with M = E ≃ₐ[F] E and unused requirements on s

Reid Barton (Feb 09 2022 at 18:46):

It should be called something like the pointwise stabilizer of s

Reid Barton (Feb 09 2022 at 18:46):

For a single element, it would be the stabilizer

Yakov Pechersky (Feb 09 2022 at 18:48):

sUnion of stabilizer?

Eric Wieser (Feb 09 2022 at 18:51):

#11938 adds the above as fixing_submonoid and fixing_subgroup but only because that matches the one I found already

Eric Wieser (Feb 09 2022 at 18:53):

Yakov Pechersky said:

sUnion of stabilizer?

More like bInter:

lemma what_am_i_eq (M) {α} [group M] [mul_action M α] (s : set α) :
  ( b  s, mul_action.stabilizer M b) = what_am_i M s :=
begin
  simp,
  ext, simp only [set.mem_Inter],
  refl,
end

Yakov Pechersky (Feb 09 2022 at 18:53):

Right! Turn that smile upside down.

Eric Wieser (Feb 09 2022 at 18:53):

Perhaps this doesn't need a name

Eric Wieser (Feb 09 2022 at 21:15):

The downside of the approach is that docs#set.Inter (aka docs#set.has_Inf) is definitionally not as nice as the original

Yaël Dillies (Feb 09 2022 at 21:17):

That makes me definitionally unhappy.

Reid Barton (Feb 09 2022 at 22:07):

oh yeah I think I've been caught out by this before--is there a reason we couldn't change the complete_lattice instance or whatever to use the right-hand side of docs#set.mem_Inter as the definition?

Eric Wieser (Feb 09 2022 at 22:09):

Yes, we get caught up in universe problems if we try to replace the Inf field of complete_lattice with infi

Reid Barton (Feb 09 2022 at 22:09):

ah

Eric Wieser (Feb 09 2022 at 22:10):

We could treat set as a special case since it has special notation anyway, but that's probably stillnot worth it

Eric Wieser (Feb 09 2022 at 22:11):

There might be a middle ground where we have a has_lawful_infi.{u} α typeclass that provides infi in a particular universe and proves it's consistent with Inf

Eric Wieser (Feb 09 2022 at 22:12):

And then if we end up in a universe mess somewhere we can just conjure an instance built from the Inf.

Eric Wieser (Feb 09 2022 at 22:13):

But you could also argue that tweaking definitional equality isn't worth that trouble

Reid Barton (Feb 09 2022 at 22:15):

Wait no I don't understand now--set.Inter is a standalone top-level definition so we could just change it, right?

Reid Barton (Feb 09 2022 at 22:15):

I see what I said above was wrong but it's a slightly different thing.

Eric Wieser (Feb 09 2022 at 22:26):

Yes, we could change set.Inter but then and would no longer be two notations for the same thing

Eric Wieser (Feb 09 2022 at 22:27):

Which is useful because it encourages us to generalize set lemmas to lattices

Eric Wieser (Feb 10 2022 at 09:18):

The downside of the approach is that docs#set.Inter (aka docs#set.has_Inf) is definitionally not as nice as the original (new Zulip thread)


Last updated: Dec 20 2023 at 11:08 UTC