В 1928 году А. А. Ляпунов закончил среднюю школу и поступил в Московский университет. В 30-х годах он был учеником и сотрудником известного физика академика П. П. Лазарева, а с 1932 года находился под влиянием академика Н. Н. Лузина, возглавлявшего в те годы Московскую математическую школу. Под руководством Н. Н. Лузина он получает первый математический результат в области дескриптивной теории множеств. Дескриптивная теория множеств становится и до конца жизни остается одним из основных направлений его научной деятельности. С 1934 по 1942 год А. А. Ляпунов был младшим, а затем старшим научным сотрудником Математического института им. В. А. Стеклова, где в 1939 году он защитил кандидатскую диссертацию на тему "Об униформизации аналитических дополнений".
Будучи сотрудником П. П. Лазарева, Алексей Ляпунов интересовался проблемами применения математических методов к естественным наукам. В 1938 году он опубликовал совместно с Ю. Я. Керкисом результаты статистической обработки генетических экспериментов. Инициаторами этой работы были академики Н. И. Вавилов и А. Н. Колмогоров. В предвоенные годы Алексей Андреевич занимается теорией вероятностей и ее приложениями. Из работ этого периода следует отметить опубликованное в 1942 году исследование "О выборе из конечного числа конкурирующих гипотез". Ценность этой работы была понята значительно позднее (в настоящее время она используется в математической статистике, вероятностных методах распознавания образов и т. д.), примерно в то же время (1939 год) он начинает свою педагогическую работу в качестве доцента Педагогического института.
В 1942 году А. А. Ляпунов призывается на военную службу и направляется в пехотное училище, которое заканчивает в 1943 году. С 1943 по 1945 год он в должности командира топографического взвода в артиллерии принимает участие в боях на 4-м Украинском, 3-м Белорусском и 1-м Прибалтийском фронтах.
Находясь на фронте, А. А. Ляпунов не прекращал математические исследования. Здесь он занимался вопросами, связанными с точностью артиллерийской стрельбы, и примечательно, что для их решения он широко привлекал аппарат математической статистики.
В марте 1945 года Алексей был отозван из действующей армии для преподавательской работы в Артиллерийской академии им. Ф. Э. Дзержинского, где проработал до 1952 года. Одновременно А. А. Ляпунов выполняет серьезные работы по математике, что позволило ему в 1949 году успешно защитить докторскую диссертацию.
В течение 1949–1951 годов А. А. Ляпунов работал в Геофизическом институте АН СССР, где проводил исследования по прогнозированию землетрясений и обработке гравитационных наблюдений. С 1951 года он работал в Математическом институте АН СССР им. В. А. Стеклова, а с 1953 года — в Институте прикладной математики, возглавляя в этих институтах работы по программированию. Он одним из первых оценил возможность цифровых машин для решения задач невычислительного характера. В Математическом институте А. А. Ляпунов организовал семинар, сразу привлекший к себе внимание, а с осени 1952 года он стал работать на механико-математическом факультете МГУ в качестве профессора кафедры вычислительной математики, где организовал семинар по программированию.
В 1953 году А. А. Ляпунов создает операторный метод в программировании, с которого ведет начало теоретическое программирование. В основе операторного метода лежит аппарат логических схем, который включает основные формализмы, описывающие алгоритмы. В рамках этого метода были определены:
→ программа;
→ процесс ее выполнения;
→ функция, реализуемая программой;
→ эквивалентность программ;
→ эквивалентные преобразования программ;
→ схема программы;
→ эквивалентность схем и их преобразования.
Аппарат (язык) логических схем программ, предложенный А. А. Ляпуновым, вырос из блок-схемного описания программы, применявшегося в то время в практике программирования. Блок-схемное описание предписывало перед программированием алгоритма деление его на части — блоки с установлением связей между ними. Однако понятие самого блока было расплывчатым, а поэтому и не могли быть четко описаны ни правила выделения блоков, ни правила соединения блоков в схему. Аппарат логических схем был с самого начала нацелен на устранение этих недостатков. Для него характерно предварительное и не зависящее от конкретного алгоритма выделение частей, из которых составляются алгоритмы программирования — это выделение осуществляется по признаку функциональной нагрузки, которую несет та или иная часть алгоритма. Так появились понятие оператора (термин "оператор" введен Ляпуновым), осуществляющего акт обработки информации, и понятие логического условия, которое осуществляет акт проверки информации, чтобы определить порядок выполнения операторов. Логическая схема, описывающая алгоритм, "представляет собой строку из операторов и логических условий, называемых членами схемы. После каждого логического условия начинается стрелка, оканчивающаяся либо перед одним из членов схемы, либо в конце строки".
Читать дальше