Однако программы, ведавшие деятельностью на поверхности, более или менее сохранились, и вскоре на скалистом выступе ледяного полуострова мелкого метанового моря начала функционировать Фабрика N_1 со всеми своими основными функциями. Компьютеры вновь созданной фабрики скопировали основную программу и стали выполнять первую задачу - создание Фабрики N_2. Соответственно контрольная программа Фабрики N_1 запросила у корабельной базы данных копию программы "Как построить Фабрику"; в этом файле заключался целый набор субфайлов "Как сделать машины, необходимые для строительства Фабрики", то есть роботов. И вот тут начались серьезные сбои.

У роботов имелись небольшие внутренние процессоры, которые можно было по радио перепрограммировать с фабрики, чтобы робот мог выполнить очередное задание. Это позволяло роботам действовать автономно под местным контролем и освобождало центральные компьютеры, которые ожидали сигнала: "Выполнено. Следующее задание?" Поэтому в роботах имелись специальные программы, которые обеспечивали обмен информацией между компьютерами фабрики и процессорами роботов.

При копировании программы "Как сделать Фабрику" были задействованы искаженные цепи: программа пошла не в центральную систему Фабрики, а в процессоры многочисленных роботов, которых она касалась, причем каждый робот воспринимал свою часть программы. В базе данных самой Фабрики никаких копий этой программы не было сделано. И что еще хуже, в этом процессе стерся оригинал программы, находившийся в корабле. И теперь программа "Как сделать робот типа Фред [ФРЕД, FRED, Friendly Robot Educational Device - самообучающийся робот]" содержалась только в роботах типа Фред на поверхности. И то же самое оказалось справедливо для всех остальных типов.

И вот когда контрольная программа фабрики передала приказ исполнительной программе начать создание производственных роботов, а исполнительная программа передала этот приказ системе управления базой данных, система управления обнаружила, что не может найти эту информацию.



5 из 333