Entailment: downward and upward

overratedbeltAI and Robotics

Nov 25, 2013 (3 years and 7 months ago)

146 views

1
/
52


E
ntailment
:

downward
and
upward


Contents

A.

Introduction

................................
................................
................................
................................
......

2

1.

The computational turn

................................
................................
................................
................

3

2.

S
oftware developers stand on firmer foundations than engineers

................................
..............

3

3.

What this paper is about

................................
................................
................................
...............

4

B.

Abstractions and implementations in computer science

................................
................................
.

5

1.

Computer programs: what people in my field work with

................................
.............................

5

2.

Computer programs have both a static and dynamic aspect

................................
.......................

5

3.

A computer program organizes the computational capabilities of a machine so that a desired
computation will result

................................
................................
................................
.........................

6

4.

Implementing a computation defined in one formalism in terms of another

.............................

7

C.

Emergence

................................
................................
................................
................................
......

10

1.

Emergence without the mystery

................................
................................
................................

11

2.

Strong emergence

................................
................................
................................
.......................

13

3.

Emergence summary

................................
................................
................................
..................

15

D.

The s
pecial sciences

................................
................................
................................
........................

16

1.

The special sciences and their relation to physics

................................
................................
......

16

2.

More about why there is something besides physics

................................
................................
.

21

3.

Do the laws of physics entail all other laws?

................................
................................
..............

25

4.

Summary position on the special sciences

................................
................................
.................

30

E.

Downward causality and downward entailment

................................
................................
............

31

1.

Introduction to downward causation

................................
................................
.........................

31

2.

A better way to look at downward causation

................................
................................
.............

38

F.

What have we said?

................................
................................
................................
........................

43

Refere
nces (some of the following are not cited and should be removed)

................................
...........

44

Appendix 1: An introduction to higher level entities

................................
................................
..............

50

Appendix 2: The first two definitions of causality in Ellis (2012)

................................
............................

51




2
/
52


Abstract.
The
re is near universal agreement that the

fundamental laws of physics are sufficient to
explain
all observed phenomena

i.e.,
that
nature is causally closed.

Downward (or top
-
down) causation
does not fit within this paradigm. Yet
like a zombie idea, it

refuses to die.
After
reviewing basic issues
pertaining to
causality, emergence, and the autonomy of the laws of the special sciences, I argue that
the apparent
paradox

is overblown

and appears to
be
the result of
confusing

analysis and synthesis
.

I
explain why e
mergence and the special sciences are central to understanding how the world works

and
why

t
he

laws of the special sciences

are
autonomous.
A key idea is
that the special sciences characterize
domains that are autonomous in their functioning
but

limited by the requirement that they
be

implemented within a world governed by physics.
An examination of how a modern
-
day Laplacian
demon also demonstrates the nee
d for the special sciences.
A
simple and
clear
-
cut example

(
from

outside the
realm

of physics)

is that the Theory of Computability is autonomous of the rules governing
the Game of Life
. Yet

it is possible to implement a Turing machine
(as an emergent phenomenon)
on a
Game
-
of
-
Life grid. Furthermore, the possibility of that imple
m
entation entails the undecidability of the
halting problem for the Game of Life
, thereby illustrating downward entailment

but not downward
causation
.
Methodologi
cally t
his paper
shows how modes of thinking
from

computer science
can apply
to problems in philosophy
, thereby illustrating “the computational turn
.



A.

Introduction

Question:

w
hat do emergence,
downward causation, and
the relationship between
physics and
t
he
special sciences have in common?

Answer:
the multi
-
level

mystery.

Fodor (1997)
famously
put
the special science
s

version of th
e multi
-
level

mystery

like this
.


The very
existence

of the special sciences testifies to reliable macro
-
level regularities t
hat are realized by
mechanisms whose physical substance is quite typically heterogeneous. Does anybody really doubt that
mountains are made of all sorts of stuff? Does anybody really think that, since they are, generalizations about
mountains
-
as
-
such won't

continue to serve geology in good stead? Damn near everything we know about the
world suggests that unimaginably complicated to
-
ings and fro
-
ings of bits and pieces at the extreme
micro
-
level manage somehow to converge on stable
macro
-
level properties.

On the other hand, the 'somehow' really is entirely mysterious. [
Why should there be (h
ow could there be
)
]
macro
-
level regularities at all in a world where, by common consent, macro
-
level stabilities have to supervene
on a buzzing, blooming confusion of mi
cro
-
level interactions
?



So, then,
why is there anything except physics
? … Well, I admit that I don't know why. I don't even know how
to
think about
why.
I expect to figure out why there is

anything except physics

the day before I figure out why
there is

anything at all.




The world, it seems, runs in parallel, at many levels of description. You may find that perplexing; you certainly
aren’t obliged to like it. But I do think we had all better learn to live with it.

3
/
52


I am not a professional philosopher
.
My PhD is in Computer Science, and I teach in a Department of
Computer Science.
1

I don’t find a world that runs on many level perplexing, and I don’t not like it. In fact,
I like it a lot.
In this paper I

ll explain why

and why that might be of interest to

philosophers.

1.

The computational turn

The International Association for Computing and Philosophy
(IACAP)
defines it
s

mission as promoting
“scholarly dialogue on all aspects of the computational/informational turn and the use of computers in
the service of

philosophy.”
2

What is the “computational turn?” My sense is that it has to do with how we
computer scientists tend to think.

Well, how do we think?
Overwhelmingly the task of software development is to
create

new abstractions
and then implement those abstractions as software
by putting
together
already implemented software

abstractions.
An example familiar to nearly everyone is a word processing program

such as Microsoft
Word
.
3


Word processors

offer users the ability to
create

and manipulate
documents
. They offer this
capability my making available

the use and manipulation of

abstractions such as words, paragraphs,
footnotes, sections, etc.

A

software developer
has two important tasks. One
is to understand
and

to

clarify
what
the important
abstractions
are in

a domain

i.e., how the potential users of her software
-
to
-
be think
s
. The second task
is to write software that implements those abstractions and
gives
those
potential users access to
operations on them. These implementatio
ns are created by putting together existing abstractions such
as those defined by programming languages and software libraries.

2.

Software developers
stand on firmer foundations than engineers

Much of what I said
about creating and implementing abstractions

applies to engineers as well as
to
software developers.
Engineers
,

too
,

create
products

that embody
new abstractions

and functionalities
.
And they do it

by putting together
components

that
provide

existing
abstractions.


Smart


phones offer
many examples.
A

nice
one

is the

smart phone’s

ability to re
-
orient
its

display (portrait or landscape)
depending on how the phone is held.
How do engineers get phones to do that? They
use

a

pre
-
existing
device
, the small
-
scale accelerometer,

which had been developed
for
and has a wide range of uses in
industr
ial and commercial products
. One of its more familiar uses is

in game controllers

such as the

Nintendo Wii.

An accelerometer in a game controller can tell the software in the controller
a
bout

the
user
’s motion
. When the user swings
her arm

as if
holding

a tennis racket, the controller can display a
picture of someone swinging a racket in a way that parallels the user

s movements. In a smart phone,
the accelerometer is used much more simply

to let the software in the phone know how the phone
was moved and how it is oriented.

The point is that

a device whose functionality had been used for one
purpose is now used for another.





1

I have had a long
-
standing interest in questions on the boundary of Computer Science and Philosophy and have
presented and published

