Описание книги
В настоящей книге применяется дедуктивный подход к программированию, основанный на объединении программ с абстрактными математическими теориями, которые обеспечивают их работу.
Представлены вместе описания этих теорий, алгоритмы, записанные с точки зрения этих теорий, а также теоремы и леммы, описывающие их свойства. Реализация алгоритмов на реальном языке программирования является центральной темой книги.
Эта книга предназначена для тех, кто стремится глубже понять суть программирования, будь то профессиональные программисты или ученые и инженеры, для которых программирование составляет важную часть их профессиональной деятельности. Книга предназначена для чтения от начала и до конца. Читатели смогут достичь понимания материала, только изучая код, доказывая леммы и выполняя упражнения.
Об авторах
Александр Степанов изучал математику в Московском государственном университете с 1967 по 1972 гг. Он работает в области программирования с 1972 года: сначала в Советском Союзе, а после эмиграции в 1977 году в Соединенных Штатах. Он занимался программированием операционных систем, инструментов программирования, компиляторов и библиотек. Его работа над началами программирования поддерживалась General Electric, Политехническим институтом Бруклина, AT&T, HP, SGI, и, с 2002 года, - Adobe. В 1995 году он получил премию "Excellence in Programming" (от Dr. Dobb's Journal) за проект стандартной библиотеки шаблонов C++.
Пол Мак-Джоунс изучал прикладную математику в Калифорнийском университете, Беркли, с 1967 до 1971 гг. С 1967 года он занимался программированием в областях операционных систем, сред программирования, систем обработки транзакций и приложений для промышленных предприятий и потребительского рынка. Он работал в Калифорнийском университете, IBM, Xerox, Tandem, DEC, и, с 2003 года, - в Adobe. В 1982 году он и его соавторы получили премию "ACM Programming Systems and Languages Paper" за статью "Диспетчер по восстановлению системы управления базами данных System R".