Список важных публикаций по теоретической информатике - List of important publications in theoretical computer science

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

Некоторые причины, по которым конкретная публикация может считаться важной:

  • Создатель темы - Публикация, создавшая новую тему
  • Прорвать - Публикация, существенно изменившая научные знания
  • Влияние - Публикация, которая существенно повлияла на мир или оказала огромное влияние на преподавание теоретической информатики.

Вычислимость

Cutland's Вычислимость: введение в теорию рекурсивных функций (Кембридж)

  • Катленд, Найджел Дж. (1980). Вычислимость: введение в теорию рекурсивных функций. Издательство Кембриджского университета. ISBN  978-0-521-29465-2.

Обзор этого раннего текста, сделанный Карлом Смитом из Университета Пердью (в Обзоры Общества промышленной и прикладной математики),[1] сообщает, что это текст с «соответствующей смесью интуиции и строгости… в изложении доказательств», который представляет »фундаментальные результаты классической теории рекурсии [RT]… в стиле… доступном для студентов с минимальным математическим образованием ". Хотя он заявляет, что он «станет отличным вводным текстом для вводного курса в [RT] для студентов-математиков», он предлагает, чтобы «преподаватель был подготовлен к существенному расширению материала…», когда он используется со студентами, изучающими информатику (учитывая недостаток материала о приложениях RT в этой области).[1]

Разрешимость теорий и автоматов второго порядка на бесконечных деревьях

Описание: В документе представлены древовидный автомат, расширение автоматы. Древовидный автомат имел множество применений для доказательства правильность программ.

Конечные автоматы и проблемы их решения

Описание: Математическая обработка автоматы, доказательство основных свойств и определение недетерминированный конечный автомат.

Введение в теорию автоматов, языки и вычисления

Описание: Популярный учебник.

О некоторых формальных свойствах грамматик

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

О вычислимых числах в приложении к проблеме Entscheidungs.

Описание: Эта статья устанавливает пределы информатики. Он определил Машина Тьюринга, модель для всех вычислений. С другой стороны, она доказала неразрешимость проблема остановки и Entscheidungsproblem и тем самым нашел пределы возможных вычислений.

Рекурсивные функции

Первый учебник по теория рекурсивных функций. Книга выдержала множество изданий и принесла Петеру Кошута от Венгерский правительство.[2] Отзывы Рафаэль М. Робинсон и Стивен Клини похвалил книгу за то, что она дает учащимся эффективное начальное введение.[3]

Представление событий в нервных сетях и конечных автоматах

Описание: эта статья представлена конечные автоматы, обычные выражения, и обычные языки, и установили их соединение.

Теория вычислительной сложности

Арора и Барак Вычислительная сложность и Голдрайха Вычислительная сложность (оба Кембриджа)

  • Санджив Арора и Боаз Барак, «Вычислительная сложность: современный подход», Cambridge University Press, 2009 г., 579 страниц, твердый переплет
  • Одед Голдрайх, "Вычислительная сложность: концептуальная перспектива", Cambridge University Press, 2008 г., 606 страниц, твердый переплет

Помимо уважаемой прессы, представившей эти последние тексты, они получили очень положительные отзывы в Новости ACM SIGACT Дэниел Апон из Университета Арканзаса,[4] который определяет их как «учебники для курса теории сложности, предназначенные для первых выпускников ... или ... продвинутых студентов бакалавриата ... [с] многочисленными уникальными сильными сторонами и очень немногими недостатками», и заявляет, что оба они:

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

Рецензент отмечает, что в [Ароре и Бараке] делается определенная попытка включить очень свежий материал, в то время как Голдрайх больше фокусируется на разработке контекстной и исторической основы для каждой представленной концепции », и что он« аплодирует [s ] всем… авторам за их выдающийся вклад ».[4]

Машинно-независимая теория сложности рекурсивных функций

Описание: Аксиомы Блюма.

