Предлагается алгоритм синтеза линейных программ на основе заданной спецификации. Алгоритм позволяет добиться высокой производительности за счет предварительной подготовки специальных структур данных. Затраты на вывод и извлечение программы характеризуются линейной функцией от количества атрибутов и функциональных связей, объявленных в спецификации. Приведены результаты опытного сравнения с существующими алгоритмами