I recently praised Planiverse as peak hard science fiction. But as I hadn’t read it in decades, I thought maybe I should reread it to see if it really lived up to my high praise.
The basic idea is that a computer prof and his students in our universe create a simulated 2D universe, which then somehow becomes a way to view and talk to one particular person in a real 2D universe. This person is contacted just as they begin a mystical quest across their planet’s one continent, which lets the reader see many aspects of life there. Note there isn’t a page-turning plot nor interesting character development; the story is mainly an excuse to describe its world.
The book seems crazy wrong on how its mystical quest ends, and on its assumed connection to a computer simulation in our universe. But I presume that the author would admit to those errors as the cost of telling his story. However, the book does very well on physics, chemistry, astronomy, geology, and low level engineering. That is, on noticing how such things change as one moves from our 3D world to this 2D world, including via many fascinating diagrams. In fact this book does far better than most “hard” science fiction. Which isn’t so surprising as it is the result of a long collaboration between dozens of scientists.
But alas no social scientists seem to have been included, as the book seem laughably wrong there. Let me explain.
On Earth, farming started when humans had a world population of ten million, and industry when that population was fifty times larger. Yet even with a big fraction of all those people helping to innovate, it took several centuries to go from steam engines to computers. Compared to that, progress in this 2D world seems crazy fast relative to its population. There people live about 130 years, and our hero rides in a boat, balloon, and plane, meets the guy who invented the steam engine, meets another guy who invented a keyboard-operated computer, and hears about a space station to which rockets deliver stuff every two weeks.
Yet the entire planet has only 25,000 people, the biggest city has 6000 people, and the biggest research city has 1000 people supporting 50 scientists. Info is only written in books, which have a similar number of pages as ours but only one short sentence per page. Each building has less than ten rooms, and each room can fit only a couple of people standing up, and only a handful of books or other items. In terms of the space to store stuff, their houses make our “tiny houses” look like warehouses by comparison. (Their entire planet has fewer book copies than did our ancient Library at Alexandria.)
There are only 20 steam engines on their planet, and only one tiny factory that makes them. Only one tiny factory makes steel. In fact most every kind of thing is made a single unique small factory of that type, and only produces a modest number of units of whatever it makes. Most machines shown have only a tiny number of parts.
Their 2D planet has a 1D surface, with one continent divided into two halves by one mountain peak. The two ends of that continent are two shores, and on each shore the fishing industry consists of ~6 boats that each fit two people each and an even smaller mass of fish. I have a hard time believing that enough fish would drift near enough to the shore to fill even these boats once a day.
As the planet surface is 1D, everyone must walk over or under everything and everyone else in order to walk any nontrivial distance. Including every rock and plant. So our hero has to basically go near everyone and everything in his journey from one shore to the mountain peak. Homes are buried underground, and must close their top door for the rivers that wash over them periodically.
So in sum, the first problem with Planiverse is that it has far too few people to support an industrial economy, especially one developing at the rate claimed for this. Each industry is too small to support much in the way of learning, scale economies, or a division of labor. It is all just too small.
So why not just assume a much larger world? Because then transport costs get crazy big. If there’s only one factory that makes a king of thing, then to get one of it to everyone each item has to be moved on average past half of everything and everyone. A cost that grows linearly with how many things and people there are. Specialization and transportation are in conflict.
A second lessor problem is that the systems shown seem too small and simple to actually function. Two dimensions just don’t seem to offer enough room to hold all needed subsystems, nor can they support as much modularity in subsystem design. Yet modularity is central to system design in our world. Let me explain.
In our 3D world, systems such as cells, organisms, machines, buildings, and cities consist of subsystems, each of which achieves a different function. For example, each of our buildings may have at least 17 separate subsystems. These deal with: structural support, fresh air, temperature control, sunlight, artificial light, water, sewage, gas, trash, security surveillance, electricity, internet, ambient sound, mail transport, human activities, and human transport. Most such subsystems have a connected volume dedicated to that function, a volume that reaches close to every point in the building. For example, the electrical power system has connected wires that go to near every part of the building, and also connect to an outside power source.
In 2D, however, a volume can only have two or fewer subsystems of connected volumes that go near every point. To have more subsystem volumes, you have to break them up, alternating control over key connecting volumes. For example, in a flat array of streets, you can’t have arrays of north-south streets and east-west streets without having intersections that alternate, halting the flow of one direction of streets to allow flow in the other direction.
If you wanted to also have two more arrays of streets, going NW-SE and NE-SW, you’d need over twice as many intersections, or each intersection with twice as many roads going in and out of it. With more subsystems you’d need even more numerous or conflicting intersections, making such subsystem even more limited and dependent on each other.
Planiverse presents some designs with a few such subsystem intersections, such as “zipper” organs inside organisms that allow volumes to alternate between being used for structural support and for transporting fluids, and a similar mechanism in buildings. It also shows how switches can be used to let signal wires cross each other. But it doesn’t really take seriously the difficulty of having 16 or more subsystem volumes all of which need to cross each other to function. The designs shown only describe a few subsystems.
If I look at the organisms, machines, buildings, and cities in my world, most of them just have far more parts with much more detail than I see in Planiverse design sketches. So I think that in a real 2D world these would all just have to be a lot more intricate and complicated, a complexity that would be much harder to manage because of all these intersection-induced subsystem dependencies. I’m not saying that life or civilization there is impossible, but we’d need to be looking at far larger and more complicated designs.
Thinking about this did make me consider how one might minimize such design complexity. And one robust solution is: packets. For example, in Planiverse instead of moving electricity via wires, it is moved via batteries, which can use a general transport system that moves many other kinds of objects. And instead of air pipes they used air bottles. So the more kinds of subsystems that can be implemented via packets that are all transported via the same generic transport system, the less you have to worry about subsystem intersections. Packets are what allow many kinds of signal systems to all share the same internet communication network. Even compression structural support can in principle be implemented via mass packets flying back and forth.
In 1KD dimensions, there is plenty of volume for different subsystems to each have their own connected volume. The problem there is that it is crazy expensive to put walls around such volumes. Each subsystem might have its own set of wires along which signals and materials are moved. But then the problem is to keep these wires from floating away and bumping into each other. Seems better to share fewer subsystems of wires with each subsystem using its own set of packets moving along those wires. Thus outside of our 3D world, the key to designing systems with many different kinds of subsystems seems to be packets.
In low D, one pushes different kinds of packets through tubes, while in high D, one drags different kinds of packets along attached to wires. Packets moving along wires for the 1KD win. Though I as of yet have no idea how to attach packets to move along a structure of wires in 1KD. Can anyone figure that out please?