def single_node_partitions(mechanism, purview, node_labels=None):
           for element in mechanism:
               element = tuple([element])
               others = tuple(sorted(set(mechanism) - set(element)))

               part1 = Part(mechanism=element, purview=())
               part2 = Part(mechanism=others, purview=purview)

               yield KPartition(part1, part2, node_labels=node_labels)