papers in this area, for example (Abbott, 2008, 2009, 2010a, and 2010b).

2

From the mission page of the IACAP website:
http://www.iacap.org/about/the
-
mission
-
of
-
the
-
iacap/
.

3

One might make the same amazed observation about Microsoft Word as Fodor did about mountains.
Unimaginably complicated to
-
ings and fro
-
ings of bits

although perhaps not pieces

in a computer manage
somehow to converge on Microsoft Word.

4
/
52


Software developers have an

important advantage over engineers
.
4

W
e
need
not be concerned about
the
reliability

of

our

primitives. The lowest level software element is the bit. It is an atomic ideal. It
cannot be decomposed into smaller elements
, and

it cannot wear out
.
As far as software developers are
concerned, bits a
re forever
; y
ou can’t break a bit.
Engineers have no such solid foundation. When
building something they must always be concerned about whether the
components are appropriate for
the
application of
the device.
This is not a trivial issue; there is no
a priori
limit to the depth of analysis
required to

provide th
e

assurance

that the components will work when the device is put to use
. For
example,
there are many different types of accelerometers. Some are quite rugged; others fail when not
in a laborator
y environment. In addition, there is trade
-
off between accelerometer size and sensitivity.
Larger accelerometers are better at sensing smaller movements, but heavier mobile phones don’t sell as
well.
For example, see (
Lally,
2005). Issues of

th
ese sorts
re
quire

engineers always
to
be looking down

toward the

physical

foundations
of the devices they use
as well as up toward the new abstractions

they
are building
.
Only s
oftware developers
and God
5

can be secure in
the certainty of
their
knowledge

of the
fundam
ental elements of their universes
.

(See
(
Abbott
,

2010a)

for additional discussion.)


3.

What this paper is about

Because
our job is the creation and implementation of abstractions
, we

software developers

are
typically skilled in understanding both (a)

what it

means to define new level
s

of abstraction and (b)

what
it takes (and whether it is even possible) to
implement

those new abstractions in terms of existing
abstractions.
Because we do this work in a world with an indestructible primitive, we are free of
worries
about the strength of our foundations

and can focus exclusively on abstractions

and relationships
among them
.

One of my goals in this paper is to apply
our approach to

creating

and embodying abstractions to
philosophical issues.
I
n particular, I’l
l explore abstraction and implementation in emergence,
in
the
special sciences
,

and
in
downward causation.
6

I’ll
also
have a number of other things to say about these
areas. In particular, I’ll be dismissive of strong emergence

and eventually of emergence
in general. I’ll
propose a way of settling the
debate about

whether the laws of physics entail the laws of the special
sciences, and I’ll suggest downward entailment as
a better
conceptual framework

than downward
causation

for understanding
some of the app
arent consequences of
the multi
-
level mystery.

A disclaimer
: a
lthough the multi
-
level mystery is often associated with

the theory of mind, this paper is
not about mind or consciousness. I don’t believe we know enough about consciousness to be able to say
anything useful

about it

other than that it’s a puzzle we have hardly begun to
unravel
.





4

Confusingly softw
are developers are often referred to as software engineers.

5

Analogy suggested by Debora Shuger, private correspondence. She cited Barkan (2013, p 13) for a discussion of
Plato’s transmutation of the “public craftsman,” i.e., engineer, into an equivalent

for God.

6

The terms
downward causation

and
top
-
down causation

are often used synonymously in the literature. My
preference is for
downward causation

because it does not imply that one is starting from a top
-
most point

as
top
-
down
<anything>

would
.

Howeve
r, one of the primary references for this paper uses

top
-
down causation

rather than
downward causation
. I will use the two terms interchangeably and intend no difference between
them.



5
/
52


B.

Abstractions and implementations in computer science

As background for the rest of this paper, I
want to spend a brief time reviewing

abstraction and
implementation in

computer science.

1.

Computer programs: what people in my field work with

For those of us who spend our professional lives in the field of computing, the primary object of study is
the computer program. I had a hard time writing that sentence because the te
rm
computer program

sounds like it describes such a pedestrian object, hardly a work of intellectual depth and sophistication. I
could have written
software
, but that’s no better. Yet it is computer programs that we deal with, both as
developers and theori
sts.

Theoretical computer scientists

those who study computability

may talk about Turing machines, but
since any Turing machine can be understood as a program to be executed by a universal Turing machine,
a Turing machine is really just a computer program
. The same can be said about those who study the λ
-
calculus and related formalisms. These too are really programming languages

which allow one to write
computer programs, which can be run on λ
-
calculus abstract machines. So we are stuck with the fact
that
computer scientists study computer programs.

2.

Computer programs have both a static and dynamic aspect

Computer programs must be understood from two perspectives: as a static expression of a computation
and as the dynamic process that
i
s the described compu
tation. Issues related to programs as static
objects derive from their status as expressions in a language.
T
he semantics of a programming language
determines what one can say about the process a program describes. The primary issues involve
(a)

control st
ructures (what one can say about how the process proceeds)
,

(b)

data types and
data
structures (what one can say about the elements the process operates on)
, and (c)

modularity

(
the ways
in which the language allows programs to be decomposed into what will

be interacting dynamic
components.
7
)


Issues related to programs as dynamic processes span the range from theory to practicality. There are
theoretical questions such as whether the program
-
as
-
process will ever terminate. There are questions
that are both

theoretical and practical such as how long (as a function of the size of the input) the
program
-
as
-
process

will take to terminate

assuming we know that it will. There are abstract questions
such as how
to

describe the dynamic structure of the program
-
as
-
p
rocess as it runs. And there are more
practical questions such as what will it be like for the program
-
as
-
process to interact with the rest of the
world, including both
the
people
it may encounter
and devices

the

it may monitor and control.

Computer scienc
e is not the only discipline whose products have significant static and dynamic aspects.
Others include music, theater, film, and many (perhaps most) engineering specializations. For them as
for us what is generally produced is a static product (a)

whose s
tatic properties are important but
(b)

whose primary value is as a dynamic process.
Even though p
eople in these fields spend
most of
their



7

A software component is typically a description of a (parameterized) template for a more
-
or
-
less self
-
contained
process which can be instantiated and included dynamically during a program’s overall course of action.

6
/
52


time producing static objects

a computer program, a script, an automobile, a computer, etc.

the
primary value in thos
e static objects inheres in their performance as a process.

This is an especially important point to keep in mind
about computer programs
. Since the static
products we produce

are symbolic
,
it’s easy to ignore their
dynamic

aspects and to imagine that their
static properties are their most important features. To do so would

be a mistake. As symbolic objects,
computer programs may look like mathematical objects; it is even possible to analyze computer
programs as mathematical

objects; but what’s most important about computer programs is that they
describe processes. These processes occur in time and do something in the world

namely, they
perform computations.

My impression is that philosophy tends to be interested in expressi
ons in formal (and even informal)
languages
primarily
as predicates,

i.e.,

statements with a truth value.
A computer programs is not a
predicate (or a collection of predicates). A computer program is a recipe for
a

perform
ance
, i.e. for a
computational pro
cess.
8

It’s important not to think about it as one would about a predicate.


3.

A computer program organizes the computational capabilities of a machine so that a
desired computation will result

What does it mean for a computer program

hereafter program

to be

a recipe for how something is
to be computed? The job of a program is to build a bridge between two things: the machine for which
the program is written and a desired computation. Whether one is programming a Turing machine, a λ
-
calculus abstract machine,
9