Алгебраические методы для интерактивных систем доказательства

Описание: Эта статья показала, что PH содержится в IP.

Сложность процедур доказательства теорем

Описание: В этой статье представлена ​​концепция NP-Полнота и доказал, что Проблема логической выполнимости (SAT) - это NP-Complete. Обратите внимание, что аналогичные идеи были независимо развиты несколько позже Леонид Левин в "Левин, Проблемы универсального поиска. Проблемы передачи информации 9 (3): 265–266, 1973".

Компьютеры и непреодолимость: руководство по теории NP-полноты

Описание: Основное значение этой книги связано с ее обширным списком из более чем 300 NP-Complete проблемы. Этот список стал общей ссылкой и определением. Хотя книга вышла всего через несколько лет после определения концепции, такой обширный список был найден.

Степень сложности вычисления функции и частичное упорядочение рекурсивных множеств

Описание: Этот технический отчет был первой публикацией, рассказывающей о том, что позже было переименовано. вычислительная сложность[5]

Насколько хорош симплексный метод?

  • Виктор Клее и Джордж Дж. Минти
  • Клее, Виктор; Минти, Джордж Дж. (1972). «Насколько хорош симплексный алгоритм?». В кальяне, Овед (ред.). Неравенства III (Труды Третьего симпозиума по неравенству, проходившего в Калифорнийском университете, Лос-Анджелес, Калифорния, 1–9 сентября 1969 г., посвященного памяти Теодора С. Моцкина). Нью-Йорк-Лондон: Academic Press. С. 159–175. МИСТЕР  0332165.CS1 maint: ref = harv (связь)

Описание: Построен куб Клее – Минти в измерении.D, чьи 2D каждый угол посещают Данциг с симплексный алгоритм за линейная оптимизация.

Как построить случайные функции

Описание: Эта статья показала, что существование односторонние функции приводит к вычислительная случайность.

IP = PSPACE

Описание: IP - это класс сложности, характеристика которого (на основе интерактивные системы доказательства ) сильно отличается от обычных вычислительных классов, ограниченных во времени / пространстве. В этой статье Шамир расширил методику предыдущей статьи Лунда и др., Чтобы показать, что PSPACE содержится в IP, и, следовательно, IP = PSPACE, так что каждая проблема одного класса сложности разрешима в другом.

Сводимость комбинаторных задач

  • Р. М. Карп
  • В редакторах Р. Э. Миллера и Дж. У. Тэтчер, Сложность компьютерных вычислений, Plenum Press, New York, NY, 1972, стр. 85–103.

Описание: Эта статья показала, что 21 различная проблема находятся NP-Complete и показал важность концепции.

Сложность знаний интерактивных систем доказательства

Описание: В этой статье представлена ​​концепция нулевое знание.[6]

Письмо Гёделя фон Нейману

Описание: Гёдель обсуждает идею эффективного универсального средства доказательства теорем.

О вычислительной сложности алгоритмов

Описание: Эта статья дала вычислительная сложность его имя и семя.

Дорожки, деревья и цветы

Описание: существует алгоритм полиномиального времени для поиска максимального совпадения в недвудольном графе и еще один шаг к идее вычислительная сложность. Для получения дополнительной информации см. [2].

Теория и приложения секретных функций

Описание: Эта статья создает теоретическую основу для функции люка и описал некоторые из их приложений, например, в криптография. Обратите внимание, что концепция секретных функций была представлена ​​в «Новых направлениях криптографии» шестью годами ранее (см. Раздел V «Взаимосвязи проблем и лазейки»).

Вычислительная сложность

Описание: Введение в теория сложности вычислений, книга объясняет авторскую характеристику P-SPACE и другие результаты.

Интерактивные доказательства и твердость приближающих клик

Вероятностная проверка доказательств: новая характеристика NP

Проверка доказательства и трудность задач аппроксимации

