Безграничный недетерминизм - Unbounded nondeterminism

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

Справедливость

Обсуждение неограниченного недетерминизма имеет тенденцию вовлекаться в обсуждение справедливость. Основная концепция состоит в том, что все пути вычислений должны быть «справедливыми» в том смысле, что если машина входит в состояние бесконечно часто, она должна принимать все возможные переходы из этого состояния. Это равносильно требованию, чтобы машина гарантированно обслуживала запрос, если это возможно, поскольку бесконечная последовательность состояний будет разрешена только в том случае, если нет перехода, который приводит к тому, что запрос обслуживается. Точно так же каждый возможный переход должен в конечном итоге произойти в бесконечном вычислении, хотя переход может занять неограниченное количество времени. Эту концепцию следует отличать от местной справедливости подбрасывания "честной" монеты, которая подразумевает, что для любого конечного числа шагов результат всегда может быть орлом, хотя по мере увеличения числа шагов это буду почти наверняка не произойдет.

Пример роли справедливого или неограниченного недетерминизма в слиянии струн был приведен Уильямом Д. Клингером в его диссертации 1981 года. Он определил «честное слияние» двух строк как третью строку, в которой каждый символ каждой строки должен в конечном итоге появиться. Затем он рассмотрел совокупность всех справедливых слияний двух струн. слияние(S, T), предполагая, что это монотонная функция. Затем он утверждал, что слияние(⊥,1ω)⊆ слияние(0,1ω), куда это пустой поток. Сейчас же слияние(⊥,1ω) = {1ω}, так что должно быть 1ω является элементом слияние(0,1ω), противоречие. Он пришел к выводу, что:

Похоже, что ярмарка слияние не может быть записана как программа недетерминированного потока данных, работающая с потоками.

О возможности реализации неограниченного недетерминизма

Эдсгер Дейкстра [1976] утверждал, что невозможно реализовать системы с неограниченным недетерминизмом. По этой причине, Тони Хоар [1978] предположил, что «эффективная реализация должна быть разумно справедливой».

Недетерминированные автоматы

Недетерминированные машины Тьюринга имеют только ограниченный недетерминизм. Точно так же последовательные программы, содержащие охраняемые команды в качестве единственного источника недетерминизма, имеют только ограниченный недетерминизм (Эдсгер Дейкстра [1976]). Вкратце, недетерминизм выбора ограничен. Гордон Плоткин дал доказательство в своей оригинальной статье 1976 года о степенных доменах:

Теперь множество начальных сегментов последовательностей выполнения заданной недетерминированной программы п, начиная с заданного состояния, сформирует дерево. Точки ветвления будут соответствовать точкам выбора в программе. Поскольку в каждой точке выбора всегда есть только конечное число альтернатив, фактор ветвления дерева всегда конечен. То есть дерево окончательное. Сейчас же Лемма Кёнига говорит, что если каждая ветвь финишный дерево конечно, то и само дерево конечно. В данном случае это означает, что если каждая последовательность выполнения п завершается, то есть только конечное число последовательностей выполнения. Итак, если выходной набор п бесконечен, он должен содержать [неопределенное вычисление].

Неопределенность против недетерминированных автоматов

Уильям Клингер [1981] дал следующий анализ приведенного выше доказательства Плоткина:

Это доказательство зависит от предпосылки, что если каждый узел Икс некоторой бесконечной ветви может быть достигнуто некоторым вычислением c, то существует вычисление c который посещает каждый узел Икс на ветке. ... Очевидно, что эта посылка следует не из логики, а, скорее, из интерпретации точек выбора. Эта предпосылка не подходит для недетерминизма прибытия [в прибытии сообщений в модели Актора] из-за конечной задержки [в прибытии сообщений]. Хотя каждый узел в бесконечной ветви должен лежать на ветви с пределом, бесконечная ветвь не обязательно должна иметь предел. Таким образом, существование бесконечной ветви не обязательно подразумевает неконечные вычисления.

Безграничный недетерминизм и невычислимость

Spaan et al. [1989] утверждали, что неограниченно недетерминированная программа может решить проблема остановки; их алгоритм состоит из двух частей, определяемых следующим образом:

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

Вторая часть программы недетерминированно выбирает натуральное число по запросу. Число хранится в переменной, которая инициализируется 0; затем программа неоднократно выбирает, увеличивать ли переменную на единицу или обслуживать запрос. Ограничение справедливости требует, чтобы запрос в конечном итоге был обслужен, поскольку в противном случае возникает бесконечный цикл, в котором всегда берется только ветвь «увеличить переменную».

Ясно, что если машина действительно останавливается, у этого алгоритма есть путь, который принимает. Если машина не остановится, этот алгоритм всегда будет отклонять, независимо от того, какое число вернет вторая часть программы.

Аргументы в пользу неограниченного недетерминизма

Клингер и Карл Хьюитт[нужна цитата ] разработали модель (известную как Актерская модель ) параллельных вычислений со свойством неограниченного недетерминизма, встроенным в [Clinger 1981; Hewitt 1985; Хьюитт и Ага 1991; Hewitt 2006b]; это позволяет вычисления это не может быть реализовано машинами Тьюринга, как показано выше. Однако эти исследователи подчеркивают, что их модель параллельных вычислений не может реализовать какие-либо функции, которые не входят в класс рекурсивные функции[нужна цитата ] определено Черчем, Клини, Тьюрингом, и Т. Д. (Видеть Неопределенность в параллельных вычислениях.)

Хьюитт [2006] оправдал свое использование неограниченного недетерминизма, утверждая, что нет никаких ограничений, которые могут быть наложены на то, сколько времени потребуется вычислительной схеме, называемой арбитр урегулировать (см. метастабильность в электронике ). Арбитры используются в компьютерах, чтобы иметь дело с обстоятельствами, когда компьютерные часы работают асинхронно с вводом извне, например.., ввод с клавиатуры, доступ к диску, сетевой ввод, и Т. Д. Таким образом, для получения сообщения, отправленного на компьютер, может потребоваться неограниченное время, а в это время компьютер может пройти неограниченное количество состояний.

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

Анализ справедливости Хьюитта

Хьюитт утверждал, что проблемы справедливости частично проистекают из точки зрения глобального состояния. Самые старые модели вычислений (например, Машины Тьюринга, Почтовая продукция, лямбда-исчисление и т. д.) основаны на математике, которая использует глобальное состояние для представления вычислительной шаг. Каждый шаг вычислений - это переход от одного глобального состояния вычисления к следующему глобальному состоянию. Подход глобального государства был продолжен в теория автоматов за конечное состояние машины и опустить стек машины, включая их недетерминированный версии. Все эти модели обладают свойством ограниченного недетерминизма: если машина всегда останавливается при запуске в своем начальном состоянии, то существует ограничение на количество состояний, в которых она может остановиться.

Хьюитт утверждал, что существует фундаментальное различие между выборами в недетерминизме глобального состояния и неопределенностью (недетерминизмом) порядка прибытия его Актерская модель. В недетерминизме глобального состояния делается «выбор» для «следующего» глобального состояния. В случае неопределенности порядка прибытия арбитраж принимает решение о каждом порядке прибытия локально в неограниченный промежуток времени. Пока идет местный арбитраж, неограниченная деятельность может иметь место в другом месте. Нет глобального состояния и, следовательно, нет «выбора» в отношении «следующего» глобального состояния.

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