A neural network system includes a random access memory (RAM); and an index- based weightless neural network with a columnar topography; wherein patterns of binary connections and values of output nodes' activities are stored in the RAM. Information is processed by pattern recognition using the neural network by storing a plurality of output patterns to be recognised in a pattern index; accepting an input pattern and dividing the input pattern into a plurality of components; and processing each component according to the pattern index to identify a recognised output pattern corresponding to the input pattern.