Описание: в этих трех статьях был установлен тот удивительный факт, что некоторые проблемы в NP остаются сложными даже тогда, когда требуется только приближенное решение. Видеть Теорема PCP.

Внутренняя вычислительная сложность функций

Описание: Первое определение класса сложности P. Одна из основополагающих статей теории сложности.

Алгоритмы

«Машинная программа для доказательства теорем»

Описание: Алгоритм DPLL. Базовый алгоритм для SAT и других NP-Complete проблемы.

«Машинно-ориентированная логика, основанная на принципе разрешения»

Описание: Первое описание разрешающая способность и объединение используется в автоматическое доказательство теорем; используется в Пролог и логическое программирование.

«Задача коммивояжера и минимальные остовные деревья»

Описание: Использование алгоритма для минимальное остовное дерево как алгоритм аппроксимации для NP-Complete задача коммивояжера. Алгоритмы приближения стал обычным методом решения проблем NP-Complete.

«Полиномиальный алгоритм в линейном программировании»

Описание: Долгое время не существовало доказуемо полиномиального алгоритма времени для линейное программирование проблема. Хачиян был первым, кто предоставил алгоритм, который был полиномиальным (и не только был достаточно быстрым в большинстве случаев, как предыдущие алгоритмы). Потом, Нарендра Кармаркар представил более быстрый алгоритм на: Нарендра Кармаркар, «Новый алгоритм полиномиального времени для линейного программирования», Комбинаторика, т. 4, вып. 4, стр. 373–395, 1984.

«Вероятностный алгоритм проверки простоты»

Описание: В документе представлены Тест на простоту Миллера-Рабина и изложил программу рандомизированные алгоритмы.

«Оптимизация моделированием отжига»

Описание: В этой статье описывается имитация отжига что сейчас является очень распространенной эвристикой для NP-Complete проблемы.

Искусство программирования

Описание: Это монография есть четыре тома, посвященные популярным алгоритмам. Алгоритмы написаны на английском и СМЕШИВАНИЕ язык ассемблера (или MMIX язык ассемблера в более поздних выпусках). Это делает алгоритмы понятными и точными. Однако использование язык программирования низкого уровня разочаровывает некоторых программистов, более знакомых с современными структурное программирование языки.

Алгоритмы + Структуры данных = Программы

Описание: ранняя и влиятельная книга по алгоритмам и структурам данных, реализованная на языке Паскаль.

Разработка и анализ компьютерных алгоритмов

Описание: Один из стандартных текстов по алгоритмам примерно за 1975–1985 гг.

Как решить это на компьютере

Описание: объясняет Почемуs алгоритмов и структур данных. Объясняет Творческий процесс, то Линия рассуждений, то Факторы дизайна за инновационными решениями.

Алгоритмы

Описание: очень популярный текст по алгоритмам в конце 1980-х годов. Он был более доступным и читабельным (но более элементарным), чем Ахо, Хопкрофт и Ульман. Есть более свежие выпуски.

Введение в алгоритмы

Описание: Этот учебник стал настолько популярным, что фактически стал стандартом обучения базовым алгоритмам. Первое издание (с первыми тремя авторами) вышло в 1990 году, второе - в 2001 году, а третье - в 2009 году.

Алгоритмическая теория информации

«О таблицах случайных чисел»

Описание: Предложен вычислительный и комбинаторный подход к вероятности.

«Формальная теория индуктивного вывода»

Описание: Это было начало алгоритмическая теория информации и Колмогоровская сложность. Обратите внимание, что хотя Колмогоровская сложность назван в честь Андрей Колмогоров, он сказал, что семена этой идеи связаны с Рэй Соломонов. Андрей Колмогоров внес большой вклад в эту область, но в более поздних статьях.

«Алгоритмическая теория информации»

Описание: Введение в алгоритмическая теория информации одним из важных людей в этом районе.

Теория информации

«Математическая теория коммуникации»

Описание: Эта статья создала область теория информации.

