Embodiments of the invention provide a method for mapping a bipartite graph onto a neuromorphic architecture comprising of a plurality of interconnected neuromorphic core circuits. The graph includes a set of source nodes and a set of target nodes. The method comprises, for each source node, creating a corresponding splitter construct configured to duplicate input. Each splitter construct comprises a first portion of a core circuit. The method further comprises, for each target node, creating a corresponding merger construct configured to combine input. Each merger construct comprises a second portion of a core circuit. Source nodes and target nodes are connected based on a permutation of an interconnect network interconnecting the core circuits.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A computer program product comprising a computer-readable hardware storage device having program code embodied therewith, the program code being executable by a computer to implement a method comprising: for each source node of a bipartite graph, creating a corresponding splitter construct by programming multiple neurons of a plurality of interconnected neuromorphic core circuits to receive input spikes from one axon interconnected to the multiple neurons, duplicate the input spikes received, and send the duplicated input spikes to multiple target axons, thereby increasing effective neuron fan-out; for each target node of the bipartite graph, creating a corresponding merger construct by programming one neuron of the core circuits to receive input spikes from multiple axons and combine the input spikes received, thereby increasing effective neuron fan-in; and connecting each splitter construct and each merger construct based on a permutation of an interconnect network interconnecting the core circuits. 2. The computer program product of claim 1, wherein: the bipartite graph further comprises multiple weighted edges; and each weight corresponding to each weighted edge is implemented using a splitter construct. 3. The computer program product of claim 1, wherein: the bipartite graph further comprises multiple weighted edges; and each weight corresponding to each weighted edge is implemented using a splitter and a merger construct. 4. The computer program product of claim 1, wherein: the bipartite graph further comprises multiple stochastic weighted edges; and each stochastic weight corresponding to each weighted edge is implemented using one or more of the following: a splitter construct with one or more stochastic neurons, and a merger construct with one or more stochastic axons or stochastic synapses. 5. A computer program product comprising a computer-readable hardware storage device having program code embodied therewith, the program code being executable by a computer to implement a method comprising: decomposing a graph including a set of nodes and a set of directed edges into multiple bipartite sub-graphs; for each sub-graph: for each node of said sub-graph that appears as a source node, creating a corresponding splitter construct by programming multiple neurons of a plurality of interconnected neuromorphic core circuits to receive input spikes from one axon interconnected to the multiple neurons, duplicate the input spikes received, and send the duplicated input spikes to multiple target axons, thereby increasing effective neuron fan-out; for each node of said sub-graph that appears as a target node, creating a corresponding merger construct by programming one neuron of the core circuits to receive input spikes from multiple axons and combine the input spikes received, thereby increasing effective neuron fan-in; and connecting each splitter construct and each merger construct based on a permutation of an interconnect network interconnecting the core circuits; and for each node that appears in more than one sub-graph, connect each corresponding merger construct for said node to a corresponding splitter construct for said node. 6. The computer program product of claim 5, wherein: the set of directed edges includes multiple weighted edges; and each weight corresponding to each weighted edge is implemented using a splitter construct. 7. The computer program product of claim 5, wherein: the set of directed edges includes multiple weighted edges; and each weight corresponding to each weighted edge is implemented using a splitter and a merger construct. 8. The computer program product of claim 5, wherein: the set of directed edges includes multiple stochastic weighted edges; and each stochastic weight corresponding to each weighted edge is implemented using one or more of the following: a splitter construct with one or more stochastic neurons, and a merger construct with one or more stochastic axons or stochastic synapses.