Rovný program - Straight-line program

v matematika, konkrétněji v výpočetní algebra, a přímočarý program (SLP) pro konečnou skupinu G = ⟨S⟩ Je konečná posloupnost L prvků G tak, že každý prvek L buď patří S, je inverzní k předchozímu prvku nebo součin dvou předchozích prvků. SLP L říká se vypočítat skupinový prvek G ∈ G -li G ∈ L, kde G je kódován slovem v S a jeho inverze.

Intuitivně některé SLP počítají G ∈ G je účinný způsob skladování G jako skupinové slovo S; pozorujte, že pokud G je postaven v i kroky, délka slova G může být exponenciální v i, ale délka odpovídajícího SLP je lineárníi. To má důležité aplikace v teorie výpočetních grup pomocí SLP k efektivnímu kódování prvků skupiny jako slov v dané generující sadě.

Přímé programy zavedly Babai a Szemerédi v roce 1984[1] jako nástroj pro studium výpočetní složitosti určitých vlastností skupiny matic. Babai a Szemerédi dokazují, že každý prvek konečné skupiny G má délku SLP Ó(log2|G|) v každé generující sadě.

Efektivní řešení konstruktivní problém členství je zásadní pro mnoho skupinově teoretických algoritmů. Lze jej uvést z hlediska SLP následujícím způsobem. Vzhledem k omezené skupině G = ⟨S⟩ a G ∈ G, najděte lineární výpočetní program G přesS. Konstruktivní problém členství je často studován v prostředí skupiny černé skříňky. Prvky jsou kódovány bitovými řetězci pevné délky. Tři věštci jsou poskytovány pro skupinové teoretické funkce násobení, inverze a kontroly rovnosti s identitou. A algoritmus černé skříňky je ten, který používá pouze tyto věštce. Přímé programy pro skupiny černé skříňky jsou tedy algoritmy černé skříňky.

Explicitní přímé programy jsou uvedeny pro řadu konečných jednoduchých skupin online ATLAS konečných skupin.

Definice

Neformální definice

Nechat G být konečnou skupinou a nechat S být podmnožinou G. Sekvence L = (G1,…,Gm) prvků z G je přímočarý program přes S pokud každý Gi lze získat jedním z následujících tří pravidel:

  1. GiS
  2. Gi = Gj Gk pro některé j,k < i
  3. Gi = G−1
    j
    pro některé j < i.

Přímka náklady C(G|S) prvku GG je délka nejkratšího přímého programu S výpočetní G. Cena je nekonečná, pokud G není v podskupině generované uživatelem S.

Přímý program je podobný derivaci v predikátové logice. Prvky S odpovídají axiomům a operace skupiny odpovídají pravidlům odvození.

Formální definice

Nechat G být konečnou skupinou a nechat S být podmnožinou G. A přímočarý program délky m přes S výpočet některé GG je posloupnost výrazů (w1,…,wm) takové, že pro každého i, wi je symbol pro nějaký prvek Snebo wi = (wj, -1) pro některé j < inebo wi = (wj,wk) pro některé j,k < i, takový, že wm přebírá hodnotu G při hodnocení v G zjevným způsobem.

Původní definice uvedená v [2] to vyžaduje G =⟨S⟩. Definice uvedená výše je běžným zobecněním.

Z výpočetního hlediska má formální definice přímého programu některé výhody. Za prvé, sekvence abstraktních výrazů vyžaduje v generující sadě méně paměti než termíny. Zadruhé umožňuje přímé programy postavit v jedné reprezentaci G a hodnoceno v jiném. Toto je důležitá vlastnost některých algoritmů.[2]

Příklady

The dihedrální skupina D12 je skupina symetrií šestiúhelníku. Lze jej generovat 60stupňovou rotací ρ a jedním odrazem λ. V následujícím levém sloupci je přímkový program pro λρ3:

V S.6, skupina permutací na šesti písmenech, můžeme jako generátory vzít α = (1 2 3 4 5 6) a β = (1 2). Sloupec zcela vlevo je příkladem přímého programu pro výpočet (1 2 3) (4 5 6):

Aplikace

Krátký popis konečných skupin. Přímé programy lze použít ke studiu komprese konečných skupin pomocí logika prvního řádu. Poskytují nástroj pro konstrukci „krátkých“ vět popisujících popis G (tj. mnohem kratší než |G|). Podrobněji se SLP používají k prokázání, že každá konečná jednoduchá skupina má popis délky prvního řádu Ó(log |G|) a každá konečná skupina G má popis délky prvního řádu Ó(log3|G|).[3]

Přímočaré programy počítající generující množiny pro maximální podskupiny konečných jednoduchých skupin. Online ATLAS zastoupení konečných skupin[4] poskytuje abstraktní lineární programy pro výpočet generování sad maximálních podskupin pro mnoho konečných jednoduchých skupin.

