Введение
В теории вычислительной сложности протокол Артура — Мерлина, введенный , является интерактивной системой доказательства, в которой случайные числа, генерируемые проверяющим, должны быть публичными (то есть известными и доказывающему). доказал, что для любого (формального) языка, имеющего интерактивное доказательство произвольной длины с использованием приватных случайных чисел, существует интерактивное доказательство с использованием публичных случайных чисел. Рассмотрим двух участников протокола, Артура и Мерлина. Предполагается, что Артур — это стандартный компьютер (или верификатор), оснащенный генератором случайных чисел, а Мерлин — это, по сути, оракул с бесконечной вычислительной мощностью (также известный как доказывающий). Однако Мерлин не обязательно честен, поэтому Артур должен анализировать информацию, предоставленную Мерлином в ответ на запросы Артура, и самостоятельно решать задачу. Задача считается разрешимой с помощью этого протокола, если при положительном ответе у Мерлина существует последовательность ответов, которая заставит Артура принять решение положительно как минимум в 2/3 случаев, а при отрицательном ответе Артур никогда не примет решение положительно более чем в 1/3 случаев. Таким образом, Артур выступает в роли вероятностного верификатора полиномиального времени, при условии, что ему выделено полиномиальное время для принятия решений и выполнения запросов.
In computational complexity theory, an Arthur–Merlin protocol, introduced by , is an interactive proof system in which the verifier's coin tosses are constrained to be public (i. e. known to the prover too). proved that all (formal) languages with interactive proofs of arbitrary length with private coins also have interactive proofs with public coins. Given two participants in the protocol called Arthur and Merlin respectively, the basic assumption is that Arthur is a standard computer (or verifier) equipped with a random number generating device, while Merlin is effectively an oracle with infinite computational power (also known as a prover). However, Merlin is not necessarily honest, so Arthur must analyze the information provided by Merlin in response to Arthur's queries and decide the problem itself. A problem is considered to be solvable by this protocol if whenever the answer is "yes", Merlin has some series of responses which will cause Arthur to accept at least 2/3 of the time, and if whenever the answer is "no", Arthur will never accept more than 1/3 of the time. Thus, Arthur acts as a probabilistic polynomial time verifier, assuming it is allotted polynomial time to make its decisions and queries.
Свойства
И MA, и AM остаются неизменными, если их определения изменяются, чтобы требовать абсолютной полноты, что означает, что Артур принимает с вероятностью 1 (вместо 2/3) когда x принадлежит языку. Для любой константы k ≥ 2 класс AM[k] равен AM[2]. Если k может быть полиномиально связано с размером входа, то класс AM[poly(n)] равен классу IP, который, как известно, равен PSPACE и, как широко считается, сильнее класса AM[2]. MA содержится в AM, поскольку AM[3] содержит MA: Артур может, после получения сертификата Мерлина, подбросить необходимое количество монет, отправить их Мерлину и игнорировать ответ. Открытым остается вопрос, различны ли AM и MA. При правдоподобных нижних оценках для схем (подобных тем, что подразумевают P=BPP), они оба равны NP. AM то же самое, что и класс BP⋅NP, где BP обозначает вероятностный оператор с ограниченной ошибкой. Также, (также записывается как ExistsBPP) является подмножеством MA. Равенство MA и является открытым вопросом. Переход к протоколу с приватной монетой, в котором Мерлин не может предсказать исход случайных решений Артура, увеличит число раундов взаимодействия максимум на 2 в общем случае. Следовательно, версия AM с приватной монетой эквивалентна версии с публичной монетой. MA содержит как NP, так и BPP. Для BPP это очевидно, поскольку Артур может просто игнорировать Мерлина и решить задачу напрямую; для NP Мерлину достаточно отправить Артуру сертификат, который Артур может проверить детерминированно за полиномиальное время. И MA, и AM содержатся в полиномиальной иерархии. В частности, MA содержится в пересечении Σ2P и Π2P, а AM содержится в Π2P. Более того, MA содержится в подклассе , классе сложности, выражающем "симметричную альтернирующую" сложность. Это обобщение теоремы Сипсера — Лаутемана. AM содержится в NP/poly, классе задач принятия решений, разрешимых за недетерминированное полиномиальное время с полиномиальным советом. Доказательство является вариацией теоремы Адлемана. MA содержится в PP; этот результат принадлежит Верещагину. MA содержится в своей квантовой версии, QMA. AM содержит задачу определения, являются ли два графа неизоморфными. Протокол с использованием приватных монет выглядит следующим образом и может быть преобразован в протокол с публичными монетами. Даны два графа G и H, Артур случайным образом выбирает один из них и выбирает случайную перестановку его вершин, представляя Мерлину переставленный граф I. Мерлин должен ответить, был ли граф I создан из G или H. Если графы неизоморфны, Мерлин сможет ответить с полной уверенностью (проверив, изоморфен ли I графу G). Однако, если графы изоморфны, то возможно, что для создания I использовался либо G, либо H, с равной вероятностью. В этом случае Мерлин не может их различить и может убедить Артура с вероятностью не более 1/2, которую можно усилить до 1/4 путем повторения. Это, по сути, доказательство с нулевым разглашением. Если AM содержит coNP, то PH = AM. Это является свидетельством того, что изоморфизм графов вряд ли будет NP-полной задачей, поскольку это подразумевает схлопывание полиномиальной иерархии. Известно, что при предположении ERH для любого d задача "Дано множество многомерных полиномов, каждый с целочисленными коэффициентами и степенью не более d, имеют ли они общий комплексный корень?" принадлежит классу AM.