How to represent part-whole hierarchies in a neural network | Synapse