or something else, the raw material with which one starts is the
computational capabilities of a machine. So, what is a machine?

The standard definitions of
machine

typically refer to devices that apply power mechanically in the
service of a task. Of cou
rse, that’s not what
machine

means

in computer science. Informally, a machine
is an abstract, virtual, or concrete object
10

that is capable of being in any of a number of states and for
which there are rules that determine how it transitions from state to s
tate. Of course this can be
expressed formally

and it has been

but what I’m trying to get at is the intuition behind the formalism.



8

That’s true even
for

so
-
called declar
ative languages.
P
rogramming languages are often placed on a
declarative/imperative

scale.
λ
-
calculus is declarative since it allows one to define functions as compositions of
other functions.
Since any sound evaluation strategy will yield the same result
step
-
by
-
step instructions for
evaluating those expressions are not provided. The same is true about logic programming languages such as
Prolog.
Turing machines are imperative
. T
hey are programmed by describing how they are to change from state to
state as
a

computation progresses. In either case
, though,

a computation occurs when the program is run, and it’s
what
the

comput
ation produces

that matters.


9

The first and most influential λ
-
calculus abstract machine was the SECD machine. See (Landin, 1964) and

(Danvy,
2003).

10

We frequently talk about abstract machines, virtual machines, and physical machines. An abstract machine is
one defined through a formalism. A physical machine is one that exists physically. A virtual machine is a software
implementation
of an abstract machine.

7
/
52


For our purposes what is most important is that a machine transitions from one state to another.
11

The
sequence of states thr
ough which a machine transitions defines a process.

What are the computational capabilities of a machine.
The transition rules
that determine how a
machine may move from one state to another
are the machine’s computational capabilities. At each
step, by a
pplying a rule the machine performs
a small

computation. The job of a program
12

is to direct
and control that process by directing and controlling the application of the machine’s rules.

So our fundamental notions are (a)

a machine that is capable of
performing computational operations as
it transitions from state to state and (b)

a program that directs and controls those transitions

and
thereby

defines a computation.

4.

Implementing a computation defined in one formalism in terms of another

So far we ha
ve
mentioned

two kinds of
abstract
machines: Turing machines and λ
-
calculus machines.

The computational capability of a Turing machine is its ability to transition from state to state and in the
process to read and write symbols on an unbounded tape. One p
rograms a (universal) Turing machine
by creating a tape with some initial contents and then setting the machine loose on it. The state
transitions made by a Turing machine

read the symbol on the tape cell under its read head,
change the
state of its finite

automaton, write
a symbol
on
that

tape

cell
, and move its read/write head

are all
very low level. Each does very little computing. The order in which these operations are performed is
rigidly determined.

The computational capability of a λ
-
calculus abstr
act machine is its ability to reduce, i.e., evaluate,
arbitrary λ
-
expressions. One programs a λ
-
calculus abstract machine by writing a collection of λ
-
expressions and setting the machine loose on them. The state transitions made by a λ
-
calculus abstract
ma
chine

substitute a value for a variable, replace an expression with a value

are higher level. Each is
a significant step in the process of expression evaluation. The order in which these operations are
performed is more flexible. They may be done as needed

(called
lazy
) o
r

as encountered (called
strict
).

A λ
-
calculus abstract machine is in some sense smarter and more flexible than a Turing machine. It
allows its programmers to write programs on a higher level (λ
-
expressions) than that required by Turing
mac
hines (tables of state transitions). Even so, we know that the λ
-
calculus and Turing machine
s

are
computationally equivalent. For every program one can write using either formalism, it is possible to
write a program in the other formalism that performs an
equivalent computation.




11

There is some ambiguity in the notion of state. For a Turing machine, for example, the term
state

is used to refer
either to the state of the finite automaton that the machine’s transition rules direct or to that state along with
the
contents of the machine’s tape and the position of the read head on the tape. Normally it is clear which sense of
state is intended.

12

There is a second ambiguity, which can also be illustrated by considering Turing machines. By a Turing machine
progra
m one may be referring

either

to the machine’s transiti
on table

or to the initial content of the machine’s
tape. A program in either sense can be understood as directing and controlling how the machine transitions from
one state to another. This is especia
lly clear in the case of a universal Turing machine, where the initial content of
the tape specifies the state transitions of the Turing machine that the universal machine is running.

8
/
52


Program consisting of λ
-
捡c捵cu猠V硰牥x獩VnV

Executed by a λ
-
c慬捵汵猠慢獴牡捴 m慣a楮e

周攠呵物ng m慣a楮攠prog牡m
捯mpu瑥猠瑨攠Wam攠晵n捴con⁡猠
the λ
-
calculus expressions.


Program consisting of Turing machine transitions

Execu
ted by a Turing machine



It’s worth looking at that a bit more closely. Suppose I write a program using the λ
-
calculus. What we
just said is that we can write a Turing machine program that performs an equivalent computation. In
writing such a Turing
machine program we are tying together two abstractions: the computation defined
by the λ
-
calculus

program and the computational abstractions defined by the Turing machine. Another
way of putting this is that we are implementing a λ
-
calculus
-
specified compu
tation on a Turing machine.

One way to demonstrate
that two formalisms are computationally equivalent

would be

by
implementing not just
each

program in
one

formalism
as a program in the other
but
by implementing
each
formalism in terms of the other.

The
diagram below shows a Turing machine program that
implements the λ
-
calculus abstract machine. In fact, to implement the λ
-
calculus abstract machine on a
Turing machine would be very complex. The equivalence of Turing machines and the λ
-
calculus is
generall
y proven by showing that each can compute the same set of functions as the other. For our
purposes here, though, let’s imagine such an implementation.


The

λ
-
捡汣c汵猠慢獴牡捴cma捨cne

周攠呵物ng m慣a楮攠prog牡m
implements the λ
-
calculus
abstract machine
.


A Turing machine program that
implements

a λ
-
捡汣c汵猠慢獴牡捴 m慣a楮e

䕸N捵c敤⁢礠a⁔u物rg m慣aine


佮捥O
we have a λ
-
calculus abstract machine running as a Turing machine program we know that simply
by giving
any
set of
λ
-
calculus
expressions to that

Turing machine
it will perform that λ
-
calculus
computation
.

9
/
52


This, in short, is the sort of thing software developers spend their time doing. A software developer is
given a description of a desired computation

much as we were given a description of a desi
red
computation as a program in the λ
-
calculus

or even the λ
-
calculus abstract machine
. It’s the
programmer’s job to write a program in some programming language that performs that computation

much as we said we could write a Turing machine program to
perform an equivalent computation. Of
course software developers write their programs in more sophisticated programming languages
13

than
Turing machines. But the idea is the same.

This has been perhaps a long way of saying that the job of a software devel
oper is to write a program
that puts together the computational capabilities of a
given
machine in such a way that it will perform a
specified
computation. Both
sides

of
such a
computation

are given as abstractions. The desired
computation is given as an a
bstract description
, e.g., a program in the λ
-
calculus
. The available
computational capabilities are described in terms of operational abstractions that the machine can
perform
, e.g., those of a Turing machine
. So one can say that the job of a software dev
eloper is to
implement one abstraction in terms
of
other
s
.

More generally
,

software developers build bridges between what are often referred to as layers of
abstraction. The lower layer is generally not solely the computational capabilities of a machine.
It usually
includes additional computational capabilities
organized

