Hmm. Not my favourite solution, but I think that the isomorphism checks can be done in batches, resulting in actual isomorph spaces, like this (for C5H10):

In the image, we have a sliced rectangle on the left, with the final rectangles labelled with letters (A-E) and the slices with numbers (1-4). The corresponding tree is on the right, with the slices as internal nodes labelled with 'h' for horizontal and 'v' for vertical. Naturally, only the leaves correspond to rectangles, and each internal node has two children - it's a binary tree.

So what is the connection between such trees and the sliceable dual graphs? Well, the rectangles are related in exactly the expected way:

Here, the same BSP tree is on the left (without some labels), and the slicea…

## Comments

So, is this the result of a generation for C5H10 or has it already been filtered?

So, what I did was all-v-all check the structures produced from a single fragment combination (a single partition) as I assumed that there would only be duplicates within the children of a partition, and not between partition descendants.

Hmmm. I'll make a diagram..

Maybe there are recognizable patterns?

Eg:

10 = [[4, 4, 1, 1], [4, 3, 2, 1], [4, 2, 2, 2], [3, 3, 3, 1], [3, 3, 2, 2]]

In fact, it is also [[7, 1, 1, 1], [6, 2, 1, 1], [5, 3, 1, 1], [5, 2, 2, 1]] but those are rightly rejected for having valences greater than 4.