Wrote the paper: EN MOG HEP. Conceived the idea and approach: EN MOG HEP. Performed the literature search: MOG HEP. Analyzed the data: EN.
EN and HEP are paid employees of the Norwegian University of Life Sciences. MOG is a paid employee of Honda Research Institute Europe GmbH.
Progress in science depends on the effective exchange of ideas among scientists. New ideas can be assessed and criticized in a meaningful manner only if they are formulated precisely. This applies to simulation studies as well as to experiments and theories. But after more than 50 years of neuronal network simulations, we still lack a clear and common understanding of the role of computational models in neuroscience as well as established practices for describing network models in publications. This hinders the critical evaluation of network models as well as their reuse.
We analyze here 14 research papers proposing neuronal network models of different complexity and find widely varying approaches to model descriptions, with regard to both the means of description and the ordering and placement of material. We further observe great variation in the graphical representation of networks and the notation used in equations. Based on our observations, we propose a
We believe that the
Scientists make precise, testable statements about their observations and models of nature. Other scientists can then evaluate these statements and attempt to reproduce or extend them. Results that cannot be reproduced will be duly criticized to arrive at better interpretations of experimental results or better models. Over time, this discourse develops our joint scientific knowledge. A crucial condition for this process is that scientists can describe their own models in a manner that is precise and comprehensible to others. We analyze in this paper how well models of neuronal networks are described in the scientific literature and conclude that the wide variety of manners in which network models are described makes it difficult to communicate models successfully. We propose a
Science advances human knowledge through learned discourse based on mutual criticism of ideas and observations. This discourse depends on the unambiguous specification of hypotheses and experimental procedures—otherwise any criticism could be diverted easily. Moreover, communication among scientists will be effective only if a publication evokes in a reader the same ideas as the author had in mind upon writing
Scientific disciplines have over time developed a range of abstract notations, specific terminologies and common practices for describing methods and results. These have lifted scientific discourse from handwaving arguments about sloppily ascertained observations to precise and falsifiable reasoning about facts established at a welldefined level of certainty. Well chosen notation and systematization, from Linné's classification of flora and fauna, via the periodic system of the elements to Feynman diagrams have widened the minds of scientists and continue to induce new discoveries.
Matrix notation provides an illustrative example of the power of notation. Consider a system of three differential equations
From the study of onedimensional differential equations, we know that
Note that even though the notion and notation of vectors and matrices is more abstract and, thus, more compact than the original formulation of Eq. 1, it does not lose any detail. The variables
Computational neuroscience lags behind mathematics and other fields of science in standardization, expressiveness and power of notation. We assess here the current scientific practice of describing computational models of the brain. We focus on network models built from large numbers of rather simple neurons with an aim to test hypotheses on aspects of brain function. Specifically, we study 14 papers chosen mainly from visual neuroscience
Reference  Abbr.  Description 
Brunel 
B  Unordered network of two populations of integrateandfire neurons with currentinjecting synapses; random external input. 
Destexhe et al. 
D  Onedimensional network with two layers of point neurons with several ionic currents and conductance based synapses. 
Haeusler and Maass 
HM  Unordered sixpopulation model of HodgkinHuxleytype neurons with conductancebased synapses with shortterm dynamics. 
Hayot and Tranchina 
HT  Twodimensional network with three populations of firingrate neurons; spatiotemporally patterned input. 
Hillenbrand and van Hemmen 
HvH  Model of corticogeniculate loops that tests if the visual cortex controls the spatiotemporal structure of cortical receptive fields via feedback to the lateral geniculate nucleus. 
Izhikevich and Edelman 
IE  “Whole brain” model covering several brain areas, each composed of layered twodimensional networks of oscillator neurons with plastic, conductancebased synapses. 
Kirkland and Gerstein 
KG  Twodimensional model of three layers of integrateandfire neurons with conductancebased synapses driven by spatiotemporally pattered stimuli. 
Lumer et al. 
L  Twodimensional model of ten layers, with two neuron populations per layer; integrateandfire neurons with conductancebased synapses. 
Mariño et al. 
M  Twodimensional model of two layers of HodgkinHuxleytype neurons with conductancebased synapses. 
Saam and Eckhorn 
SE  Twodimensional model of two layers of pulsecoding neurons. 
Tao et al. 
TA  Twodimensional twolayer model of integrateandfire neurons with conductance based synapses. 
Troyer et al. 
TR  Twodimensional network model with two populations of conductancebased integrateandfire neurons. 
Vogels and Abbott 
VA  Unordered and onedimensional networks of integrateandfire neurons. 
Wielaard and Sajda 
WS  Twodimensional twolayer model of integrateandfire neurons with conductance based synapses. 
The table gives a brief overview of the type of model studied and assigns an abbreviation to each paper for reference in other tables.
A central motivation for our work is that sharing of materials, methods, and data in the life sciences has received increased attention in recent years, to a large part driven by developments in molecular biology. The UPSIDE (
Sejnowski et al.
Computational neuroscientists are only now beginning to pay increasing attention to the role of models and simulations, as well as preconditions for the successful exchange of models, as witnessed by recent workshops
Philosophers of science have yet to develop a robust definition and interpretation of models and simulations
We shall not attempt to provide a general analysis of models and simulations in computational neuroscience here. Our aim is more practical: to promote standards for the description of neuronal network models in the literature, to further sharing of knowledge and facilitate critique. Thus, our focus is narrower yet than that of Eliasmith and Anderson
A neuronal network model is an explicit and specific hypothesis about the structure and microscopic dynamics of (a part of) the nervous system.
Several aspects of this definition deserve note:
The model must be
The model must be
The model specifies the
The model does
The model is first of all a mental model formed in the brain of a researcher. It is her hypothesis about the function of a part of the brain. Heinrich Hertz expressed this idea first in his textbook “Prinzipien der Mechanik” in 1894:
“We make for ourselves internal images or symbols of the external objects, and we make them in such a way that the consequences of the images that are necessary in thought are always images of the consequences of the depicted objects that are necessary in nature Once we have succeeded in deriving from accumulated previous experience images with the required property, we can quickly develop from them, as if from models, the consequences that in the external world will occur only over an extended period or as a result of our own intervention.” (cited from
Scientific progress depends critically on the ability of neuroscientists to communicate models, i.e., hypotheses, among each other: When Anna presents her model to Bob and Charlie—will both build the same mental model in their minds as Anna? Or will some nuances be lost, some aspects interpreted differently, some parts misunderstood? Only a precise, unambiguous notation for models will allow Anna, Bob and Charlie to discuss their individual understandings of the model and thus to truly share models. Efficient communication dictates that scientists should use a common notation to describe their models, as it is demanding to thoroughly acquaint ourselves with any advanced notation.
It is tempting to consider implementations of neuronal network models in a specific simulator software as a sufficient model description, as it is explicit, specific and describes structure and dynamics. We believe this to be a fallacy. Implementations come most often in the form of scripts or computer programs, which tend to be difficult to reverse engineer: It is simply not possible to infer the overall network structure from the bits and pieces of a large script. Secondly, most simulation scripts rely on properties hidden in a simulator, which may even change as a simulator evolves over time. Translating a given implementation first to a mental model and then to a second simulator software for independent testing, opens for errors in both translation steps. We believe that while scientific productivity benefits from sharing simulation code through repositories such as ModelDB
It is also worth mentioning that the translation of a mathematical model into a computer program is lossy and irreversible. The translation is lossy due to the finite precisions of computers. For example, most real numbers cannot be represented on a computer. This is obviously problematic in the analysis of chaotic systems where small errors have a big influence on the state trajectories of the system. The translation is generally not reversible, because the commonly used programming languages are not accessible to formal analysis. It is generally not even possible to prove that a function, implemented in a common language such as C++, is correct. In some cases, one may even have to add equations to models in the computer implementation to preserve stability and obtain results in agreement with experimental observation
While mathematical model descriptions can be treated with formal methods, their computer implementations generally cannot. This means that if we want to validate the claims about a model, we must start from the description in the scientific publication. If we start from the model implementation of the authors, we can
We shall now sketch key aspects of neuronal network model descriptions: what is described where and by what means in the computational neuroscience literature? This will introduce the conceptual framework for the subsequent analysis of the papers given in
A complete model description must cover at least the following three components: (i) The
Neuronal network models are usually described by a combination of five means: prose (text), equations, figures, tables and pseudocode. We shall discuss these in turn.
Destexhe et al. 

Lumer et al. 

Tao et al. 

Vogels and Abbott 
The placement of model descriptions within a scientific publication depends on the focus of the paper and the journal it is published in. Traditionally, model descriptions were either given in the
We will now analyze model descriptions in the 14 papers listed in
Bar graphs show the percentage of papers describing (from top to bottom) model architecture, model connectivity and neuronal dynamics in the body text of the paper, the appendix, and in supplementary material. Many papers spread descriptions over several locations and are thus counted in several categories. For detailed data, see supporting material
Within the body text of the paper, model descriptions were placed in the “Methods” sections in 10 of the 14 papers surveyed, even though the neuronal network model is in itself a product of significant scientific analysis and synthesis
We would like to point out two interesting aspects of the placement of model descriptions. First, the text of a paper manuscript, including the appendix, undergoes thorough peer review and copy editing, ensuring high standards in content and presentation. It is not, at present, clear whether all material published as supplementary material receives the same scrutiny in the review process; it is often not copyedited to the same standards as the paper proper. Second, source code published in community repositories represents an implementation of a model, not the model itself
Incidentally, none of the 14 papers surveyed here describes reuse of neuronal models available in repositories, such as ModelDB
Bar graphs show the percentage of papers describing (from top to bottom) model architecture, model connectivity and neuronal dynamics using prose, equations, figures, tables, and references. Many papers combine several means for one purpose and are thus counted in several categories. For detailed data, see supporting material
All  Most  Some  None 
—  IE, KG, L, SE  HM  B, D, HT, HvH, M, TA, TR, VA, WS 
Network model descriptions in the literature show no consistent order of description. Among the papers surveyed here, six begin with a description of the neuron models and then proceed to network architecture, seven papers use the opposite order, while one paper mixes the description of neurons and network. We find the latter option least useful to the reader.
Authors differ greatly in their efforts to anchor their models in empirical data. Destexhe et al.
Among all papers surveyed here, only Destexhe et al.
We will now analyze in detail which difficulties arise in describing a network model, considering in turn network architecture, connectivity, and neuron models, and point out examples of good descriptions.
Descriptions of network architecture become challenging as network complexity increases. Networks with a small number of populations, random connectivity and no spatial structure are easily described in a few lines of prose, as in Brunel's paper
Complex models spanning several brain areas with detailed spatial, layered, and functional substructure, such as Lumer et al.
The most detailed explicit model studied here is the thalamocortical model presented by Lumer et al.
The most parsimonious interpretation of the description of the primary visual cortical area Vp given by Lumer
Another interesting aspect is that model composition is often described from a perspective orthogonal to the description of connections. Lumer et al.
Izhikevich and Edelman
Figures of network architecture vary widely between papers. We will discuss them in the following section together with connections.
Describing the connections well is the most challenging task in presenting a neuronal network model. For networks with random connections and no spatial structure, connectivity is easily described in a few sentences
May neurons connect to themselves?
May there be multiple connections between any pair of neurons?
Are connection targets chosen at random for a fixed sender neuron (divergent connection), senders chosen at random for fixed target (convergent connection), or are sender and receiver chosen at random for each connection?
Few authors are explicit on all these points, although these choices may have significant consequences for network dynamics (Tom Tetzlaff, personal communication; see also Kriener et al.
Models incorporating spatial structure have more complex connection patterns, which we will call
Mariño et al.
Among the papers surveyed, Izhikevich and Edelman
Paper authors draw network diagrams in quite different ways, both in the overall style of their diagrams and in use of symbols.
Diagrams of a model of the thalamocortical pathway drawn using diagram styles from (A) Hayot and Tranchina
Izhikevich and Edelman
There is no established standard for the order in which connections within a network are described. Some authors proceed from local connectivity (e.g., intracortical intralaminar) towards global connectivity
Neuron and synapse models are commonly described by a mixture of prose and equations, cf.
Spike generation and detection, including subsequent reset and refractory behavior, are usually described in prose, sometimes with interspersed equations. “
The previous sections have documented a wide variety of approaches to model descriptions in the literature. We believe that this variety is detrimental to the field, as it makes it difficult to communicate neuronal network models correctly and efficiently. At the same time, we believe that the field of computational neuroscience is too young to establish exacting standards for model descriptions. We will return to this problem and its various causes in the
We propose a practice with the following elements:
We will discuss these elements in turn below, followed by more detailed discussions about how to render specific aspects of a network model. As an illustrative example,
The model is summarized in panel A and detailed in panels B–F.
(A) Excitatory connections shown by full lines, inhibitory by dashed lines. Lines beginning with open semicircle and ending in filled circle indicate random convergent connections. (B) Double lines represent multiple connections, solid/dashed marks excitatory/inhibitory connections. Multiplicity of connections marked at line ends. (C) Same as B, but inhibitory connections marked with circles on target side instead of dashed lines. (D) Same as C, but displaying explicitly that there are
The model is summarized in panel A and detailed in panels B–I. See
See
(A) Overview diagram of connectivity between highlevel populations. Excitatory connections are marked by arrows, inhibitory connections by circles. Excitatory and inhibitory populations have been lumped in Tp, while Vp(v) and Vp(h) are composed of three layers of excitatory and inhibitory populations, as detailed in B. (B) Detailed diagram of connectivity within cortical population Vp(v), which is tuned to vertically oriented stimuli. Vp(v) is composed of three cortical layers, each with an excitatory (left) and inhibitory (right) subpopulation. Filled arrows mark excitatory, open circles inhibitory connections. Connections to and from corresponding horizontally tuned cortical populations in Vp(h) are shown as dashed lines; black lines show input from the thalamus. Connections to and from higher cortical areas are not shown. (C) Detailed rendition of connection masks and kernels projecting onto one cortical subpopulation Vp(v)LI(e) from panel B, i.e., the excitatory subpopulation of the infragranular layer of Vp(v). Squares show projection masks, gray shade the probability of a connection (black:
We would like to stress that we present the good practice here to stimulate the debate on model descriptions within the computational neuroscience community. If it is adopted widely throughout the community, it will provide numerous advantages: authors will have guidelines that will allow them to check their descriptions for completeness and unambiguousness; referees will more easily be able to assess the correctness and quality of a model; and readers will find it easier to comprehend and reimplement a model, and to compare different models.
Many journals require authors to organize their manuscript into the sections
Generally, a publication on a computational modeling study should provide the following information:
We suggest that authors organize their presentation according to these six points where possible. When publishing in a journal that requires a traditional organization of manuscripts into
The paper should be written such that readers who are not interested in model derivation and implementation can skip these sections to proceed directly from the model description to the analysis.
Many journals impose strict limits on the length of a paper, making it impossible to provide a full model description along with an elaborate model analysis. In this case, authors should consider to split their manuscript in two (or more) separate manuscripts: One describing the model, and the other describing the model analysis. The model paper should include the full description of the model but with the model analysis section reduced to only that information which is needed to validate the model and its implementation. In the analysis paper, authors can cite the model paper and reduce the model description to a brief outline of the model, using the tables proposed below. This should offer sufficient room to include a full account of the model analysis.
Where a companion paper is infeasible, authors should provide a detailed model description as online supplementary materials, although we see two disadvantages in this case: (i) Supplementary material might not be peerreviewed according to the same high standards as a separate model paper. (ii) Hiding the model in supplementary material deprives both author and model of the proper credit for the intellectual effort that went into the creation of the model.
Authors should be encouraged to make their model implementation available through community repositories under suitable licensing terms
Model descriptions should give the reader a good overview of the overall structure of a model. We suggest a description in prose accompanied by figures. The text should give an introduction to each composite part, i.e., stating the number of parts, their size, and what subparts they consist of. We recommend that authors concisely summarize the information for each part in standardized tables (see panel A in
Following the principle that models should be presented
Model composition
Coordinate systems and topology
Connectivity
Neurons, synapses, and channels
Model input, output, and free parameters
Model validation
Model implementation
Not all parts will apply to all models, but using such a checklist (i) ensures that all necessary information is included in the paper; (ii) allows referees to systematically check that all information is given; and (iii), facilitates the comparison with other models. We will address each of the items in the list below.
Past experience indicates that it is essential to review model descriptions after one has implemented a model
The
A good model description should list all populations of the model along with the used neuron model, their properties, their number, and how each population relates to the modeled system. Authors should name each population and use this name consistently throughout the manuscript. Some populations may be selections of neurons from other populations. In this case, authors should give explicit selection rules or equations.
Even for random selections, we recommend that authors explicitly define the actual range of indices used, to avoid formulations such as “we recorded from 50 randomly selected neurons”, when indeed a contiguous range of 50 neurons from an unordered population was chosen
The most basic is the
Many models have additional coordinate systems, e.g.,
For each coordinate system used, authors should state exactly how the coordinates are mapped to the index coordinates of the population. A good model description should also give explicit expressions for all distance functions used.
The description of the
Are all populations of pre and postsynaptic neurons defined?
Are all coordinate systems defined which are needed to select pre and postsynaptic neurons?
How are presynaptic neurons selected from a population?
How are postsynaptic neurons selected from a population?
How are boundary effects in topological connections handled?
If a pair of pre and postsynaptic neurons can be chosen more than once, is this connection allowed?
If the same neuron can be selected as pre and postsynaptic neuron, is this connection allowed?
How are the parameters (e.g., weight and delay) of a connection determined?
If random connections are used, provide the algorithm used to select the pre and postsynaptic neurons and to determine whether a connection is made.
Are all parameters of the connectivity explained and are their numerical values given?
A figure of the connections in addition to the textual description is of great help to the reader. Suggestions for how to draw connection diagrams are given below.
To describe the dynamics of
It is important to describe how the neuron behaves over time. For spiking models, the description should encompass how the neuron behaves before, during and after a spike is generated, e.g., state the spike threshold, set the refractory period and define if there is a potential reset. Since this part of a neuron model is often algorithmic, pseudocode or flowcharts may be an effective means of description. There should also be a description of the synapse type and its behavior, and the algorithms for the plasticity should be given.
By contrast, models in statistics are built around the concepts of independent variables (stimulus), dependent variables (response), and the free parameters of a system. A model is then a function that maps the independent variables onto the dependent variables, using the free parameters. We find this view helpful, because it makes the scope of a model explicit.
We suggest that authors explicitly list the independent and dependent variables of their model, along with all free parameters. A textual description of the stimuli accompanied by tabulated parameter values will suffice in most cases to recreate the stimuli. In addition, readers will benefit from a figure illustrating nontrivial stimuli, such as Fig. 1 in Hayot and Tranchina
The following checklist may help authors to compile all information for the model description. Most of this information is best placed in the tables, suggested below.
Describe the stimulus ensemble;
Describe which parts of the model are stimulated;
Describe exactly how the stimulus is applied;
Describe any scaling or normalization of the stimulus.
Describe which quantities are measured;
Describe exactly from which parts of the model measurements are taken;
Describe exactly how measurements are taken (e.g., specify the sampling rate of the measurements);
Describe how output quantities are computed from the measurements (e.g., firing rates from spiketrains).
Describe all free parameters of the model;
List the chosen values for each parameter.
These figures help readers who attempt to reimplement a network model to validate their implementation of the neuron models; Destexhe et al.
Testing that parts of a model behave as expected is an excellent way of reducing the chance of errors at a later stage, and is also known as
Authors should specify the
The following list may assist authors in compiling the required information:
Which software was used to analyze the model?
If third party software was used, list the name, version, and provider of the software.
If selfwritten software was used, provide sufficient information on the algorithms and numerical methods used, to allow reimplementation.
Consider making the simulation program/scripts available as supplementary material.
Which parameters, such as integration stepsize and accuracy goals, were used?
Which software was used to analyze and visualize the data obtained from the model?
If third party software was used, list the name, version, and provider of the software.
If selfwritten software was used, provide sufficient information on the algorithms and numerical methods used, to allow reimplementation.
Consider making the simulation program/scripts available as supplementary material.
Consider making your analysis scripts available as supplementary material.
To provide a full description of the network model, we encourage authors to detail each model part.
At present, it does not seem possible, or even desirable, to define precisely how these tables should be formed. Indeed, the reader will notice that we describe the connectivity in the Lumer et al.
For now, we have set up our tables pragmatically as follows:
The first table shall always present a concise
For each nonempty entry in the
These detailed tables shall in themselves be concise and be presented in the same order as the entries in the
The tables shall contain the names (or symbols) used for populations, connections or other model elements in the modeling paper.
When model components have been obtained from a model repository, or have a precise definition in a relevant online ontology, accession numbers or ontology reference shall be given.
The tables proposed here describe the
Diagrams are a powerful way of expressing relations between parts of a model. Authors should use diagrams to illustrate their model structure and to specify relations between the different model parts. A good model description should use at least one diagram, showing the overall structure of the model. Further diagrams can then be given to elaborate on details and different aspects of the model.
Diagrams should be precise representations of a model and its parts. To this end, we must use the graphical vocabulary of shapes, lines and graphical styles to convey as much detail as possible without sacrificing clarity.
To achieve their full potential, diagrams need to follow a common standard, so that readers can perceive and compare diagrams from different publications. We have seen earlier that there are currently no established rules for drawing diagrams of neural network models. At this point, we give some tentative suggestions only, as sketched in
Unordered populations are shown as circles;
Populations with spatial structure are shown as rectangles;
Pointed arrowheads represent excitatory, round ones inhibitory connections;
Arrows beginning/ending outside a population indicate that the arrows represent a set of connections with source/target neurons selected from the population;
Probabilistic connection patterns are shown as cutoff masks filled with connection probability as grayscale gradient; the pertaining arrows end on the outside of the mask.
We will return to the design of network diagrams in the
Communicating neuronal network models in scientific publications is a challenging task. We have demonstrated above that current publication practices are far from ideal. This has two unfortunate consequences: First of all, it hampers the critical, mutual assessment of published models. As a result, there is no tradition in the computational neuroscience community for scientists to crossexamine each others models thoroughly. The validation of models thus typically remains at the level of individual studies and publications, i.e., not as reliable as is desirable. Other fields, in contrast, have established the validity of their central models beyond any reasonable doubt—and with a clear understanding of their limits of viability—such as the central laws of classical and quantum mechanics, electrodynamics and statistical physics. A second unfortunate consequence of present publication practices is that neuronal network models are rarely reused by others, thus reducing the overall productivity of the computational neuroscience community. This second consequence follows to a large degree from the first, as few scientists would like to reuse models unless their validity was properly established; in addition, the lack of precision in today's model descriptions often makes reuse difficult.
The model survey presented here revealed a wide variety of approaches to describing the composition and connectivity of neuronal networks. We believe that this is, at least in part, due to a lack of common highlevel concepts for composition and connectivity from a modeling perspective. Developing such highlevel concepts describing, e.g., certain types of randomized connectivity patterns, is thus an important task for the computational neuroscience community. The challenge at hand is perhaps best clarified when trying to draw diagrams representing neuronal network models. Such diagrams have two aims: To give the reader an intuitive understanding of model properties central to the dynamics of the model, and to unambiguously provide the necessary detail to allow a reconstruction of a model. In the absence of a mathematical formalism for model specification, diagrams often seem better suited than prose to present unambiguous detail. Simple models, such as that by Brunel
Presenting complex models is even more challenging. In
Given the importance of comprehensible and precise model descriptions, it may seem surprising that no standards or good practices have emerged in computational neuroscience to date. Early proposals, such as the Neural Simulation Language
At present, two developments appear promising. NetworkML, which is part of the NeuroML project
Another reason for the lack of model description standards may be that computational neuroscience has to a large degree been an ancillary science, an appendix of electrophysiology: The vast majority of publications in computational neuroscience compares its modeling results directly to specific sets of experimental data. And even though models have driven the development in some fields of neuroscience
We have no doubt that model sharing will increase in computational neuroscience in years to come. This raises the question of what model sharing precisely entails. At the simplest level, models may be shared as simulator code. While this seems convenient at first, it carries significant risk, as any code is likely to contain errors, in particular errors that may surface only once an existing model is used in a different context than the one in which it was originally developed. Indeed, in at least one case, highprofile publications (outside neuroscience), had to be retracted after a subtle programming error was discovered in a widely shared scientific software
Establishing a new publication culture in computational neuroscience will require considerable effort within the community. We hope that the
We are optimistic that we are beginning to see changes towards more cooperation within computational neuroscience, as witnessed by several collaborative reports on neuronal network simulations in the last two years
In closing, let us return to the power of notation, as exemplified by the matrix notation in the
Network architecture description: placement and means. Each table entry gives the number of papers from
(0.27 MB PDF)
Network connectivity description: placement and means. The presentation is the same as in
(0.10 MB PDF)
Neuron and synapse model description: placement and means. The presentation is the same as in
(0.12 MB PDF)
We would like to thank Markus Diesmann and Sven Schrader as well as three anonymous reviewers for stimulating feedback on earlier versions of the manuscript and Kittel Austvoll for help in preparing figures. We are grateful to Mikael Djurfeldt for sharing his Connection Set Algebra manuscript with us prior to publication, and to our colleagues at Ås for feedback on table and figure design.