as a library. The higher level, the computation
being implemented, is generally not what one thinks of as a bare computation. As discussed earlier, the
computation being implemented may be

something like a word processor, which is described in terms a
significant number of abstractions.

A program describes a process in time. As the machine it controls transitions from state to state, one
can think of it as an animation

much like an animate
d film, which transition from the state represented
in one film cell to the state represented in another.
An implementation is therefore a way to animate a
collection of abstractions. Jeanette Wing
14

(2008) describes it this way.

The essence of computationa
l thinking is abstraction. … The abstraction process introduces layers. In
computing, we work simultaneously with at least two, usually more, layers of abstraction: the layer of interest
and the layer below; or the layer of interest and the layer above. …
Computing is … all about making
abstractions come alive!


Does
comes alive

seem too breathless? Of course Wing is not talking about biological life.
S
he is talking
about the
way in which

programs such as Microsoft Word respond to user actions depending on
both
the specific action the user takes and the abstraction on which that action is performed.
Clicking inside
the text
of a document
positions the cursor. Clicking a style button
sets

the style of the paragraph where
the cursor is positioned. Dragging sel
ected text cuts the text from one place and pastes it somewhere
else. Dragging
a tab or margin indicator on the ruler, changes a tab or margin.
A computer program



13

A programming language defines a machine whose computational capabilit
ies depend on the semantics of the
language. There are a number of formal ways to define the semantics of a programming language. The two most
widely used are denotational semantics and operational semantics. (Simpson, 2012) has an introduction.

14

Jeanette

Wing is the
President's Professor of

Computer Science at Carnegie Mellon University. Wing

(
2006)
argued that what she called
computational thinking

had much to offer those outside computing and should be
taught to everyone.

10
/
52


makes abstractions come alive in the sense that the

program
respond
s

to user actions in
ways
that are
semantically meaningful

for that abstraction
.

The point here is that those of us in computers science spend most of our professional lives thinking
about implementations of abstractions. As a consequence we find the notion quite familiar.

I will h
ave
more to say about this in the section on the special sciences.

A word about
implementation

vs.
realization
. In the philosophical literature the term
realizes

is used in
much the same way as
implements

is used in software. In both cases one is talking a
bout a concrete
embodiment of something that has a functional description.

A difference, though, is that

i
mplement

implicitly incorporates a sense of intentionality whereas
realize

doesn’t. A software developer
deliberately implements some ideas as software. Nature realizes some (apparent) functionality with no
intentionality involved.
That doesn’t make a naturally occurring realization of an abstraction less faithful
to the abstrac
tion than a programmer
-
produced implementation.
Although nature is not intentional, a
naturalized version of
function

is useful for understanding how evolution produces the complex
(apparent) functionality it does. Either way, whether an implementation/rea
lization is explicitly
intentional or not the result is a concrete embodiment of a domain that can usefully be characterized
abstractly.

C.

Emergence

Emergence has been on the philosophical stage for over a century and a half. McLaughlin (1992) traces
it

ba
ck to work by Mill in the mid
-
19
th

century. I
n
c
omputer
s
cience
emergence

i
s

one of
a

web of ideas
associated with complex systems.
15

O’Connor

and Wong (2012)

characterize

it this way.

[E]mergent entities (properties or substances) ‘arise’ out of more funda
mental entities and yet are ‘novel’ or
‘irreducible’ with respect to them.


Each of the quoted terms is slippery in its own right, and their
specifications yield the varied notions of emergence.


E
mergence appears to be something of a free lunch. Put a bu
nch of familiar things together and
something new (and surprising and interesting and
perhaps even
useful) may pop out.

In the late 20
th

century
e
mergence

seemed to represent all that was good about complex systems
. T
he term became
very popular.
H
owever, by the
turn

of the century

the term
complex systems

itself had become so
overused
and

the language associated with it
had become

so
faddish
that
many
terms in the field

had
lost much of
their

meaning.

E
mergence

had become more of a buzzword than a
tool for clear
communication
, and

I stoppe
d using it

although I’ll relent for this paper.

In the philosophical literature
, however,

emergence

has
had another fate.
It has

been mercilessly
sliced
and
diced to the point that I hardly recognize some of
its

us
es. The primary divisions are weak and
strong emergence. But there is also nominal emergence, pattern emergence, synchronic and diachronic
emergence, static and dynamic emergence, epistemological and ontological emergence, various
combinations of these, an
d
probably
others
of

which I am
not
aware. I would like to step back from all
that and take another look.




15

Other ideas related to complex systems include agent
-
based modeling, evolutionary processes, and various
network topologies and effects.

11
/
52


I have always thought that what was most important about emergence was the idea that a new and
conceptually autonomous domain can be created from e
lements that have nothing to do with that
domain. To take
one of the standard

unity
-
of
-
science example
s
, biology

emerges


from chemistry,
yet

the study of biological phenomena is in many ways autonomous of chemistry.
In particular, t
he most
fundamental id
ea in biology

evolution through diversity and selection

has no counterpart in
chemistry

and cannot be expressed using concepts from chemistry
.
16


It also bec
a
me clear to me that what software developers do for a living

is

to produce emergence. As a
result, emergence
should no longer seem mysterious. As I’ll explain in the next
section

I believe it can be
understood

without
the

detailed
philosophical
analysis

it has received
.


1.

Emergence

without the mystery

In software the t
erm
conceptual model

refer
s

to the collection of ideas that define how
a

software
application operates. Consider the example of a word processor mentioned earlier. Its conceptual model
is essentially what its
Help

system says about it. The
Help

system desc
ribes the program in terms of the
abstractions that are relevant to how the user thinks about what the program can do.
17

These
abstractions

e.g., words, documents, tabs, rulers, ribbons, styles, formats, tables of contents,
footnotes, possible errors (indic
ated, perhaps, by red underscores), etc.

refer to types (e.g. paragraph),
relations (e.g., orphan
-
line rules for how paragraphs should be formatted on pages), and operations
(e.g., how one can change the default settings for those rules
, or drag a selected

piece of text from one
place to another,

or correct a spelling error).

Standard (and best) practice in software development is to define a conceptual model independently of
how it has been or will be implemented. Imagine writ
ing a
Help

system before star
ting to write the
program that it describes and then writing the program to be consistent with what

the
Help

system says.
In other words, a conceptual model is autonomous of and often precedes its implementation.

The autonomy of some collection of entitie
s, properties, etc. from the elements from which they “arise”
is, of course, one of the distinguishing features of so
-
called emergent phenomena. In the case of
software, the elements from which software “arises” are the things one can write in a programmin
g
language. The conceptual model “arises” as an autonomous phenomenon when the programmer puts
those elements together in the right way.

Admittedly the creation of something new from something old is in some ways magical. How is it
possible to build a wor
d processor by putting together lines of code in a programming language in which
no word processor

concepts

are defined? Yet we do this sort of thing all the time. In fact every creative
act

the composition of music, the authoring of a work of fiction, the

construction of an architecturally
original building, the evolution of a species with a new way to survive in the world, etc.

reflects that
same miracle. Human beings and nature both do it.
It is this sort of constructive creativity that I think is
import
ant about emergence. C
reati
vity may be mysterious; i
mplement
ation is
not.
A longer discussion is
available in Abbott (2010b).




16

Of course we now know

although Darwin didn’t

that evolution depends on DNA, which is understood
chemically, but that
’s a matter of implementation, not conceptualization.

