Let $[H,G]$ be a boolean interval of finite groups (i.e. the lattice of intermediate subgroups $H \subseteq K \subseteq G$, is boolean). For any element $K \in [H,G]$, let $K^c$ be its lattice complement (i.e. $K \wedge K^c = H$ and $K \vee K^c = G$). Let $A, B \in [H,G]$:

**Question**: Is it true that $AA^c \cap BB^c \subseteq (A \cap B)(A \cap B)^c $ ?

*Remark*: It is true if $|G : H| < 32$.

*proof*: it is obviously true in the group-complemented case (i.e. $\forall K \in [H,G]$, $KK^c = G$), and also for boolean lattice of rank $\le 2$. But by GAP computation, at index $|G : H| < 32$, there
are, up to equivalence, $612$ boolean intervals. They are all group-complemented except $[D_8, PSL_2(7)]$ and $[S_3, PSL_2(7)]$, both of rank $2$. $\square$

*Remark*: It's also true by GAP for the four first rank $3$ boolean intervals $[H,G]$ with $G$ simple, listed here (note that no one is group-complemented).

*Motivation*: This property appears naturally in an attempt to define a recursive coatom ordering on the graded coset poset $\hat{C}(H,G)$ of a boolean interval of finite groups $[H,G]$ (beyond the group-complemented case), for proving that $\hat{C}(H,G)$ is Cohen-Macaulay (see here), for then proving that the dual Euler totient of $[H,G]$ is nonzero (see here), and finally proving the dual version of a theorem of Oystein Ore (see here and there).

Some details about the checking by GAP:

On one hand, for any interval of finite group $[H,G]$, $G$ acts transitively on the finite set $G/H$ of cardinal $[G:H]$ (called the degree of the action). On the other hand, for any transitive action of a finite group $G$ on a finite set $\{1,...,n\}$, the stabilizer subgroup $H=G_{\{1\}}$ is of index $n$ (so note that it is necessary that $n$ divides $|G|$ to have a transitive action). So the data of an interval of finite group is equivalent to the data of a transitive action, which is equivalent to a transitive permutation group (i.e. sugroups of $S_n$ acting transitively on $\{1,..,n\}$). But GAP admits a library in which all the transitive permutation groups are classified up to degree $30$ (and up to equivalence):

http://www.gap-system.org/Datalib/trans.html

Moreover a transitive action is called primitive if the corresponding $[H,G]$ is maximal. But GAP admits a library in which every primitive permutation group are classified up to degree $2500$:

http://www.gap-system.org/Datalib/prim.html

If the degree (of a transitive action) is prime then the action is primitive (and the convese is false). So we get the transitive permutation groups of degree $31$ by calling the primitive permutation groups of degree $31$.

Anyway you can do as the following example:

```
gap> G:=TransitiveGroup(10,4);
1/2[F(5)]2
gap> H:=Stabilizer(G,1);
Group([ (2,10)(3,9)(4,8)(5,7) ])
gap> IntermediateSubgroups(G,H);
rec( inclusions := [ [ 0, 1 ], [ 0, 2 ], [ 1, 3 ], [ 2, 3 ] ],
subgroups := [ Group([ (2,10)(3,9)(4,8)(5,7), (1,6)(2,9,10,3)(4,5,8,7) ]),
Group([ (2,10)(3,9)(4,8)(5,7), (1,9,7,5,3)(2,10,8,6,4) ]) ] )
```

$G$ is the 4th transitive permutation group of degree $10$, in the GAP library.
$H$ is the stabilizer subgroup fixing $\{1\}$.
The function `IntermediateSubgroups(G,H)`

computes the lattice $[H,G]$.

So we just need to write a short program which can decide if a lattice is boolean or not, and to go through all the transitive permutation groups as above, to get all the boolean interval of index$<32$.

Finally note that $[G:K]=[K^c:H]$ iff $KK^c=G$ iff $KK^c=K^cK$.