One embodiment of the invention provides a system for mapping a neural network onto a neurosynaptic substrate. The system comprises a metadata analysis unit for analyzing metadata information associated with one or more portions of an adjacency matrix representation of the neural network, and a mapping unit for mapping the one or more portions of the matrix representation onto the neurosynaptic substrate based on the metadata information.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A system for mapping a neural network onto a neurosynaptic substrate, comprising: a metadata analysis unit for analyzing metadata information associated with one or more portions of an adjacency matrix representation of the neural network; and a mapping unit for mapping the one or more portions of the matrix representation onto the neurosynaptic substrate based on the metadata information. 2. The system of claim 1, wherein the metadata information specifies a particular mapping method for mapping the one or more portions of the matrix representation onto the neurosynaptic substrate. 3. The system of claim 1, wherein the metadata information specifies one or more dimensions within the matrix representation that a reordering method is constrained from reordering before mapping. 4. The system of claim 1, wherein the metadata information specifies weights for different evaluation metrics used in selecting a mapping method for mapping the one or more portions of the matrix representation onto the neurosynaptic substrate. 5. The system of claim 1, wherein the metadata information specifies one or more temporal constraints. 6. The system of claim 5, wherein one or more delays are added during the mapping to satisfy the temporal constraints. 7. The system of claim 5, wherein one or more trigger or reset signals are added to the neural network during the mapping to satisfy the temporal constraints. 8. The system of claim 1, further comprising: a library maintaining multiple library elements, wherein each library element comprises a reusable and composable neural circuit; wherein each reusable and composable neural circuit comprises a single substrate-compliant neuron or a combination of multiple substrate-compliant neurons; and wherein the metadata information is used to identify a neural circuit for which a library element may be looked up. 9. The system of claim 8, wherein at least one library element represents a neuron function implementable by a reusable, configurable and composable neural circuit. 10. The system of claim 9, wherein the library supports different computational functions and neural codes. 11. The system of claim 10, wherein: the metadata information specifies one or more computational nodes of the neural network; and for each computational node, the mapping unit selects from the library a reusable and composable neural circuit with associated synaptic connectivity that replicates a neuron function of the computational node. 12. The system of claim 11, wherein each reusable and composable neural circuit selected is mapped directly to the neurosynaptic substrate. 13. The system of claim 11, wherein each reusable and composable neural circuit selected is expanded, flattened and subjected to reordering before mapping to the neurosynaptic substrate. 14. The system of claim 11, wherein each reusable and composable neural circuit selected is expanded, flattened and marked not to reorder in order to preserve adjacency before mapping to the neurosynaptic substrate. 15. The system of claim 8, wherein at least one library element represents a commonly used and recurring structure that may be implemented by efficient neurosynaptic program implementations. 16. The system of claim 15, wherein the library supports different network connectivity patterns. 17. The system of claim 16, wherein: the metadata information specifies a particular network connectivity pattern; and the mapping unit selects from the library a reusable and composable neural circuit that replicates the particular network connectivity pattern. 18. A method for mapping a neural network onto a neurosynaptic substrate, comprising: analyzing metadata information associated with one or more portions of an adjacency matrix representation of the neural network; and mapping the one or more portions of the matrix representation onto the neurosynaptic substrate based on the metadata information. 19. The method of claim 18, wherein the metadata information specifies one of the following: a particular mapping method for mapping the one or more portions of the matrix representation onto the neurosynaptic substrate, one or more dimensions within the matrix representation that a reordering method is constrained from reordering before mapping, weights for different evaluation metrics used in selecting a mapping method for mapping the one or more portions of the matrix representation onto the neurosynaptic substrate, or one or more temporal constraints. 20. The method of claim 18, further comprising: maintaining a library including multiple library elements, wherein each library element comprises a reusable and composable neural circuit; wherein each reusable and composable neural circuit comprises a single substrate-compliant neuron or a combination of multiple substrate-compliant neurons; wherein the metadata information is used to identify a neural circuit for which a library element may be looked up; and wherein at least one library element represents one of the following: a neuron function implementable by a reusable and composable neural circuit, or a commonly used and recurring structure that may be implemented by efficient neurosynaptic program implementations.