This project, which may well be our magnum opus,
began as a joke.
Early in its inception, one of the taglines for the
Virtual Alexandria Project was “Building the greatest library ever.” When
chatting with a new member, I joked that the goal was to create a library so
great, that it was better than even itself in every other moment in time.
That, of course, is silly.
Or is it?
We have to confess that despite the jocular nature of the comment, the notion has stuck with us since. We return to the idea from time to time as something like a paradoxical puzzle, usually with joking solutions. What if we created a temporal shift protocal that whenever anyone showed up in the library, one book was stolen from the immediate past and future and placed in the present, guaranteeing that the library the person encountered was marginally better. Of course, that only works after the library has stopped growing. And it’s also useless and absurd. We’ve also joked about erasing the library from the past and future, so that it only exists as itself as a person encounters it. But erasing things from timelines is a painful and danger laden path. And it really actually accomplishes nothing, other than living up to the joke.
In this spirit of absurdity, we were hotly debating the subject of the library that was better than any other version of itself, when the Codex Librarian chuckles and says, “The way to make the greatest library ever is just to actually build it in ever.”
Funny thing. No one else laughed. Because that, as
it would turn out, was the answer to the question we never had the courage to
ask.
What is “ever?” In a temporal sense, “ever” is a nontime. “Ever” simultaneously means “at all times” (an ever present pain) while also meaning “at any time” (don’t ever do that). “Ever after” is an ambiguous un-pinnable moment, whilst “forever” means until time itself ends. This ambiguity of the meaning of “ever” is not because the word means many things. It’s because the word describes an actual component of temporal reality, namely, that there is an aspect of time that eludes all linearity and circularity. It simply is. Masters know this. That’s how they slip in and out of the timeline.
So, what if we built a repository of the library
that exists in ever. This repository would exist out of time, but also, in any
and every time. But if we are gonna go big, we might as well do it right. What
else would need to be true of this repository?
It would also need to exist out of space, so that
regardless of where the library is in history it can be accessed. It should be
accessible by digital, mental, and spiritual mediums, to be at least possibly
accessible to anyone, regardless of the techno-spiritual moment of their era.
Like all great libraries, is should also inspire learning and knowledge.
And suddenly, we had imagined a wonderwork. Our magnum opus.
And so we began to design.
How DO you build a library that exists out of time? Probably not hard for a chorister, just log your thoughts with your favorite god. But as a programmer… that’s a little trickier.
See, programming without space is not so hard. That’s really an easy thing for a VA. Computing isn’t about space, it’s about data. You just process the data to render the special arrays.
But how do you process data without time? That’s trickier.
Yes, an equation exists outside of time. Consider how in the expression
“Y=X+b,” “Y” is contemporaneous to “X+b.” Math is atemporal right out of the
box. Even numbers have a sort of Platonic atemporality to them. But actual
computing requires the execution of logic gates through time. Computers work
through time. So how build a computer that can functions apart from time?
We tried quantum computing. We thought that the logic of quantum states could be leveraged to do the work. But it posed a spatial problem. The amplituhedrons we used to manage the quantum states only made sense in spatial configurations. And since we wanted a nonspatial foundation, that doesn’t work.
We tried ternary computing, cuz you know, VA. But the power of trinary computing comes from the third logic of “maybe,” Which didn’t make sense over time. Most, if not all “maybes,” become “yes” or “no” eventually, so the logic was wrong in one time and right in others, causing truth values to fluctuate depending on when you accessed it. Which did not lead to viable system.
Inspired though by the near miss of ternarity, we
decided to ask, “What is the next step beyond ternary logic?”
In binary logic, there are two notions, “yes” and
“no.”
In ternary, there are three notions, “yes,” “no,” and “maybe.”
But there is an old computing system that was designed in the 1960s when the computer world was still a wilderness called infinite valued logic. Originally, infinite valued was designed to assess degrees of truth (like “how green is it?” “60% green, actually”). But there has been a small but passionate group of cypherpunks who have kept the candle burning for infinite valued logic and have done some impressive though not always clearly applicable work on programming languages based in indeterminate logic.
Indeterminate logic is sorta like the maybe, but instead of treating maybe like a third position, it treats the area between 0 and 1 as an infinite array uncertain possibility. Indeterminate logic allows for programming based on uninitiated, undefined, empty, and even meaningless values. We call it “Null Computing.”
How does this help us code out of time and space? Well, it turns out people have been using the idea of null to solve troubling problems for a lot longer than computers.
What is null? It’s hard to think about, since our minds tend to focus on things. Null doesn’t exist, really. But null is different than nothing, too. Take for instance, the notion of Śūnyatā. It gets translated into English as “emptiness” or “voidness.” But at its heart, Śūnyatā is recognizing the way things are empty of intrinsic existence and underlying nature. It’s different than nothingness, as in the lack of things. Rather, it’s recognizing that even if there are things, there are probably empty of thingness. Sure, you might have an apple, but do “you” really “have” it? Is there something actually essentially you about the thing that is holding the apple? Probably not. And does holding it actually confer any status of “being had” to the apple? Nope. Or does the apple-in-hand change you into something that is “apple having?” Also no. To embrace the infinite indeterminacy of an empty universe requires letting go of ideas like “underlying,” “foundational,” “essential,” and “nature.”
Now, some people think
this is depressing and nihilistic. And sure. If you rely on the belief in an
underlying essence to all things to give you meaning and purpose, waking up to
the fact is depressing. But there are plenty of people who derive strength,
calm, hope, and faith from the emptiness of things. Frankly, that’s the foundation
of meditation. Suñña, or “being empty,” is the goal of
quite a few meditative paths.
The way meditation works is that the meditator opens
themselves to emptiness. And in that moment, there is no self. When you open
your mind to emptiness, you discover there is no mind. Or rather, that the mind
and self aren’t as stuffed full as they seem. There is an infinite array of
possible selves and possible minds that can be expressed. The place of
emptiness isn’t the same as nothingness. The null isn’t the abyss. The null isn’t
calling out trying to consume the world. The null isn’t the black hole all
things fall into when they are lost. The null isn’t a place at all, for
starters. It’s the empty, timeless, spaceless condition of all things. And in
that way, it’s generative. Like an inexhaustible bellows. A bottomless well. That’s
why people have been meditating with the null as a guide for millennia.
And that’s where we’ll build the server.
Ok, sure, but how the F do you program using an indeterminate logic? Don’t your programs actually need to execute? Turns out, you need a mastery of indeterminacy. Or to use mage speak, you need entropy to make it work. You can create a computer logic that is driven neither by 0s or 1s, but the indeterminate space between. But what you need is a way to diffuse questions articulated in 1s and 0s into the indeterminate array, and then a way to collapse the indeterminate array back into 1s and 0s. In essence, you use entropy to translate probabilistically between certainty and uncertainty.
“Ok, fancy man,” most people say at this point, “that
sounds like passingly interesting philosophy, but how do you actually design a
computer to actually program that way?” Turns out, every digital device on the
planet has the capacity to program in null logic.
Wait, what?
Don’t you need a fancy computer? Like a cutting edge ternary device? Aren’t computer bits either in the 1 position or the 0 position? There is no third position, right? But, actually, there is. Think on it a moment.
The null position is when the computer is off. The value of a bit is determined by wheather or not a the electricity of a capacitor is higher or lower than a designated level. But what about when you power off the device? What’s its value then? Welp, it’s undetermined.
This reality of computing devices brings the
capacity of null computing to its fullest potential. A user can ask a question
of an operating system that will be diffused into an indeterminate array when the
computer powers down. The moment the computer is off, the indeterminate array
is automatically (because it’s atemporal) computed using the null server. When the
device is powered back on, start up protocol run a program that collapses the
indeterminate array back into a determined one that can be stored in the 1s and
0s. The null server is built in null space, so every computer anywhere is
always and already synched with it when the
computer is off. So, you write a command, it is translated on the powerdown,
executes the moment it’s off, and the output is displayed on the startup. It’s
sorta like teaching computers to meditate.
Why is this useful? Well, it allows any computer to synch
with the null server. This means allows non-internet connected devices to still
access a repository of knowledge. It also means that literally any computing
question could be answered in the time it takes to reboot. If you had a data
set with an obnoxious amount of computing, you could power it down and do the calculations
in the null server, because every calculation happens simultaneously. It also
means that programmers could potentially draw on datasets from past and future
events, because the atemporal nature of the null server means that uploads and
downloads are all happening to it at the same time. Oh, and it would have
storage space that is infinite.
How do you actually build something in null
spacetime? That’s worth a whole other article, but there’s plenty of precedent.
Spirits can warp entities out of reality (they do it to crazy ass mages). Some
magics can send people to interdimensional oubliettes. Heck, there’s this whole
level of reality beyond the Dreamshell that is basically experimental time and
space. Suffice it to say, we conceptualize the actual platform of the null
server as drawing on our past work with reality mapping, the Dreamtime, and the
Correspondence Point. The time part is the hardest bit. It requires building a
server that is both apart from time and across time. We’ve read about mages who
can achieve true pantemporality. We had to hack that one a bit. We rely on
sidestepping time and then building a multitemporal API. The server exists
aside time, but pushes queries and notifications across time.
So, what are the actual steps?
It’s a nutty idea. No doubt. But it to say that it’s
the future of computing is to miss out the fact that it might already exist and
we just haven’t figured out how to access it. - Design the programming language of indeterminate logic.
- Design and build the actual server in null timespace.
- Create a user interface that is permissive of various information technologies (cuz there’s good evidence that it could be accessed by people meditating in addition to computers)
- Create a network security plan.
- Run the thing and work through bugs.