Higher Level Group Actions beyond OnSets

88 Views Asked by At

Is there a way to produce an orbit of a chain in a poset (whose elements are sets of sets) (that is, the group action is a group acting on the order complex of a poset)?

I really want something that looks like this:

G.orbit(Z[0], action = "OnSetsSetsSets") or perhaps OnTuplesSetsSets

Is there a workaround where I might be able to use just OnSets? Perhaps using lambda in some way?

1

There are 1 best solutions below

0
On

As mentioned before, you could implement your own function. (Call Print(OnSetsSets) to get an idea how a putative OnSetsSetsSets etc. would have to look like.) However at some point you pay a price in time and memory for the indirections.

What I would do is to create an action of the group on sets of sets. For example (say the sets of sets can be seeded with orbits of a and b):

gap> g:=TransitiveGroup(8,20);;
gap> a:=[[1,3,5],[2,4,8]];;b:=[[1,2,7,8],[3,5]];;
gap> domain:=Orbit(g,a,OnSetsSets);;
gap> domain:=Union(domain,Orbit(g,b,OnSetsSets));;Length(domain);
32
gap> act:=ActionHomomorphism(g,domain,OnSetsSets,"surjective"); 
<action homomorphism>
gap> h:=Image(act);

Then every sets of sets is an element of domain and thus a number for h. A chain would be a set of such numbers and you could get orbits by letting h act OnSets, using domain to translate back to your original representation.

Concerning you comment question about cloudsage I have no clue, never having used it. Installing GAP is not hard and probably worth doing if you have any nontrivial calculation, rather than relying on a cloud platform.