Let $G$ be a cyclic group of order $n$ and $B=B_n$ the Boolean lattice of an $n$-set and $P$ be poset of all intervals of $B$. $G$ acts in a natural way on $B$ by sending a subset $x=(k_1,...,k_m )$ to $gx=(k_1+1,...,k_m+1 )$ (when $g$ is the canonical generator of the cyclic group) where we view the integers mod n in the set ${(1,...,n)}$. This action induces an action of $G$ on the set of all intervals of $B$ by sending an interval $[x,y]$ to $[gx,gy]$. My question is whether there is an easy way to obtain this action of $G$ on $P$ via Sage. Here is how far I come with Sage:
p=3
B = Subsets([1,..,p])
def cyc_act(S): return Set(i.mod(p) + 1 for i in B)
BB= posets.BooleanLattice(p, use_subsets=True)
P=BB.intervals_poset()
plot(P)
So I defined the action of G on B and the interval poset, but I am not sure how to continue in a good way. Thanks for any help