One of the most pressing problems in systems neuroscience is determining what the neural code is. It has been known for many years that neural signals come in the form of spike trains, but it is not yet known what the unit of information is. E.g., do neurons use simple coarse codes, where the unit of information is just the number of spikes produced during some behaviorally relevant time interval, or do they use more complex, fine codes, where the unit of information is the single spike or some pattern of spikes? In the last several years, many codes have been proposed - coarse codes, fine codes, temporal correlation codes, cross correlation codes, etc. The array of candidates has grown as more and more studies have reported that different features of the spike train can potentially carry information. None of these studies, though, rule any of these codes out. Our aim here was to set up a strategy for doing this. We used as our model system the output cells of the retina. We recorded from all the output cells an animal uses to solve a task, evaluated the cells' spike trains for as long as the animal evaluates them, and used optimal (i.e., Bayesian) decoding. This approach makes it possible to get an upper bound on the performance of each code and eliminate those that are not viable. Our results show that coarse coding strategies are, in fact, not viable (even with pooling); finer, more information-rich codes are essential.

We thank R. Kass for his Bayesian Adaptive Regression Splines (BARS) Software. This work was supported by The National Institutes of Health and The Beckman Foundation (to S.N) and the Natural Science and Engineering Research Council of Canada (to G.P).