17

Or at least how the software developer thinks the user thinks.

12
/
52


Although we often speak as if emergence is about higher
-
level elements emerging from lower
-
level
elements, that’s not always the c
ase. N
ot all emergent phenomena are implemented in terms of lower
level elements. The (emergent) lifecycles of parasites

and there are probably as many species of
parasites as non
-
parasites

are built
from

elements that are macro to their micro.
Cordyceps

is
a
particularly interesting example.
Cordyceps

is
a species of fungus that infects a species of ants. Infected
a
nt
s (are somehow induced by the fungal infection to) climb up and

“clamp onto a leaf vein about 25
centimeters off the ground

a
spot where th
e humidity and other conditions may be ideal for a fungus
to grow.”

(Zimmer 2011) Once the ant clamps onto a leaf, the fungus attacks the muscles that would
allow the ant to release its grip

dooming it to stay clamped onto the leaf. The fungus then produce
s a
stalk, which releases fungal spores, which drift to the ground below and infect other ants.


Cordyceps
, like every parasite, exploits its host

resources for its own needs.
But
Cordyceps

exploits

it’s
hosts functionality

e.g., the ability to climb a pla
nt
stem
and clamp onto a leaf

and

unlike most
parasites,
it doesn’t use its host
as a

primary source of

nourishment
.

Cordyceps
’ lifecycle is emergent; it
didn’t exist before
Cordyceps

invented it
.

(Of course that’s true for virtually any species. But the
C
ordyceps

lifecycle
is unusually distinctive.)
I
t is fairly easy to explain
Cordyceps
’ life cycle. T
he
explanation is in terms of both higher and lower level elements. The higher level elements are plants
and ants and their properties and behaviors. The low
er level elements include the biochemical reactions
that result in the observed ant behavior.
So
Cordyceps

implements its strange life
-
cycle by putting
together the capabilities of both higher
-
level and lower
-
level elements.


I want to emphasize that
Cordyceps

relies on the

macro
properties

of ants and plants
.
Cordyceps

doesn’t
use ants simply as biochemical fuel as many decomposer

s
pecies

do.
Cordyceps

relies on ants ability, as
ants, to climb plants
,
as plants. For this step in its life cycle it
n
eed
s a
way

to position itself about 25
centimeters above the ground. It uses the macro properties of ants and plants to do this. It also needs a
stable platform while it grows its stalk. Again it uses the macro properties of ants (their mandibles and
disabled

muscles) and plants (their leaves) to achieve this.
Although
Cordyceps

is quite micro compared
to ants

and plants
, it buil
ds

its (emergent

micro
-
level
) lifecycle upon the macro
-
level properties of those
macro
-
level entities.

Although it is not always the case that an emergent macro is built on a base of the relative micro, what
is always the case is that if the emergent phenomenon is biological or social, it requires a source of
energy to persist. That source of energy must co
me from its “base,” i.e., the elements from which it is
built.
Cordyceps

relies on energy supplied by ants to run its life cycle. So emergence is not always micro
to macro, it is always from energy source to energy expense. (See Appendix 1 for a discussion

of entities
and energy.)

Engineers engage in similar pursuits.
As we said before
smart phones

are

built by engineers
. Many of
their components are pre
-
existing, but t
he

phone’s

properties and functionalities are new. The phone
itself is as emergent as any
thing one can point to. But of course their functionalities can all be explained
in terms of the properties and functionalities of their components.
Like
Cordyceps
,
the “base


from
which
mobile phones


arise”
include
elements that cannot be said to be micro to their macro. The
telephone system itself is of course massive as is the GPS satellite system
that
many of them use for
navigation.
These are both pre
-
existing elements of the
mobile phone
“base
.

As in the case o
f
13
/
52


Cordyceps

,
emergence
is not always a matter of micro to macro

and may not be

at all
as simple as
it

may
seem
at first.

Emergence is all a
round

us. The creativity that produces it may amaze us. The implementation of the
phenomena that exhibit it should n
ot mystify us.

2.

Strong emergence

In this section
I’d like to comment on what has been called strong emergence
.
In particular, I’d like to
respond to the implicit disparagement of science that typically accompanies discussions of strong
emergence.


Phenomena

are said to be strongly emergent when they have

irreducible causal powers. These macro
-
causal powers have effects at both macro and micro levels, and
macro
-
to
-
micro effects are termed “downward” causation.

(Bedau 2010)

O’Connor (2012)
does not use the te
rm
strong emergence

but
defines what he calls
productive causal
emergence
.

Emergence: Productive causal
:

Systemic properties that exer
t a nonredundant, productive causal influence
on
the behaviour of the system’s more fundamental parts.

The common idea is that strong emergence implies the appearance of a new causal force that (a)

is
capable of acting on lower
-
level elements and (b)

cannot be explained in terms of anything known about
those
lower
-
level elements.
The literature

e.g., (Bedau

2010), (Chalmers 2006), (Kim 2005), (O’Connor
2013)

is fairly unanimous that strong emergence,

were anything to exhibit it, would imply not only that
physics is not causally closed but that its position as the ultimate authority for how the
natural
world
works is under challenge. In other words, strong emergence, were it shown to exist,
would be

a

spooky
phenomenon
that

may lead to the overthrow of science.

Chalmers (2006) puts it like this.

Strong emergence, if it exists, can be used to reject the physic
alist picture of the world as fundamentally
incomplete.

I disagree.
I don’t

see

a
possible

violation of causal closure as a threat to science.
I’
d like to consider two
phenomena

that
are good candidates for being labeled strong emergence
. Both have

strengt
hen
ed
science

rather than weaken
ed it
.

Dark energy

D
ark energy is reducible neither to the forces of the standard model of physics nor to gravity

i.e., it is a
new force. It is not redundant. It is causally productive: it causes the universe to expand in a

direct
physical way. In addition, dark energy satisfies Chalmers’ condition for strong emergence that “
truths
concerning
[strongly emergent phenomena]
are not
deducible

even in principle from truths in the low
-
level domain
.” As the NASA
dark energy
websit
e
18

puts it,
no one understands why
it

should be there

at
all.




18

http://science.nasa.gov/astrophysics/focus
-
areas/
what
-
is
-
dark
-
energy/

14
/
52


But is dark energy emergent? As
possibly
a property of space itself, wasn’t dark energy there from the
beginning? Perhaps not. According to Smolin

(2012, p 172)
, space

along with its inherent
dark
energy

may be emergent.


I think it is likely that space will turn out to be an illusion of the sort that temperature and pressure are

a
useful way to organize our impressions of things on a large scale but only a rough and emergent way to see
the wor
ld as whole. …

As we’ll see in this chapter, [the separation of time from space] leads to the revolutionary insight that space,
at the quantum
-
mechanical level, is not fundamental at all but emergent from a deeper order.


Sean Carroll agrees.
19


Our best th
eories of reality are based on
quantum mechanics
, not on relativity, and I think that eventually we
will understand space
-
time as an emergent semi
-
classical property, not at all fundamental.

Time

is very crucial
in quantum mechanics, but space is only an a
pproximate notion.

Yet even though dark energy violates what the known laws of physics
were before dark energy was
“discovered,”
it has not brought physics to its knees. Why not? Because physics has expanded to include

it. There is now
a place

in physics f
or dark energy.

Nuclear fusion

Should energy fro
m

nuclear fusion
be considered
an example of strong emergence?
Nuclear fusion

