While a biological scenario may suggest a particular execution and interaction model, often it is a matter of style
and the availability of analysis tools that
determines the choice of model. If there
is any lesson to be learned from several
decades of research on concurrency
theory in computer science, it is that we
should not preach the use of any particular modeling languages or methods,
but the very notion of reactive modeling itself, and the freedom of choice it
offers through a wide variety of different
execution and interaction mechanisms.
Towers of abstraction. Every model is
necessarily a simplification of a physical situation. The modeler is interested in some, but not all, aspects of the
physical system. The key to modeling a
complex system is to design a simplification, such that ( 1) the behavior of the
model is correlated to behavior of the
system and ( 2) the model is amenable
to mathematical or computational
analysis. Point ( 1) measures models
according to their precision; point ( 2),
according to their performance. Precision must be sacrificed in order to gain
performance, but this must be done in
a quantifiable way.
Computer science offers a very rich
and useful theory, called abstraction,
for trading off precision against performance in a principled manner.
17
The theory of abstraction is used in
computer science very beneficially in
work on verification and testing, and
is aimed at relating models of different precision. It thus differs greatly
from theories of approximation, which
measure the precision of a model in
terms of an error bound on how much
a model may deviate from the system. A
theory of abstraction, by contrast, measures the precision of a model in terms
of which properties of the system are
preserved in the model—hence the relevance to verification.
Consider, for example, the property
that event A is never followed by event B.
A model may preserve such a property,
despite possibly introducing a very large
error. On the other hand, even a model
that introduces only a very small error
may violate the property when the actual system does not. The preservation of
properties can ensure that it suffices to
check a property on the model (simple)
in order to conclude that it holds for the
real system (complex). This principle
Verification can
become very
expensive, or
impossible, for
human-made
systems, and
biological systems
are often even
more complex.
the good news
is program and
system verification
has made
enormous strides
in recent years.
lies at the heart of all hardware and software design. Modern computer systems
could not be built without several layers
of abstraction—the gate-level abstraction of the underlying physics (
transistors); the register level; the machine
instruction level; the programming language; among others.
In analogy, a biological system may
be viewed at many different levels,
ranging from the molecular level to
the cell level to the level of organs and
entire organisms. The power of an abstraction layer derives from the fact that
all lower-level details may be omitted
from consideration. For example, when
designing a logical circuit from Boolean gates, the designer does not need
to know about voltages and capacities.
Different layers may exhibit different
scales in space and time, even switching between continuous and discrete
scales (for example, continuous voltages representing Boolean values). By
contrast, in biology, we have not (yet)
been able to identify building blocks
from which we can explain metabolic
pathways and cell behavior without referring to the underlying biochemical
(molecular) mechanisms.
In multiscale reactive systems, an ad-
ditional characteristic phenomenon is
the emergence of new high-level proper-
ties. An emergent property is a behavior
of the system that is not easily expressed
at a lower scale. Life, for example, is an
emergent property; none of the compo-
nent molecules of a cell are alive, only
a whole cell lives. The cell as a whole
emerges only when we zoom out, so to
speak, reaching the scale at which it
functions as an object with its own inter-
actions with other cells and molecules.
Thus, interactions at one scale create
new objects at a higher scale, which
is the essence of emergence. Quoting
from Cohen and Harel,
16 “A major goal
of systems biology is to learn how the
concurrent reactions and interactions
of the lower-scale components of a cell,
organism, or society generate emergent
properties visible at higher scales and
higher layers of reality.“
All this leads to the need to be able
to observe and manipulate biological
systems on multiple scales. Abstraction
can work wonders here, and if carried
out multiple times we get a tower of ab-
stractions. A unique feature of software
that helps in handling multiple scales