Příklad: Skupina Sz (32) patřící do nekonečné rodiny Suzuki skupiny, má 2. pozici prostřednictvím generátorů A a b, kde A má objednávku 2, b má objednávku 4, ab má objednávku 5, ab2 má objednávku 25 a abab2ab3 má pořadí 25. Následuje lineární program, který počítá generující množinu pro maximální podskupinu E.32E32C31. Tento přímý program lze nalézt v online ATLASu zastoupení konečných skupin.

Věta o dosažitelnosti

Věta o dosažitelnosti uvádí, že vzhledem k konečné skupině G generováno uživatelem S, každý GG má maximální náklady (1 + lg |G|)2. To lze chápat jako vazbu na to, jak těžké je generovat prvek skupiny z generátorů.

Zde funkce lg (X) je celočíselná verze funkce logaritmu: pro k≥1 nechat lg (k) = max {r : 2rk}.

Myšlenkou důkazu je konstrukce sady Z = {z1,…,zs}, který bude fungovat jako nová generující sada (s budou definovány během procesu). Obvykle je větší než S, ale jakýkoli prvek G lze vyjádřit maximálně jako slovo délky 2|Z| přes Z. Sada Z je konstruováno indukčním definováním rostoucí posloupnosti množin K.(i).

Nechat K.(i) = {z1α1·z2α2·…·ziαi : αj 0,1 {0,1}}, kde zi je prvek skupiny přidaný do Z na i-tý krok. Nechat C(i) označuje délku nejkratšího přímého programu, který obsahuje Z(i) = {z1,…,zi}. Nechat K.(0) = {1G} a C(0) = 0. Definujeme množinu Z rekurzivně:

  • Li K.(i)−1K.(i) = G, prohlásit s převzít hodnotu i a přestaň.
  • Jinak si některé vyberte zi+1G\K.(i)−1K.(i) (který není prázdný), který minimalizuje „zvýšení nákladů“ C(i+1) − C(i).

Tímto procesem Z je definován tak, že jakýkoli GG lze napsat jako prvek K.(i)−1K.(i), což účinně usnadňuje generování z Z.

Nyní musíme ověřit následující deklaraci, abychom zajistili, že proces skončí do lg (|G|) mnoho kroků:

Nárok 1 — Li i < s pak |K.(i+1)| = 2|K.(i)|.

Důkaz —

Je to okamžité |K.(i+1)| ≤ 2|K.(i)|. Nyní předpokládejme rozpor |K.(i+1)| < 2|K.(i)|. Podle principu pigeonhole existují k1,k2K.(i+1) s k1 = z1α1·z2α2·…·zi+1αi+1 = z1β1·z2β2·…·zi+1βi+1 = k2 pro některé αj,βj ∈ {0,1}. Nechat r být největší celé číslo takové, že αrβr. Předpokládejme WLOG αr = 1. Z toho vyplývá zr = zstrαstr·zstr-1αstr-1·…·z1α1·z1β1·z2β2·…·zqβq, s str,q < r. Proto zrK.(r−1)−1K.(r - 1), rozpor.

Následující deklarace slouží k prokázání, že cena každého prvku skupiny je v rámci požadované hranice.

2. nárok —  C(i) ≤ i 2 − i.

Důkaz —

Od té doby C(0) = 0 to stačí ukázat C(i+1) - C(i) ≤ 2i. The Cayleyův graf z G je připojen a pokud i < s, K.(i)−1K.(i) ≠ G, pak existuje prvek formuláře G1·G2G \ K.(i)−1K.(i) s G1K.(i)−1K.(i) a G2S.

Trvá to maximálně 2i kroky k vygenerování G1K.(i)−1K.(i). Nemá smysl generovat prvek maximální délky, protože se jedná o identitu. Proto 2i −1 kroky postačují. Vygenerovat G1·G2G\K.(i)−1K.(i), 2i kroky jsou dostatečné.

Teď dokončujeme teorém. Od té doby K.(s)−1K.(s) = G, jakýkoli GG lze napsat ve formě k−1
1
·k2 s k−1
1
,k2K.(s). Od Corollary 2 potřebujeme nanejvýš s2 − s kroky k vygenerování Z(s) = Z, a ne více než 2s − 1 kroky k vygenerování G z Z(s).

Proto C(G|S) ≤ s2 +  s - 1 ≤ lg2|G| + lg |G| - 1 ≤ (1 + lg |G|)2.

Reference

  1. ^ Babai, László a Endre Szemerédi. „O složitosti problémů maticových skupin I.“ Foundations of Computer Science, 1984. 25. výroční sympozium o základech informatiky. IEEE, 1984
  2. ^ A b Ákos Seress. (2003). Algoritmy permutační skupiny. [Online]. Cambridge Tracts v matematice. (Č. ​​152). Cambridge: Cambridge University Press.
  3. ^ Nies, A., & Tent, K. (2016). Popis konečných skupin krátkými větami prvního řádu. Israel J. Mathematics, dostavit se. https://arxiv.org/abs/1409.8390
  4. ^ http://brauer.maths.qmul.ac.uk/Atlas/v3/