overlapping in nestedmodel


I am trying to enable overlap in the nested_blockmodel:

state = gt.inference.minimize.minimize_nested_blockmodel_dl(g, overlap=True)

So far, I have only tried a very simple network ("celegansneural"), and it
gives me three levels, with the first level being a OverlapBlockState and
upper levels being BlockState.

[<OverlapBlockState object with 3 blocks, degree corrected, for graph
&lt;Graph object, directed, with 297 vertices and 2359 edges at
0x10bc7d710>, at 0x1351e6470>, <BlockState object with 2 blocks (2
nonempty), for graph &lt;Graph object, directed, with 3 vertices and 6 edges
at 0x135e3a1d0>, at 0x135e27ac8>, <BlockState object with 1 blocks (1
nonempty), for graph &lt;Graph object, directed, with 2 vertices and 3 edges
at 0x135214128>, at 0x1352192b0>]

I am interested in inferred a DAG structure from some networks, i.e. not
only the leaf nodes, but nodes on intermediate level can have multiple

I am wondering whether the fact that I only get one level of overlapping
block is due to the very simple network, or is it simply not possible to
have multiple levels of overlapping blocks?

The model implemented in graph-tool is only overlapping in the bottom lavel.
Overlapping models in all levels are possible, but have not yet been