  Quantum physics is a linear theory, so it is somewhat puzzling that it can
underlie very complex systems such as digital computers and life. This paper
investigates how this is possible. Physically, such complex systems are
necessarily modular hierarchical structures, with a number of key features.
Firstly, they cannot be described by a single wave function: only local wave
functions can exist, rather than a single wave function for a living cell, a
cat, or a brain. Secondly, the quantum to classical transition is characterised
by contextual wave-function collapse shaped by macroscopic elements that can be
described classically. Thirdly, downward causation occurs in the physical
hierarchy in two key ways: by the downward influence of time dependent
constraints, and by creation, modification, or deletion of lower level
elements. Fourthly, there are also logical modular hierarchical structures
supported by the physical ones, such as algorithms and computer programs, They
are able to support arbitrary logical operations, which can influence physical
outcomes as in computer aided design and 3-d printing. Finally, complex systems
are necessarily open systems, with heat baths playing a key role in their
dynamics and providing local arrows of time that agree with the cosmological
direction of time that is established by the evolution of the universe.