«Коды обнаружения и исправления ошибок»

Описание: В этой статье Хэмминг представил идею код исправления ошибок. Он создал Код Хэмминга и Расстояние Хэмминга и разработали методы доказательства оптимальности кода.

«Метод построения кодов минимальной избыточности»

Описание: Кодирование Хаффмана.

«Универсальный алгоритм последовательного сжатия данных»

Описание: LZ77 алгоритм сжатия.

Элементы теории информации

Описание: популярное введение в теорию информации.

Формальная проверка

Присвоение смысла программам

Описание: знаменательная статья Роберта Флойда «Присвоение значений программам» вводит метод индуктивных утверждений и описывает, как программа, аннотированная утверждениями первого порядка, может быть продемонстрирована как удовлетворяющая спецификации до и после условия - в документе также вводятся концепции инварианта цикла. и условия проверки.

Аксиоматическая основа компьютерного программирования

Описание: статья Тони Хоара «Аксиоматическая основа компьютерного программирования» описывает набор правил вывода (то есть формального доказательства) для фрагментов языка программирования, подобного Алголу, описанных в терминах (которые сейчас называются) троек Хора.

Защищенные команды, неопределенность и формальная производная программ

Описание: В статье Эдсгера Дейкстры «Защищенные команды, недетерминированность и формальная деривация программ» (расширенная его учебником для аспирантов 1976 года «Дисциплина программирования») предлагается, чтобы вместо формальной проверки программы после того, как она была написана (т. Е. Постфактум), программы и их формальные доказательства должны разрабатываться рука об руку (с использованием преобразователей предикатов для постепенного уточнения самых слабых предварительных условий), методом, известным как программное (или формальное) уточнение (или вывод), или иногда «корректность по построению».

Доказательство утверждений о параллельных программах

Описание: статья, в которой представлены доказательства инвариантности параллельных программ.

Техника аксиоматического доказательства для параллельных программ I

Описание: В этой статье, наряду с работой тех же авторов «Проверка свойств параллельных программ: аксиоматический подход. Commun. ACM 19 (5): 279–285 (1976)», был представлен аксиоматический подход к верификации параллельных программ.

Дисциплина программирования

Описание: Классический учебник Эдсгера Дейкстры для аспирантов «Дисциплина программирования» расширяет его более раннюю статью «Защищенные команды, недетерминированность и формальное создание программ» и твердо устанавливает принцип формального получения программ (и их доказательств) на основе их спецификации.

Денотационная семантика

Описание: Денотационная семантика Джо Стоя - это первое (для аспирантов) целое изложение математического (или функционального) подхода к формальной семантике языков программирования (в отличие от операционного и алгебраического подходов).

Временная логика программ

  • Пнуэли, А. (1977). «Временная логика программ». 18-й ежегодный симпозиум по основам компьютерных наук (SFCS 1977). IEEE. С. 46–57. Дои:10.1109 / SFCS.1977.32.

Описание: Использование темпоральная логика был предложен как метод формальной проверки.

Определение свойств корректности параллельных программ с помощью фиксированных точек (1980)

Описание: проверка модели была представлена ​​как процедура для проверки корректности параллельных программ.

Сообщая последовательные процессы (1978)

Описание: Тони Хоара (оригинал) связь последовательных процессов (CSP) статья представляет идею параллельных процессов (то есть программ), которые не разделяют переменные, а вместо этого взаимодействуют исключительно путем обмена синхронными сообщениями.

Расчет взаимодействующих систем

Описание: В статье Робина Милнера A Calculus of Communicating Systems (CCS) описывается алгебра процессов, позволяющая формально рассуждать о системах параллельных процессов, что было невозможно в более ранних моделях параллелизма (семафоры, критические секции, исходный CSP).

Разработка программного обеспечения: строгий подход