seems to satisfy the
requirements for

strong emergence
:

smaller things

the atomic nuclei of deuterium
(a proton and a neutron)
and tritium
(a proton and two neutrons)

are put together to create a larger
thing

the atomic nucleus of helium
(two protons and two neutrons) plus an unattached neutron
. (The
number of protons and neutrons going into the reaction and coming out of the reac
tion are the same.)
Yet t
he fusion process also produces energy.

In emergence terms, helium nuclei emerge from a base of
deuterium and tritium nuclei. Along with the helium nuclei one gets an extraordinary amount of energy.

Before 20
th

century science s
uch

a
result

would have been irreducible
. It

would have seemed
mysterious
and
strongly emergent. Now that we know how it works,
must

it

forego

that label

and
the
associated
mystique
?


Violation of causal closure is not a problem

for science

W
hether something violates the causal closure of the known laws of physics
is

not a problem for the
scientific view of nature
. All newly discovered forces

for

example the strong and weak nuclear forces

necessarily violate
the
causal closure of the existing
forces and the known laws of physics
. Otherwise
they

wouldn’t be
considered
new forces. But once discovered, any new force will be (co
-
opted and)
integrated into physics
. Physics will not be

invalidating as
our best
approach
for

understanding nature.
Being outside the causal closure of the known forces

and

laws

of physics is the signature of a new force

and the need for new science
, not a sign of the death of science.

The same would go for any other strongly emergent phenomenon.

If, for example, aspects of
con
sciousness were shown to have
measurable physical effect
s

that
could not be explained by known



19

From an online interview:
http://www.3ammagazine.com/3am/the
-
philosopher
-
physicist/
.

15
/
52


science, science would
investigate

them. Scientists

calling themselves experts in

the

new specialization
of w
hat might be known a
s

causal consciousness


would
write

grant applications and
get
to work.
That’s how science advances.

This is not as far
-
fetched as it seems.
Neural engineering has established itself as a recognized
engineering discipline. One of its most important applic
ation areas is for motor rehabilitation, i.e., to
allows people to manipulate objects by thinking about what they want to do. Techniques exist for
monitoring brain activity and translat
ing

it

into control signals for engineered devices. See (Farina,
Jensen
, and Akay, 2013) for an up
-
to
-
date survey of the state of the art.


Work in this area has been ongoing for a quarter of a century. Does
it

show that consciousness has
causal powers? There has been no revolution in either physics or philosophy as a result
of this work.
Why not? Perhaps because subjective experience
itself (whatever that means)

is not being used to
control external physical devices. But if as most naturalists agree consciousness supervenes on brain
activity and brain activity is being used t
o control external physical devices, is this not close to causal
consciousness? After all, subjective experience is by definition subjective.


This work make
s no

progress in understanding what subjective experience is and how it comes about.
I
agree that C
halmers was right to identify subjective experience as the hard problem of consciousness.
But if the only way for subjective experience to have a physical effect is through its physical
manifestation, how much closer can one get to causal consciousness?

It
’s just not clear how the notion
of strong emergence helps. Researchers in Artificial intelligence (AI) complain that feats that would once
have been considered demonstrations of “true” AI lose that status once we figure out how to do them.
Perhaps the sam
e should be said of strong emergence.

3.

Emergence summary

All this leads me to the view that emergence is best understood
as the implementation of new
functionality in what may be a new (implicit or explicit) conceptual domain. Other
examples
include

the
har
dness of diamonds, flocks of birds, traffic jams,
a
steel

canoe

(it floats even though its parts don’t)
,

and even life
.
What is most important about emergence is that it
has a clear

implement
ation
.

The
implementation may be complex
:

Microsoft Word

involves

millions of lines of code
, and

living organisms
involve complex, sophisticated, and coordinated chemistry

and range
in size
from a single cell to
organisms with trillions of cells
. But there is always a replicable implementation. In other words,
emergence

is a matter of
implement
ing

abstractions
.

S
trong emergence
refers to phenomena we can’t (yet) imagine how

either

to explain or produce
through known science o
r

engineering
.

But I don’t believe that any phenomena will
ever
enjoy a
permanent status as stro
ngly emergent.
In fact I would recommend that
we retire
the
category

of strong
emergence
.

P
erhaps the notion of emergence
itself should be retired and replace
d

by the notion of the
implementation

of abstractions
.

16
/
52


D.

T
he special sciences

The three subsection
s in this section discuss the special sciences and their relation to physics. The first
draws an
analogy

between the special sciences and the kinds of conceptual models developed for
computer applications. The second explores how a possible modern
-
day
Laplacian demon might work.
The upshot is that for it to have any chance of working successfully requires that it be informed about
the special sciences. The third subsection examines the debate about whether the laws of physics entail
the laws of the spec
ial sciences.

1.

The special sciences
are

to physics

as software applications are to
computer
hardware

Recall the extract from Fodor in which he

expressed
amazement that “unimaginably complicated to
-
ings and fro
-
ings of bits and pieces at the extreme
micro
-
l
evel manage somehow to converge on stable
macro
-
level properties

[studied by, e.g., geology]
.”

One might make a similar observation about
Microsoft Word. Unimaginably complicated to
-
ings and fro
-
ings of bits

in a computer manage somehow
to converge on Micr
osoft Word.

Is this a fair comparison? What is the conceptual distance between the two ends of these two
comparisons?

See table 1.
In Fodor’s case one might count: quantum physics to atomic physics, to
chemistry to
the special science of
geology. In the
case of Microsoft Word one might count:
physical
machine to virtual machine to

programming language

abstract machine

to

the application

Microsoft
Word.
I gave
both
sequence four steps.
Could the steps be divided differently? Probably.
Are the

steps

equally

complex? It’s difficult to say. But
qualitatively,
let’s suppose
that the two conceptual distances
are
o
f

the same order of magnitude.

The point I am going to make will not depend on the specific sizes
of each step. It will depend on the number of steps a
nd
on
the claim that each step defines an
autonomous level of abstraction.

Table 1. Layers
20

of abstraction in
the special sciences and computer applications

Special sciences (e.g, geology
)

Applications (
e.g.,
Microsoft Word)

Chemistry

Programming language

abstract machine

Atomic physics

Virtual machine

Quantum physics

Physical computer

To clarify what the steps on the right are referring to
I’
ll

take a moment to explain the
m
. Microsoft Word
(and all other
software
applications
) exist as lines of code
written in a programming language. The two
most widely used language

familie
s are the C/C++ family and
the
Java

family
. Other widely used
languages are C# for Microsoft applications and Objective C for Macintosh applications.
As discussed
above, when

writi
ng those lines of code the programmer
is
manipulating
the

abstract machine
defined
by the programming language in such a way as to produce the abstraction of Microsoft Word
.

Programs in programmi
ng languages are processed by compilers. A compiler is a prog
ram that translates
lines of code in a programming languages
into a program written in a lower level language. This is similar
to what we discussed when talking about translating
λ
-
calculus expressions to Turing machine



20

In software levels of abstraction are often referred to as layers of abs
traction.

17
/
52


transitions. In practice most compil
ers translate what
a

programmer
w
rit
es

into instructions for a virtual
machine. Perhaps confusingly, the virtual machine is not a software implementation of the
programming language abstract machine. It is a software implementation of an idealized physical

computer for that abstract machine.
For Java that virtual machine is known as the Java Virtual machine.
For Microsoft programming languages th
at

