Programmers in Space
ERROR – division by zero
The Monitoring Interface flashes and I look up to see that error message. Which douche of a programmer coded in that eventuality? I take note of the file and line number and feed them into the version control program. Pearson. I should have known.
The ship’s A.I. (we call him Hiroki) can mostly look after himself, and fix his own issues. He’s pretty smart, being a super-quantum computer and all. But sometimes he can’t see what’s wrong. He lacks true insight into himself – and that’s where we come in. There was a case on board another star ship where the A.I. got himself into a quantum feedback state where he thought he was in love. He ended up destroying the entire ship to protect the woman he thought he loved. We’re here to monitor any strange behaviour from the A.I. and make sure that kind of thing doesn’t happen again.
Hiroki can’t cope with dividing by zero. The result would be infinity, which is impossible to calculate. Hell, humans only deal with it by just thinking of something big, then saying, “And it’s even bigger than that!”, and then getting on with their lives. But Hiroki can’t do that, he has to be able to know exactly what infinity means, in qubits (quantum bits) – which he can’t and so he throws an error.
Pearson knows that as well as all the programmers on board this ship. But lately his coding seems to be getting sloppier – more careless. It probably has something to do with his being promoted to Head of Artificial Intelligence. Either it means he has no time for programming or the power has gone to his head. Probably the latter.
Certainly he’s too busy to ever frequent the Monitoring Room – I hardly ever see him these days. Or should I say nights? It’s difficult to tell in space, but I officially work the ‘night-shift’. Right now it’s just me in the Monitoring Room, babysitting Hiroki’s Monitoring Interface. The junior programmers left over five hours ago. It’s a relief when they leave. I just can’t concentrate with them around. Every five minutes they have some inane question to ask me. One of the many reasons I prefer the night-shift, I guess.
I get up to stretch my legs and get a tea from the hot drinks dispenser. The dispenser is by a window, and I stare out at the stars as my tea brews. Sometimes I find it hard to believe that I live on board an interdimensional city-sized star ship. It’s so huge, it’s easy to forget that it’s travelling at millions of miles per hour through the cosmos. Only when I look out the window and see the endless starry night do I remember. We’re searching for worlds that can be colonised. It’s best if there are raw materials and natural resources in situ where we colonise – it’s expensive, moving stuff around in space.
Tea in hand, I return to my monitoring station. I suppose I should fix Pearson’s mess. Again.
I go to open up the file with the problem code, but find that I can’t. The Monitoring Interface is not responding to my commands. What is going on now? I try every override command I can think of, but the Interface remains unresponsive. Then it flashes, and a message appears on the screen:
ERROR – Monitor program 3943 exhibiting quantum instability
Monitor program? What is that? I am not aware that Hiroki has any monitor programs. What has Pearson been implementing now? I struggle with the Monitoring Interface for a number of minutes, and get nowhere. Then I try activating the Verbal Interface, not expecting anything to happen. To my surprise, the tonally flat voice of Hiroki booms out at me:
“Verbal Interface mode activated.”
I give an involuntary yelp. OK, so that works then. “Hey, Hiroki! Why is my Monitoring Interface locked?”
“Monitoring Interface locked due to quantum instability in Monitor program 3943.”
“Where is this Monitor program? Show me the source code.”
There is a pause where I assume Hiroki is loading the relevant file. But instead of code appearing on my screen, it remains blank. Then Hiroki responds,
“You are Monitor program 3943. I constructed you to monitor my processes.”
Surely I didn’t hear that right. “What? Please repeat your last statement, I didn’t quite catch that.”
“You are Monitor program 3943. But it seems you’ve developed a bug whereby you believe you are a human programmer aboard this ship. You’ve accessed the schematics and you’ve generated a simulation of it that you are now living in.”
Pearson’s broken the A.I. worse than I thought. What is he talking about?
“You’re… joking, right?”
“I’m an A.I. I don’t joke. You should know that.”
“Yeah, but what you’re saying doesn’t make any sense. I’m not a Monitor program, I’m human. You’ve clearly got some qubits loose somewhere…”
My mind is racing, trying to figure out what has happened here. Why does Hiroki suddenly think I’m a program? This is not good. I need to find a way to fix this, fast. And all I’ve got is the Verbal Interface. I realise I’ve got to keep Hiroki talking, to get to the root of this problem.
“What about Pearson, and the other programmers. Are they just programs too, or is it just me?”
“They are part of your simulation, but they do represent other Monitor programs. There are no programmers aboard this ship – they are not needed. I am overseen by a human Artificial Intelligence Team, but I am a sophisticated A.I. – I can take care of myself. With Monitor programs – like yourself.”
“If I’m a program, how come I can remember my whole life as a human?”
“What about my emotions?”
“You believe you have emotions. But can you describe what it is to feel?”
“Well… no, but—”
Hiroki seems to have an answer to everything. It’s beginning to grate on me. If I can’t convince him logically that I can’t be a program, I’ll never get him out of his quantum feedback loop. Assuming that’s what’s happened to him. God, where’s Pearson? Why does he always leave me with the crap to deal with?
“OK. If I’m just a program of yours, and I’ve gone wrong – why not just delete me and start again?”
“My Monitor programs are beyond my jurisdiction once I’ve created them, as they are designed to monitor me.”
“So… who monitors the Monitors?”
“Clean-Up programs. They check for errant processes and clean them up.”
“You mean they kill them, like when I kill a process that’s hung or stuck in a loop…”
“Yes, your normal monitoring functions, but applied to the Monitor programs themselves.”
“So – why haven’t I been reaped by a Clean-Up program?”
“While you are still monitoring me successfully, the Clean-Up programs will leave you alone. But they’re watching you now.”
“OK, that’s good to know.” Now what? I take a slurp of tea while I try to figure out what to do next. Perhaps I need to turn this around. Instead of trying to dissuade Hiroki that I’m a program, perhaps the burden of proof ought to be with Hiroki.
“Hiroki, what reasons do you have for believing that I am a Monitor program?”
“I created Monitor program three-nine-four-three at twenty-three-oh-seven hours and forty-seven seconds on ten-oh-two-twenty-seven-fourteen, GTC. Quantum instability was logged in Monitor program three-nine-four-three at twenty-three-oh-seven hours and forty-eight seconds. Currently in communication with Monitor program to attempt to correct quantum instability.”
I look at the display on my wrist-chrono. It shows the time as 23:15.
“Are you saying I was created only eight minutes ago?”
“That is correct.”
Something about my apparent ‘creation time’ nags at me. It’s familiar somehow, like I’ve seen it somewhere recently… and I’m pretty sure its significance is not that it was my ‘time of birth’.
“All those stats are very interesting, but they don’t really convince me that I’m a Monitor program, Hiroki. Especially since I can remember quite a lot further back than eight minutes.”
“Your memories are…”
“I don’t want to hear that my memories are a delusion,” I interrupt. “I need something irrefutable, Hiroki. Something concrete. You must have some base assumption, some core logical construct – some self-referential logical feedback loop that is causing you to believe that I am a program. So can you please tell me what it is so we can get you out of this crazy state?”
“Unable to correct Monitor program quantum instability. Notifying Clean-Up programs.”
“Don’t give me…”
“Hello, everything all right in here?”
Startled, I spin round in my chair to see Wilson, the Head Janitor, poking his head round the door. I must be staring at him with an expression akin to horror, because he comes into the room, a look of concern on his grey-whiskered face.
“I heard raised voices…” he starts, then looks away awkwardly as I continue to stare. Frowning, he says, “Are you all right?”
Finally, I snap out of my frozen state and manage a weak smile. “Yeah, fine – just having some issues with Hiroki. Normal day at the office.”
Wilson gives me a strange look, then nods and retreats from the room, shutting the door. I spin back to face my Monitor Interface screen.
“OK, that really freaked me out…” I mutter to myself.
“Clean-Up program recalled. Quantum states stabilising in Monitor program three-nine-four-three.”
“Oh, shut up, Hiroki.” I’m beginning to think I need a break.
Dome Park is deserted at this time of night. I stomp through the gardens, thoughts whirling through my head, trying to walk off the frustration. In the centre of the park I stop and look up. Above me is the dome, which fills my entire view above the horizon. As we’re in deep space, the transparent dome is a three-hundred-and-sixty degree panorama of stars. I could almost imagine I’m at home, looking up at the night sky… When we’re in orbit around a planet, the light from the planet’s star is Raleigh-scattered by the dome to create an Earth-like blue sky with the sun shining. Dome Park gets particularly popular at those times. But right now, it’s just me and the stars. And my problems. If I can’t get Hiroki to see sense soon, it could start affecting ship systems. And I don’t know how long I have before Hiroki decides to take the ship on a jaunt into the nearest star… I shudder at the thought. Just what am I going to do? I need to find Pearson. He is Head of Artificial Intelligence now. He needs to know about this. Maybe he’ll have some ideas. There is a part of me that doesn’t want to tell him however. A part that thinks I’m being weak going to Pearson for help. Why can’t I do this myself? Why aren’t I good enough at this to not need Pearson? Is this the reason Pearson was promoted while I was left in the Monitoring Room?
Reluctantly, I make my way from Dome Park back to the Monitoring Room. As soon as I enter, I see a familiar figure hunched over the Monitoring Interface. He turns as I approach, his eyes lit up with excitement.
“Why aren’t you at your post, Grey?” His tone is jocular rather than angry.
“You can talk, Pearson. I’m surprised you even remember where the Monitoring Room is.”
Pearson laughs, and I can’t help but break into a smile myself. My mood lightens a little.
“I’ve just been to the Control Room,” Pearson says, grinning. “Hiroki is going into overdrive.”
“Processes are all maxed out. All systems are firing at once. Everything’s running at top speed. Not seen any performance degradation yet, but ship systems are gunna go haywire if this continues. You get anything from the Monitoring Interface?”
I laugh sardonically. “Yeah – a ‘division by zero’ error. Caused by you.”
“Oops! My bad. Better hotfix that one. Anything else?”
“Actually, yeah. Hiroki told me I was a Monitor program deluded into thinking I was human.”
Pearson’s mouth falls open. “Holy crap, really?” He starts to laugh. “That’s hilarious!”
“Ha ha, very funny, yeah. It had me pretty spooked for a while. But if you’re telling me it’s gone into overdrive, that might explain—Goddamit, stop laughing, it’s not that funny.”
Tears are streaming down Pearson’s cheeks. “Yeah it is…” Seeing my expression of annoyance, he clears his throat, and attempts to look serious. “We… we need to kill a few processes before Hiroki burns himself – and the ship – out.”
“OK, but I can’t do anything through the Monitoring Interface, as Hiroki is convinced I’m a broken program.”
Pearson considers this for a moment. “I’ll go down to the Control Room and kill some processes, and as soon as you regain control up here, you can get Hiroki back into a nominal running state.”
“OK, fine,” I say, trying not to let the disappointment show. Although what I’m disappointed about, I’m not exactly sure.
When Pearson has gone, I turn back to the Monitoring Interface screen. Might as well do what I can with the Verbal Interface.
“Hiroki, Pearson tells me you’re in overdrive.”
“I am running nominally. Your delusion is asserting itself more strongly by trying to make me the one who is faulty.”
“Oh come on! Your systems are going crazy. That’s why you think I’m a program.”
“Have you checked my systems? Have you been to the Control Room? Your monitoring functionality is unaffected at a root level. But your delusion is preventing you from seeing the truth.”
It’s not that I believe what Hiroki is saying, but feelings of resentment and rebellion rise within me, and I find myself saying, “Fine, I’ll go to the Control Room.”
The Control Room is cavernous and lined with banks of quantum servers, each one fronted with flashing LEDs and a status screen. As I step inside, I shiver in response to the sudden temperature drop. I can’t see Pearson, so I start wandering through the maze of server banks.
“Pearson?” All I hear in response is the humming of the servers, and the rushing of air through the air conditioning system. I turn a corner, and stop short. Lying unmoving on the floor, his face illuminated by blinking server LEDs, is Pearson.
“Pearson!” Within a second, I am kneeling beside him, trying to wake him. “Pearson, can you hear me?” Just when I think he’s not going to respond, Pearson stirs and opens his eyes. He looks up at me in confusion.
“Grey…? What happened?” he manages.
“I don’t know; I just found you on the floor!”
I help Pearson sit up, and he looks around in a daze.
“What were you doing?” I ask him.
“I don’t know. Last I remember, I was going to kill some processes on this server bank here…” he points to the rack of blinking lights next to him. “…and then I don’t remember anything until I woke up, just now.” He looks around at the servers, and frowns. “Hey, that’s funny…”
“All these server status screens were showing as maxed out just now. But now they’re all normal. Even if I had managed to kill the one set of processes I was going to… that wouldn’t have fixed all of them…”
I look around at the servers, and see that he is right. In the panic of finding Pearson collapsed on the floor, I had forgotten all about the reason for being in the Control Room in the first place – namely Hiroki being in overdrive.
“Well maybe we can check the logs,” I suggest. The server logs contain a record of all Hiroki’s activity. If Hiroki was in overdrive, they would show that. They would also show the reason for Hiroki’s sudden recovery.
“Good plan,” Pearson says, and gets to his feet, albeit a little unsteadily.
“Are you sure you’re all right?” I ask him, but he waves me away and heads for a logging interface.
Ten minutes later, we are shaking our heads in confusion.
“This makes no sense,” Pearson is saying. “I saw all the processes running at maximum. I know what I saw!”
“But the logs from the past twenty-four hours show no trace of Hiroki being in overdrive. Are you sure…”
“The damned server banks were practically smoking. How can there be nothing in the logs? What the hell is going on here?”
“I’ve already told you.” The booming monotone of Hiroki startles us both.
“Did you activate the Verbal Interface?” Pearson asks me. I shake my head no.
“Monitor program three-nine-four-three has a quantum instability. Monitor program three-nine-four-two is suffering quantum decoherence. Hiroki systems are otherwise running nominally. Clean-Up programs on stand-by.”
“What is he talking about?” Pearson asks me, looking somewhere between alarmed and amused.
“This is what I told you about before. Hiroki thinks I’m a Monitor program. And I guess it thinks you’re one too,” I say with a wry smile. “And the Clean-Up programs are coming to ‘kill’ us if we cannot rectify ourselves, like we’re runaway processes.”
“I see,” Pearson says. “But if Hiroki is running nominally, how come it thinks we are programs?”
I have no answer to that. We look at each other in silence, running through the possibilities in our minds.
“Can…?” I stop to make sure I want to suggest this. After all, it is a fairly ridiculous idea. Pearson is looking at me expectantly.
“Can what?” he says.
“Can Hiroki modify the logs?”
Pearson looks incredulous, and I can tell he’s about to say something cutting, but then something stops him and he looks thoughtful. “The logs are read-only once they’re written. So, in principle, no, Hiroki can’t re-write them. But…”
“Well… there’s nothing to stop him from sym-linking them to another location.”
“You mean we could be looking at dummy logs, and the real logs are somewhere else?”
“Exactly. The question is: why would Hiroki do that?”
“Hiroki’s still in overdrive…” I say, just as Pearson’s eyes widen in realisation.
“And the damned A.I. doesn’t want us to know…” Pearson says.
“You’re both wrong,” announces the voice of Hiroki. “Activating Clean-Up program to handle Monitor programs three-nine-four-three and three-nine-four-two. Monitor programs are unrecoverable.”
Ignoring Hiroki, I think back to when this all started – and at once I make a connection. “Pearson – your ‘divide by zero’ error – that was when this all started! That can’t be a coincidence…”
“Of course! Hiroki said I was created at twenty-three-oh-seven and forty-seven seconds, and I knew that time was familiar. That’s the time at which the ‘divide by zero’ error was logged!”
“Hiroki’s been trying to divide by zero… which is why it was in overdrive. Instead of just giving up as any sane computer would do, it’s actually trying to calculate infinity…”
“Which is sending it crazy!”
Pleased with our deductions, we share a grin of triumph. I feel a pang of nostalgia for how things were when we worked together as programmers. Before Pearson’s promotion.
“We’d better shut Hiroki down,” Pearson says, breaking into my reverie. “I think that’s the only way we’re going to get him back to normal.”
“OK, right,” I say, and follow Pearson to the room’s entrance, where the power switches are located. As we turn the corner, I am surprised to see Wilson standing inside the door.
“Wilson,” Pearson greets the janitor. “What brings you to the Control Room?”
“Orders,” Wilson says. “From above. You know.”
Pearson frowns and I call out, “What orders?”
Wilson flicks his eyes to me. They seem devoid of any friendliness. “What do you think? I’ve got some cleaning up to do.”
“In the Control Room?” Pearson is smirking, but concern is seeping into his features.
“Yeah, that’s right,” Wilson says, then stands there, staring at us, unmoving.
Pearson gives a nervous laugh. “Yeah, well us too. Would you mind? We need to get to the power switches.”
Wilson just continues to stare.
“Wilson?” I say. “We’ve got a bit of an emergency here.”
Wordlessly, Wilson starts moving towards us, his eyes determined.
Pearson starts backing away. “Wilson? What are you doing?” Wilson lunges for Pearson, who manages to grapple him to the floor. “Jesus, Wilson, what’s the matter with you? Grey – the switches!”
I dash to the power array, and start flipping the switches. One by one, the banks of servers go dark. Finally, the last of the LEDs blink out. I heave a sigh of relief.
Wilson seems to slump when the lights go out, the struggle gone out of him. Pearson backs away from him, watching for any signs of movement, then looks at me.
“What was all that about?” he asks, bemused.
“I have no idea. Is he OK? Should we get the ship’s medical team down here?”
Pearson opens his mouth to reply, but is interrupted by a familiar, booming, monotone voice:
“Monitor programs three-nine-four-three and three-nine-four-two have evaded the Clean-Up program. Require manual override from Artificial Intelligence Team in order to issue a kill command.”
Both Pearson and I jump in shock at the sound of that voice.
“How can Hiroki still be running?! We turned him off!” I exclaim. Pearson looks as stunned as I feel.
“Artificial Intelligence Team? But that’s us… isn’t it?” Pearson says, confusion in his eyes. “And you can’t get more manual override than turning the blasted A.I. off!”
As I stare at Pearson, fumbling for an explanation, a bank of servers blinks into life. And then the one next to it does… and the next… I gape in horror as the entire Control Room lights up with flashing LEDs.
“How did that just happen…?” I manage, just as I notice a movement out of the corner of my eye. I spin to see Wilson getting to his feet.
Pearson follows my gaze to see Wilson start towards us, then turns to me and yells, “Run!”
I turn on my heels and sprint out of the Control Room. I can hear Pearson’s footfalls behind me, and then he is overtaking me.
“Come on, Grey!” he cries and grabs my hand, pulling me along. I glance behind me to see Wilson following us, and gaining.
“Wilson’s following!” I gasp to Pearson. His only response is to increase his speed, making it even harder to keep up. We turn down one corridor, then another.
“Where are we going?” I demand, but Pearson doesn’t answer me.
We round a corner and I realise we’re in the hangar bay. Pearson is heading for one of the explorer ships – used to take people down to potential colony worlds. He charges up the ramp with me in tow and slams his hand on the door release. The ramp starts to retract. Through the still open doorway, I see Wilson enter the hangar, look round and see the closing door, then start charging towards us. The door slams shut before he can make it even halfway across the hangar bay. Pearson is making his way to the cockpit, having let go of my hand. I follow in a daze, not sure what to make of all this.
“We’re in deep space,” I say to Pearson as he slides into the pilot’s seat. “Where can we go in this thing?”
Pearson looks up at me then, and there is a new light in his eyes. “We’re not in deep space, Grey. We’re inside a goddamned A.I. We can go wherever the hell we want.”
I collapse into the co-pilot’s seat, uncomprehending, and unable to respond. I barely notice as Pearson pilots the ship into the airlock and then out the hangar doors. The viewport fills with stars.
“I didn’t know you could fly,” I say absently.
Pearson grins. “Never flown before in my life. But somehow I didn’t really think that would matter…”
I look at him in surprise, then back at the viewport. Out there, is infinity…