Author: Michael Marsalli 
Additional Credits: 
Funding This module was supported by National Science Foundation Grants #9981217 and #0127561. 


We now have two ways of adjusting an MCP neuron. We can make signals either excitatory or inhibitory, and we can change the threshold. By making different choices for these adjustments, we can make MCP neurons that produce a variety of results. For example, suppose we wanted to construct an MCP neuron that signals a bird to eat objects that are not both purple and round. In other words, this is an MCP neuron that does the exact opposite of what we did in our first example of an MCP neuron. (See Table 2.) Here's what we could do. We could make both the purple detector and the roundness detector inhibitory. Then we could set the threshold to 0.
Now if the object is a blueberry, there are two inhibitory signals sent. So the total is 1 + (1)= 2 . When we compare 2 to the threshold of 0, we see that 2 is less than 0, so the MCP neuron will send a 0, and the bird will not eat the blueberry.
The rest of the results are summarized in the following table.
Table 6
Object 
Purple? Inhibitory 
Round? Inhibitory 
Total 
Greater than or equal to threshold of 0? 
Eat? 
Blueberry 
1 
1 
 2 
No 
0 
Golf ball 
0 
1 
1 
No 
0 
Violet 
1 
0 
 1 
No 
0 
Hot Dog 
0 
0 
0 
Yes 
1 
As you can see, we can indeed make an MCP neuron that does the exact opposite of the first MCP neuron that we considered. We would now like to see what other results we can produce with an MCP neuron by using various combinations of excitatory and inhibitory signals with various thresholds. For now we will only consider MCP neurons that receive two signals. Is there any limit to the type of MCP neurons we can make?
There are some limits. With only two signals, there are only three possible combinations of excitatory and inhibitory signals: both signals excitatory, both signals inhibitory, and one excitatory signal with one inhibitory signal. We've seen all of these combinations in previous examples.
Exercise 8. Find an example of each of the combinations of excitatory and inhibitory signals. Consider Table 2, Table 3, Table 5, and Table 6 above. 
Of course, the number of possible thresholds is infinite. But there are only a few types of results that an MCP neuron can produce, because it only sends out a 0 or 1. MCP neurons are also limited by the number of signals they receive. If we ignore the types of detectors and just concentrate on whether or not the detector sends a signal, we can see there are only four combinations of two signals: both detectors send a signal, the first sends a signal and the second detector does not , the second detector sends a signal and the first detector does not, and neither detector sends a signal. As a consequence, it can be shown that there are sixteen possible ways to produce a 0 or 1 from each of the four pairs of signals. So there are at most sixteen possible types of MCP neurons with two receivers. We'll now consider a particular one of these sixteen types.
Let's consider a bird with two detectors connected to a neuron. The first detector will send a signal if the object is a creature with four legs, and the second detector sends a signal if the object is green. We want to make an MCP neuron that will signal the bird to flee if the object is either fourlegged or green, but not both. We'll start by trying two excitatory signals with a threshold of 1. We'll conisder four objects: a frog, a green snake, a black cat, and a violet. Notice that these objects give us the four possible combinations of 0 and 1 for each pair of signals. Also, because all the signals are excitatory, the total is just the sum of the two signals. This will produce the following results.
Object 
Four Legs? Excitatory 
Green? Excitatory 
Total 
Greater than or equal to threshold of 1? 
Flee? 
Frog 
1 
1 
2 
Yes 
1 
Green Snake 
0 
1 
1 
Yes 
1 
Black Cat 
1 
0 
1 
Yes 
1 
Violet 
0 
0 
0 
No 
0 
While this is close to what we want, it's not perfect. The bird will flee from an object that is fourlegged, such as the cat, or from an object that is green, such as the snake. But the bird will also flee from any object that is both fourlegged and green, which we don't want. So this combination of signals and threshold doesn't work. In fact, what we are trying to do is make an MCP neuron that produces a 1 if either signal is a 1, but produces a 0 if both signals are either 0 or 1.
Exercise 9. Make a table like Table 7 for an MCP neuron with one excitatory signal and one inibitory signal and a threshold of 0. Does this MCP neuron produce a 1 if either signal is a 1, but produces a 0 if both signals are either 0 or 1? 
The particular type of MCP neuron we are trying to make is called an "exclusive or" MCP neuron, because it sends a 1 if it receives a 1 from one signal or the other, but not both. An "exclusive or" would have 0,1,1,0 in the last column of Table 7. There is also an "inclusive or" which sends a 1 if it receives a 1 from either signal or both. An "inclusive or" would have 1,1,1,0 in the last column of Table 7. In fact, we have already made an "inclusive or" MCP neuron in Table 3.
If we try the various combinations of excitatory and inhibitory signals with several thresholds, we will begin to suspect that it is impossible to build an MCP neuron that produces an "exclusive or." In fact, it can be proved mathematically that no combination of signals and thresholds can produce the "exclusive or." So there is a fundamental limitation on the type of results a single MCP neuron can produce.
In order to produce more complicated results like the "exclusive or" we must start connecting MCP neurons together to form neural networks. It turns out that the "exclusive or" can be made by using three MCP neurons each with two receivers. Two of the MCP neurons each have one receiver attached to the first detector and the other receiver attached to the second detector. So the same signal from each detector is sent to both MCP neurons simultaneously. Each of these MCP neurons then send their signal to one of the receivers of the third MCP neuron. If the various signals and thresholds are chosen properly, this network will accept two signals and send out a signal that produces an "exclusive or." In other words, we can produce a neural network of three MCP neurons that produces an "exclusive or."
Another way to increase the possible results from an MCP neuron is to use more receivers. We could look at MCP neurons with three or more receivers. We could then link these MCP neurons together in a neural network. By doing just this, McCulloch and Pitts showed there is a neural network of MCP neurons that produces whatever combination of 1's and 0's we would like from the possible signals it receives. So while there is a fundamental limitation on a single MCP neuron, this limitation can be overcome by connecting the single MCP neurons together in a neural network. This also shows how very complicated results can be obtained by connecting together a large number of very simple parts (the MCP neurons). Perhaps this explains how our brain can do amazing things, even though it is a collection of a huge number of basic cells (real neurons) that are connected to a very large number of other basic cells.