virtual machine
is
known as the Common

Language
Runtime.
21


The final step

is the implementation

of the virtual

machine in terms of instructions of some physical
computer. For each family of physical computers

e.g., the one or more families of computers built by
each

manufacturer

there
is a separate implementation
for

each virtual machine
, i.e., one for the Java
vi
rtual machine, one for Microsoft’s Common Language Runtime, etc
.
Each of those

implementation
s

manipulates the abstractions of
a

particular physical
computer

to implement the abstractions of a
virtual machine.

This is similar to our earlier example of impl
ementing the λ
-
calculus by a Turing
machine program.

Given the number of translations and implementations between Microsoft word and the physical
computer on which it is running, i
t
would be virtually impossible for anyone to

look at

the to
-
ings and
fro
-
in
gs of bits

in

that

physical computer

and understand
how they correspond to the manipulation of

Microsoft Word

abstract
ion
s
. Yet the convergence
of th
os
e

bit

to
-
ings and fro
-
ings to Microsoft Word
is
successful.


Applications (“apps”) like Microsoft Word are a relatively simple case. Consider web pages that run in a
browser: Gmail, Facebook,
the New York Times website,
Twitter, Google maps, etc. Running in a
browser adds a few additional layers of abstraction. The
browser
itself
is an app, whose connection to a
physical computer is similar to the connection described above
for

Microsoft Word.
One interacts with a
browser as an app when one clicks the back button or enters a web address into the browser’s address
bar
. But browsers are not web pages. Browsers provide a set of abstractions in terms of which web
pages are implemented.
These
browser
-
level
abstractions are defined in terms of languages such as
HTML, CSS, and JavaScript.
Implementation

of a web page in a br
owser is similar in concept to
implementation of a set of abstractions in a programming language. But
there is often a significant
conceptual distance between

a browser’s abstractions and those of

a web page
. To help bridge that gap
software developers
hav
e created
frameworks

and libraries

that provide
yet more levels of abstraction.
Although the analogy is not perfect, one may think of the relationship between these and the browser
as comparable to the relationship between a programming language and a phys
ical computer.
These
frameworks and libraries define
abstraction that are more convenient
for implementing web pages
than
the basic HTML/CSS/JavaScript layer.

It’s also worth noting that there are a number of different
browsers. The best known as Microsoft
’s Internet Explorer, Mozilla’s Firefox, and Google’s Chrome.
These play roles similar to those played by the multiple hardware manufacturers.

As you can see
all this



21

The advantage of generating programs for a virtual machine is that when a program is run on a virtual machine
the physical computer on which it is running is irrelevant. Java’s motto is “Write once; run anywhere,” which
promises that a Java pr
ogram will run the same way whether it is being run on a laptop manufactured by Asis or a
desktop manufactured by Dell. So a compiler generates instructions to manipulate the abstractions of a virtual
machine in a way that will produce the abstractions of
the programming language’s abstract machine.

18
/
52


involves
a great many
implementations of abstractions, which in the end are intended to a
ppear the
same to users.

Beyond all that, many organizations that offer
browser
-
based
web
services

also provide apps that run on
mobile phones. Again, consider the web
-
based services listed above. Most of these mobile phone apps
are not browser based. The
y are applications that run on the computers in mobile phones the same way
that Microsoft Word runs on a laptop or desktop computer. Consider what that means. The abstractions
that users associate with Gmail, Facebook, etc. are fairly stable whether these
services are accessed via
a browser or via a mobile phone application. Yet in almost all cases the apps that run on mobile phones
offer significantly different access to those abstractions. If you have used any of these services on both a
laptop (or deskto
p) and a mobile phone you will have noticed the differences.
So the abstractions are
the same. Gmail deals with messages; the New York Time website deals with articles. But users have
somewhat different ways to interact with those abstractions depending on

the platform. This is
more
like convergent evolution

than multiple realization.

Furthermore, the apps that run on mobile phones differ from each other depending on the mobile
phone family. App for Android
-
based mobile phones are written in Java; apps for

iPhones are written in
Objective C.
To the extent that the apps provide the same access to the same abstractions, this is much
closer to multiple realizations.

Wh
y have I spent
so much

time
enumerat
ing

this litany

of abstractions and their implementations?
My
point is
that it’s not at all unusual to find low level to
-
ings and fro
-
ings that converge

after multiple
levels of abstraction

to some higher level of abstraction. In other words, that there are regularities
for
the special sciences to study which are
implemented in terms of the to
-
ings and fro
-
ings of
conceptually
distant
bits and pieces is not at all a unique situation.

Furthermore, those of us in computer science are
familiar with this sort of phenomenon an
d understand how it works.

One might point out that in the case of software
-
implemented abstractions
, the to
-
ings and fro
-
ings of
bits are all planned and coordinated in advance; so of course it’s successful. Since nature doesn’t plan
,

how can a similar co
nvergence take place? The answer is that it doesn’t always happen. When to
-
ings
and fro
-
ings
in nature
don’t converge to stable macro
-
level properties, macro
-
level properties don’t
appear.

M
ountains are made of all sorts of stuff, but mountains are
also
no
t made of all sorts of stuff.
We don’t have mountains of sand because sand isn’t the sort of stuff whose to
-
ings and fro
-
ings can
converge to a stable mountain. If it were, perhaps we would.

More generally a point made in a recent
popular article
by
Denne
tt
applies. Dennett (2012)
cited
evolution as an example of competence without comprehension. One can generalize this to nature in
general
. N
ature implements many
abstractions

without comprehending how the

implementations

work
,
i.e., without planning and
w
ithout
coordination
. Nature often achieves competence in implementing
abstractions by substituting trial
-
and
-
error over
extremely

long periods of time for insight

and planning
.

Is it conceivable that nature can do in hundreds of millions (perhaps billions)

of years
something similar
19
/
52


in the complexity of its abstraction layers
to what

teams of programmers have done in (mere)
decades?
22

I wouldn’t bet against it.

One reason the convergence works even though the complexity is enormous is that the complexity is
divided into independent pieces. Each piece can be implemented and tested separately. Once a level is
complete, the level built on top of it can rely on it an
d need not be concerned about how the lower level
works
. All that matters is that it works as advertised.

In our example of implementing a λ
-
calculus
abstract machine as a Turing machine program, once that implementation

has been done, one can
concentrate
on writing λ
-
calculus programs and not worry about the to
-
ing and fro
-
ing of the underlying
Turing machine as it runs back and forth on its tape.

That complexity is now hidden and no longer of any
concern.

In discussions of software architecture one often
sees diagrams of the sort

shown in Figure x
.

(
For our
purposes t
he specific words don’t matter. It’s the structure that counts.) This is a relatively
uncomplicated example of this sort of diagram, often called
a
layered or tiered architecture.





Figure

x. A relatively simple multi
-
tier architecture diagram.

Each box represents a collection of abstractions. The boxes

higher in the diagram

are implemented using
the abstractions of the boxes immediately below them. Some boxes are shown with internal
compon
ents
. That means that the overall collection of abstraction
s

that box makes available can be
understood as
union

of the abstractions of the internal boxes.
As in this diagram most software
architectures are not strict hierarchies. There is a sense of lower

and higher levels
, b
ut sometime a level
reaches down to a level that is not immediately below it. This is similar to the way in which biology
reaches down below chemistry to make use of quantum physics for photosynthesis.

The same can be



