Jump to content

Прямая программа

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

Данная статья посвящена случаю, когда разрешенными операциями являются операции группы , то есть умножение и инверсия. Более конкретно, прямая программа ( SLP ) для конечной группы G = ⟨ S ⟩ — это конечная последовательность L элементов G такая, что каждый элемент L либо принадлежит S , является обратным предыдущему элементу, либо произведением двух предыдущих элементов. SLP L Говорят, что вычисляет групповой элемент g G G , если g G L , где g кодируется словом из S и обратным ему словом.

Интуитивно понятно, что SLP, вычисляющая некоторый g G, является эффективным способом хранения g как группового слова над S ; заметьте, что если g создается за i шагов, длина слова g может быть экспоненциальной по i , но длина соответствующего SLP линейна по i . Это имеет важные приложения в теории вычислительных групп , используя SLP для эффективного кодирования элементов группы в виде слов в заданном порождающем наборе.

Прямолинейные программы были представлены Бабаем и Семереди в 1984 году. [1] как инструмент для изучения вычислительной сложности некоторых свойств группы матриц. Бабай и Семереди доказывают, что каждый элемент конечной группы G имеет SLP длины O (log 2 | G |) в каждом порождающем наборе.

Эффективное решение конструктивной проблемы принадлежности имеет решающее значение для многих теоретико-групповых алгоритмов. С точки зрения SLP это можно сформулировать следующим образом. Для конечной группы G = ⟨ S ⟩ и g G найдите программу прямых, g над S. вычисляющую Проблема конструктивного членства часто изучается в контексте групп «черный ящик» . Элементы кодируются битовыми строками фиксированной длины. три оракула Для теоретико-групповых функций умножения, инверсии и проверки равенства с единицей предусмотрены . Алгоритм черного ящика — это алгоритм, который использует только эти оракулы. Следовательно, прямолинейные программы для групп «черных ящиков» представляют собой алгоритмы «черного ящика».

Явные прямолинейные программы даны для множества конечных простых групп в онлайн- атласе конечных групп .

Определение

[ редактировать ]

Неформальное определение

[ редактировать ]

Пусть G — конечная группа и S подмножество — ее . Последовательность L = ( g 1 ,..., g m ) элементов G является прямой программой над S, если каждый g i может быть получен по одному из следующих трех правил:

  1. г я S
  2. г я = г j g k для некоторого j , k < i
  3. г я = г −1
    j
    для некоторого j < i .

Прямая стоимость c ( g | S ) элемента g G — это длина кратчайшей прямой программы над S, вычисляющей g . Стоимость бесконечна, если g не находится в подгруппе, порожденной S .

Прямолинейная программа аналогична выводу в логике предикатов. Элементы S соответствуют аксиомам, а групповые операции соответствуют правилам вывода.

Формальное определение

[ редактировать ]

Пусть G — конечная группа и S подмножество — ее . Прямая программа длины m над S, вычисляющая некоторый g G, представляет собой последовательность выражений ( w 1 ,..., w m ) такую, что для каждого i , wi является символом некоторого элемента S , или w i = ( w j ,-1) для некоторых j < i , или w i = ( w j , w k ) для некоторых j , k < i , таких, что w m принимает значение g при вычислении в G в очевидном образом.

Исходное определение, представленное в [2] требует, чтобы G =⟨ S ⟩. Представленное выше определение является общим обобщением этого понятия.

С вычислительной точки зрения формальное определение прямолинейной программы имеет некоторые преимущества. Во-первых, последовательность абстрактных выражений требует меньше памяти, чем термы в порождающем наборе. Во-вторых, это позволяет строить прямолинейные программы в одном представлении G и вычислять их в другом. Это важная особенность некоторых алгоритмов. [2]

Группа диэдра D 12 — это группа симметрий шестиугольника. Его можно создать поворотом ρ на 60 градусов и одним отражением λ. Крайний левый столбец ниже представляет собой программу прямых линий для λρ 3 :

В S6 , группе перестановок шести букв, мы можем взять α=(1 2 3 4 5 6) и β=(1 2) в качестве образующих. Самый левый столбец здесь представляет собой пример линейной программы для вычисления (1 2 3)(4 5 6):

Приложения

[ редактировать ]

Краткие описания конечных групп . Прямые программы можно использовать для изучения сжатия конечных групп с помощью логики первого порядка . Они предоставляют инструмент для построения «коротких» предложений, описывающих G (т.е. намного короче, чем | G |). Более подробно, SLP используются для доказательства того, что каждая конечная простая группа имеет описание первого порядка длины O (log | G |), а каждая конечная группа G имеет описание первого порядка длины O (log 3 | Г |). [3]

Прямые программы вычисления порождающих множеств максимальных подгрупп конечных простых групп . Онлайн-АТЛАС представлений конечных групп [4] предоставляет абстрактные прямые программы для вычисления порождающих наборов максимальных подгрупп для многих конечных простых групп.

Пример : группа Sz(32), принадлежащая к бесконечному семейству групп Сузуки , имеет ранг 2 через генераторы a и b , где a имеет порядок 2, b имеет порядок 4, ab имеет порядок 5, ab 2 имеет порядок 25 и абаб 2 аб 3 имеет порядок 25. Ниже представлена ​​прямая программа, которая вычисляет порождающий набор для максимальной подгруппы E 32 ·E 32 ⋊C 31 . Эту прямую программу можно найти в онлайн-АТЛАСЕ представлений конечных групп.