Описание: Учебник Клиффа Джонса «Разработка программного обеспечения: строгий подход» - это первое полномасштабное изложение Венского метода разработки (VDM), разработанного (в основном) в исследовательской лаборатории IBM в Вене за предыдущее десятилетие и сочетающего в себе идею программы. доработка согласно Dijkstra с уточнением (или реификацией) данных, посредством которого алгебраически определенные абстрактные типы данных формально преобразуются во все более «конкретные» представления.

Наука программирования

Описание: Учебник Дэвида Гриса «Наука программирования» описывает самый слабый метод предусловия Дейкстры для формального вывода программ, за исключением гораздо более доступного, чем более ранний метод Дейкстры. Дисциплина программирования.

Он показывает, как создавать программы, которые работают правильно (без ошибок, кроме ошибок ввода). Это делается путем демонстрации того, как использовать выражения предикатов предусловия и постусловия и методы доказательства программ для управления способом создания программ.

Все примеры в книге небольшие и явно академические (в отличие от реальных). Они подчеркивают базовые алгоритмы, такие как сортировка и слияние, а также манипуляции со строками. Подпрограммы (функции) включены, но не рассматриваются среды объектно-ориентированного и функционального программирования.

Связь последовательных процессов (1985)

Описание: Учебник Тони Хоара по взаимодействующим последовательным процессам (CSP) (в настоящее время является третьим наиболее цитируемым справочником по информатике за все время) представляет обновленную модель CSP, в которой взаимодействующие процессы даже не имеют программных переменных и которая, как CCS, позволяет системам процессов рассуждать формально.

Линейная логика (1987)

Описание: Жирара линейная логика был прорывом в разработке систем типизации для последовательных и параллельных вычислений, особенно для систем типизации с учетом ресурсов.

Расчет мобильных процессов (1989)

Описание: Эта статья знакомит с Пи-исчисление, обобщение CCS, обеспечивающее мобильность процессов. Исчисление чрезвычайно простое и стало доминирующей парадигмой в теоретическом изучении языков программирования, систем набора текста и логики программ.

Обозначение Z: Справочное руководство

Описание: Классический учебник Майка Спайви "Обозначение Z: справочное руководство" обобщает формальный язык спецификаций. Обозначение Z которые, хотя и были созданы Жаном-Раймоном Абриалем, развивались (в основном) в Оксфордском университете за предыдущее десятилетие.

Коммуникация и параллелизм

Описание: Учебник Робина Милнера «Коммуникация и параллелизм» представляет собой более доступное, хотя и все еще технически продвинутое, изложение его более ранних работ по CCS.

Практическая теория программирования

Описание: актуальная версия Предикативное программирование. Основа для МАШИНА. Hoare UTP. Самые простые и всесторонние формальные методы.

Рекомендации

  1. ^ а б Смит, Карл Х. (1982). «Вычислимость: Введение в теорию рекурсивных функций (Н. Дж. Катленд)». SIAM Обзор. 24: 98. Дои:10.1137/1024029.
  2. ^ "Рожа Петер: основатель теории рекурсивных функций". Женщины в науке: выбор из 16 авторов. Суперкомпьютерный центр Сан-Диего. 1997 г.. Получено 23 августа 2017.
  3. ^ «Рецензии на книги Рожи Петер». www-history.mcs.st-andrews.ac.uk. Получено 29 августа 2017.
  4. ^ а б Дэниел Апон, 2010, "Совместное рассмотрение Вычислительная сложность: концептуальная перспектива Одед Гольдрайх… и Вычислительная сложность: современный подход Санджив Арора и Боаз Барак… " Новости ACM SIGACT, Vol. 41 (4), декабрь 2010 г., стр. 12–15, см. [1], по состоянию на 1 февраля 2015 г.
  5. ^ Шаша, Деннис, "Интервью с Майклом О. Рабином", Коммуникации ACM, Vol. 53 № 2, страницы 37–42, февраль 2010 г.
  6. ^ SIGACT 2011