22

I’m granting the programmers decades to allow for both the implementation of the various intermediate levels
of abstraction and the implementation of increasingly sophisticated versions of Microsoft Word.

20
/
52


said for the spec
ial sciences. Each level is implemented
in terms of pre
-
existing levels
.
Recall, though,
that not all newly implemented abstractions form a hierarchy.
Cordyceps

implements its life cycle by
using capabilities from what would normally be considered higher
level elements.

The lesson of software architectures is that it makes perfectly good sense

to understand nature as
consisting of

multiple
layers of abstraction

and to believe that the best way to study nature is to
establish a special science to
study
each

identifiable layer

as an autonomous

domain
.

For both nature and software, though, it’s important to remember that nothing would actually happen
were the lowe
st

level not to
-
ing and fro
-
ing. I’ll discuss causality further below. Here I’ll simply point out
that
there are no higher
-
level
forces or
higher
-
level
causal laws.
It is only the
lowest level of
to
-
ings and
fro
-
ings
that
make the world

both physical and software

go
‘round.

2.

Platforms

A platform generalizes the notion of a level of abstraction and extends it beyond software. A platform is
a level of abstraction that enables the interaction among users. Facebook, the social network, is a good
example. Facebook users interact by posting i
tems to their Facebook pages and by looking at and
commenting on items of the pages of other users.
T
he computational abstractions that Facebook makes
available
enables

these interactions
.

A platform often gives rise to what is known as an ecosystem of
par
ticipants
. In the case of Facebook, the ecosystem includes companies that develop games
and other
apps
for Facebook users,
companies that develop tools to help companies that develop Facebook apps,
and
companies that advertise on Facebook. An important com
putational abstraction that Facebook
makes available to app developers is a means to transfer money from a game user to a game developer.

Most platforms are multi
-
sided, which means that users
can be grouped

into multiple categories. The
“sides” for Faceb
ook include regular users (the more than a billion of them), app developers, and
advertisers. Each group uses Facebook for a different purpose. The more
regular

users there are, the
more valuable the

platform is to
all three groups. It’s more valuable to
o
ther users
because
you don’t
want to be on a social network with no one else
. It’s more valuable
t
o

game and app

developers

because
the more users the more potential customers for your games. It’s more valuable
to
advertisers
because
there must be an audie
nce for ads. Similarly the more
game and
app developers there are, the more
valuable the platform is to the regular users because they will have a wider variety of
games and
apps
from which to choose.
Because user
-
group size is so important there is intens
e competition among
platform developers to become the preferred platform in a given area.

And the more popular a platform
becomes, the more niches it can support. For example if there are enough users it is likely that there will
be enough chess players
am
ong them
that it will make sense for a game developer to develop a
n

app
that allows users to play

chess

with each other.

In other words, as a platform grows in popularity it is
likely to become increasingly rich and diverse.

Multi
-
sided platforms are not
limited to computer systems. Many businesses also illustrate emergence.
Among the first cited examples (Rochet and Tirole, 2003) was the credit card service. It serves buyers (by
making it possible make purchases without carrying money or establishing cred
it
-
worthiness) and sellers
(by making it easier to make sales to unknown customers and then to collect payment). Other multi
-
sided platforms include shopping malls

(customers and stores),

markets (such as
farmer’s markets and
21
/
52


stock markets) where buyers an
d sellers meet to transact business, communication systems like the
telephone and the postal systems (there is a single group of users who want to communicate among
themselves), and advertiser
-
supported media like television (the sides are viewers, show pr
oducers, and
advertisers)
.

For more on multi
-
sided platforms see (
Evans, Hagiu,
and
Schmalensee
,

2006)
, (
Evans,
2013)
, and (
Filistrucchi, Geradin,
and
v
an Damme,
(2012).

W
hy
are multi
-
sided platforms

important for the relationship between the special sciences and physics
?

There are two reasons.
The phenomenon of multi
-
sided platforms

offers a model for how
natural
ecosystems can develop. It also illustrates
the

importan
ce of

platforms. Recall that
a p
latform develops
and becomes richer and more diverse because it starts out

with a broad and rich collection of
abstractions
. That base of abstractions must be

attractive

enough

to a large enough group of users to
produce a self
-
reinforcing growth and devel
opment cycle.

Starting with the laws of physics it will take
quite a few levels of abstraction development to reach that point.

But as noted before, even though all
the activity at each level depends ultimately on the to
-
ing and fro
-
ing of the most element
ary bits and
pieces,
a platform with multiple abstractions

is not a single house of cards

that will come tumbling down
if one thing goes wrong. Unlike a Rube Goldberg machine th
e

sort of complexity

one finds in platforms

is
built on independently developed

and autonomous abstractions

that are all available in one
environment
.

3.

W
hy there is something besides physics

In this section I’d like to approach th
e

question
of why there is anything besides physics
from the
perspective of a modern
-
day Laplacian demon
.

I will take as a starting point a claim raised by

Chalmers
(2006).
In discussing whether or not higher level laws are deducible from lower level laws, h
e writes that

whether they are or not,
higher level
facts

must be deducible from lower level
facts
.

[I
]
f one knows the complete distribution of atoms in space and time, it remains plausible that one can deduce
from there the complete distribution of chemical molecules, whether or not the laws [of chemistry] are
immediately deducible from the laws [of physi
cs].
23

I want to
explore

whether this really is

plausibil
e
.

For one thing, Chalmers must mean more than
this passage seems to

sa
y
. If one knows the complete
distribution of atoms in space and time then since (
as I suppose
Chalmers is assuming) molecules ar
e
(more or less) well defined combinations of atoms, one
already

knows the complete distribution of
molecules.
It seems to me that what

he is saying

and
why

one
might
need the laws of chemistry

is
the possibility of computing a future configuration of mole
cules from a current configuration of atoms.
Chalmers

seems to
be claiming t
he plausibility, in principle, of
a modern
-
day
Laplac
ian

demon. I think
there are important reasons for saying that we can’t
construct such a demon
and important lessons in
examin
i
ng
why.

The fundamental elements of physics is
currently
quantum fields, not atoms.
24

B
ecause atoms are not
special to fundamental physics, which is what Chalmers wants to use as the starting point
,
let’s assume



23

(L
oewer, 2008) makes a similar claim.

24

See (Hobson, 2013) for a discussion of this view from the perspective of a college physics instructor. The
quantum

field for what might

otherwise be called a particle

fills all of space. Its value at any point is the
s
o
-
called
22
/
52


that the demon is starting with quantum
fields instead of atoms.

There are a number of reasons why it’s
not

plausible that
a modern
-
day demon
can deduce a future complete distribution of chemical
molecules from knowledge of a current distribution of quantum fields.

For
starters
, given quantum u
ncertainty it’s not clear what it means to say that one has
knowledge of
the

complete distribution in space and time of some
collection

of quantum fields. The best one can
have, even in principle, is an approximate distribution. So the first problem is the

likely chaotic effects.

Secondly, since every quantum field fills the entire universe, to compute/deduce the future distribution
of
even
a

small

set of quantum fields one
must
, at least in principle, take into account the influence on
that set of all the

quantum fields in the universe. One could get around this problem by considering

only
the quantum fields with
non
-
negligible value
s

in the region of concern. But that
again
limits our
computation to an approximation

perhaps a very good approximation, but
still an approximation.

But let’s ignore these problems and consider the actual computation. What such a computation would