Теорема о достижимости

[ редактировать ]

Теорема о достижимости утверждает, что для конечной группы G, порожденной S , каждый g G имеет максимальную стоимость (1 + lg| G |) 2 . Это можно понимать как ограничение того, насколько сложно сгенерировать элемент группы из генераторов.

Здесь функция lg( x ) является целочисленной версией функции логарифма: для k ≥1 пусть lg( k ) = max{ r : 2 р k }.

Идея доказательства состоит в том, чтобы построить набор Z = { z 1 ,..., z s }, который будет работать как новый порождающий набор ( s будет определен в процессе). Обычно оно больше S , но любой элемент G можно выразить словом длиной не более 2| Я | над З. ​Множество Z строится путем индуктивного определения возрастающей последовательности множеств K ( i ).

Пусть K ( i ) = { z 1 1 · я 2 2 ·...· день я α я : α j ∈ {0,1}}, где z i — элемент группы, добавленный к Z на i -м шаге. Пусть c ( i ) обозначает длину кратчайшей прямой программы, содержащей Z ( i ) = { z 1 ,..., z i }. Пусть K (0) = {1 G } и c (0)=0. Определим множество Z рекурсивно:

  • Если К ( я ) −1 K ( i ) = G , объявите , что s принимает значение i и останавливается.
  • В противном случае выберите какой-нибудь z i +1 G \ K ( i ) −1 K ( i ) (который непустой), который минимизирует «увеличение стоимости» c ( i +1) − c ( i ).

Благодаря этому процессу Z определяется таким образом, что любой g G можно записать как элемент K ( i ) −1 K ( i что эффективно упрощает генерацию из Z. ) ,

Теперь нам нужно проверить следующее утверждение, чтобы гарантировать, что процесс завершается за lg(| G |) множество шагов:

Утверждение 1. Если я < s , то | К ( я +1) | = 2| К ( я ) | .

Доказательство

Сразу видно, что | К ( я +1) | ≤ 2| К ( я ) | . Теперь предположим, что существует противоречие, что | К ( я +1) | < 2| К ( я ) | . По принципу «ячейки» существуют k 1 , k 2 K ( i +1) с k 1 = z 1 1 · я 2 2 ·...· д я +1 α я +1 = г 1 б 1 · я 2 б 2 ·...· д я +1 β я +1 = k 2 для некоторых α j , β j ∈ {0,1}. Пусть r — наибольшее целое число такое, что α r β r . Предположим, что WLOG α r = 1. Отсюда следует, что z r = z p α п · з п -1 α п -1 ·...· я 1 1 · я 1 б 1 · я 2 б 2 ·...· z q β q , с p , q < r . Следовательно, z r K ( r −1) −1 K ( r − 1), противоречие.

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

Пункт 2 c ( i ) ≤ i 2 - я .

Доказательство

Поскольку c (0)=0, достаточно показать, что c ( i +1) - c ( i ) ≤ 2 i . Граф Кэли группы G связен, и если i < s , K ( i ) −1 K ( i ) ≠ G , то существует элемент вида g 1 · g 2 G \ K ( i ) −1 K ( я ) с г 1 K ( я ) −1 K ( я ) и грамм 2 S .

требуется не более 2 i шагов. Для создания g 1 K ( i ) −1 К ( я ). Генерировать элемент максимальной длины нет смысла, так как он тождественен. Следовательно, достаточно 2 i −1 шагов. Чтобы создать g 1 · g 2 G \ K ( i ) −1 K ( i ), 2 i шагов достаточно.

Теперь мы закончим теорему. Поскольку К ( с ) −1 K ( s ) = G , любой g G можно записать в виде k −1
1
· k 2 с k −1
1
, k 2 K ( s ). По следствию 2 нам потребуется не более s 2 s шагов для генерации Z ( s ) = Z и не более 2 s − 1 шагов для генерации g из Z ( s ).

Следовательно, c ( g | S ) ≤ s 2 + s − 1 ≤ lg 2 | G | + lg| G | − 1 ≤ (1 + lg| G |) 2 .

  1. ^ Бабай, Ласло и Эндре Семереди. «О сложности матричных групповых задач I». Основы информатики, 1984. 25-й ежегодный симпозиум по основам информатики. ИЭЭЭ, 1984 г.
  2. ^ Перейти обратно: а б Акос Сересс. (2003). Алгоритмы группы перестановок. [Онлайн]. Кембриджские трактаты по математике. (№ 152). Кембридж: Издательство Кембриджского университета.
  3. ^ Нис, Андре; Палатка, Катрин (2017). «Описание конечных групп короткими предложениями первого порядка» . Израильский математический журнал . 221 : 85–115. arXiv : 1409.8390 . дои : 10.1007/s11856-017-1563-2 .
  4. ^ «АТЛАС представлений конечных групп – V3» .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: a4d36715896776bd5b2051af0b95c4b9__1722417540
URL1:https://arc.ask3.ru/arc/aa/a4/b9/a4d36715896776bd5b2051af0b95c4b9.html
Заголовок, (Title) документа по адресу, URL1:
Straight-line program - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)