Rätt linje program
Inom matematiken , mer specifikt i beräkningsalgebra , är ett rätlinjeprogram ( SLP ) för en finit grupp G = ⟨ S ⟩ en ändlig sekvens L av element i G så att varje element i L antingen tillhör S , är inversen av ett föregående element, eller produkten av två föregående element. En SLP L sägs beräkna ett gruppelement g ∈ G om g ∈ L , där g kodas av ett ord i S och dess inverser.
Intuitivt är en SLP som beräknar några g ∈ G ett effektivt sätt att lagra g som ett gruppord över S ; observera att om g är konstruerad i i -steg kan ordlängden för g vara exponentiell i i , men längden på motsvarande SLP är linjär i i . Detta har viktiga tillämpningar inom beräkningsgruppteori , genom att använda SLP:er för att effektivt koda gruppelement som ord över en given genereringsuppsättning.
Raklinjeprogram introducerades av Babai och Szemerédi 1984 som ett verktyg för att studera beräkningskomplexiteten hos vissa matrisgruppegenskaper. Babai och Szemerédi bevisar att varje element i en finit grupp G har en SLP med längden O (log 2 | G |) i varje genereringsmängd.
En effektiv lösning på det konstruktiva medlemsproblemet är avgörande för många gruppteoretiska algoritmer. Det kan anges i termer av SLPs enligt följande. Givet en finit grupp G = ⟨ S ⟩ och g ∈ G , hitta ett rätlinjigt program som beräknar g över S . Det konstruktiva medlemskapsproblemet studeras ofta i grupper med svarta lådan . Elementen kodas av bitsträngar med en fast längd. Tre orakel tillhandahålls för de gruppteoretiska funktionerna multiplikation, inversion och kontroll av likhet med identiteten. En svart låda-algoritm är en som bara använder dessa orakel. Följaktligen är rätlinjeprogram för svarta låda-grupper algoritmer för svarta lådan.
Explicita linjära program ges för en mängd finita enkla grupper i online- ATLAS of Finite Groups .
Definition
Informell definition
Låt G vara en finit grupp och låt S vara en delmängd av G . En sekvens L = ( g 1 , ..., g m ) av element i G är ett rätlinjigt program över S om varje gi kan erhållas genom en av följande tre regler:
- g i ∈ S
- g i = g j g k för vissa j , k < i
-
g i = g
−1 j för vissa j < i .
Den linjära kostnaden c ( g | S ) för ett element g ∈ G är längden av ett kortaste linjärt program över S beräkning g . Kostnaden är oändlig om g inte är i undergruppen som genereras av S .
Ett linjärt program liknar en härledning i predikatlogik. Elementen i S motsvarar axiom och gruppoperationerna motsvarar inferensreglerna.
Formell definition
Låt G vara en finit grupp och låt S vara en delmängd av G . Ett rätlinjeprogram med längden m över S som beräknar något g ∈ G är en sekvens av uttryck ( w 1 ,…, w m ) så att för varje i är w i en symbol för något element i S , eller w i = ( w j ,-1) för vissa j < i , eller w i = ( w j , w k ) för vissa j , k < i , så att wm antar värdet g när den utvärderas i G på det uppenbara sättet.
Den ursprungliga definitionen som förekommer i kräver att G =⟨ S ⟩. Definitionen som presenteras ovan är en vanlig generalisering av detta.
Ur ett beräkningsperspektiv har den formella definitionen av ett linjärt program vissa fördelar. För det första kräver en sekvens av abstrakta uttryck mindre minne än termer över genereringsuppsättningen. För det andra tillåter det rätlinjeprogram att konstrueras i en representation av G och utvärderas i en annan. Detta är en viktig egenskap hos vissa algoritmer.
Exempel
Den dihedriska gruppen D 12 är gruppen av symmetrier för en hexagon. Den kan genereras av en 60 graders rotation ρ och en reflektion λ. Kolumnen längst till vänster i följande är ett rätlinjeprogram för λρ 3 :
|
|
I S 6 , gruppen av permutationer på sex bokstäver, kan vi ta α=(1 2 3 4 5 6) och β=(1 2) som generatorer. Kolumnen längst till vänster här är ett exempel på ett rätlinjeprogram att beräkna (1 2 3)(4 5 6):
|
|
|
Ansökningar
Korta beskrivningar av ändliga grupper . Raklinjeprogram kan användas för att studera komprimering av ändliga grupper via första ordningens logik . De tillhandahåller ett verktyg för att konstruera "korta" meningar som beskriver G (dvs. mycket kortare än | G |). Mer detaljerat används SLP för att bevisa att varje finit enkel grupp har en första ordningens beskrivning av längden O (log| G |), och varje finit grupp G har en första ordningens beskrivning av längden O (log 3 | G | ).
Raklinjeprogram som beräknar genereringsuppsättningar för maximala undergrupper av ändliga enkla grupper . Online-ATLAS of Finite Group Representations tillhandahåller abstrakta rätlinjiga program för att beräkna genererande uppsättningar av maximala undergrupper för många finita enkla grupper.
Exempel : Gruppen Sz(32), som tillhör den oändliga familjen av Suzuki-grupper , har rang 2 via generatorerna a och b , där a har ordning 2, b har ordning 4, ab har ordning 5, ab 2 har ordning 25 och abab 2 ab 3 har ordning 25. Följande är ett linjärt program som beräknar en genereringsmängd för en maximal undergrupp E 32 ·E 32 ⋊C 31 . Detta raka program finns i online-ATLAS of Finite Group Representations.
|
|
Nåbarhetsteorem
Nåbarhetssatsen säger att, givet en ändlig grupp G genererad av S , har varje g ∈ G en maximal kostnad på (1 + lg| G |) 2 . Detta kan förstås som en begränsning av hur svårt det är att generera ett gruppelement från generatorerna.
Här är funktionen lg( x ) en heltalsvärderad version av logaritmfunktionen: för k ≥1 låt lg( k ) = max{ r : 2 r ≤ k }.
Tanken med beviset är att konstruera en mängd Z = { z 1 ,…, z s } som kommer att fungera som en ny genereringsmängd ( s kommer att definieras under processen). Det är vanligtvis större än S , men vilket element som helst i G kan uttryckas som ett ord med längden högst 2| Z | över Z. _ Mängden Z är konstruerad genom att induktivt definiera en ökande sekvens av mängder K ( i ).
Låt K ( i ) = { z 1 α 1 · z 2 α 2 ·…· z i α i : α j ∈ {0,1}}, där z i är gruppelementet adderat till Z i det i -te steget . Låt c ( i ) beteckna längden av ett kortaste rätlinjeprogram som innehåller Z ( i ) = { z 1 ,…, z i }. Låt K (0) = {1 G } och c (0)=0. Vi definierar mängden Z rekursivt:
- Om K ( i ) −1 K ( i ) = G , förklara att s tar på sig värdet i och slutar.
- Annars, välj några z i +1 ∈ G \ K ( i ) −1 K ( i ) (som inte är tomma) som minimerar "kostnadsökningen" c ( i +1) − c ( i ).
Genom denna process definieras Z på ett sätt så att valfri g ∈ G kan skrivas som ett element av K ( i ) −1 K ( i ), vilket effektivt gör det lättare att generera från Z .
Vi måste nu verifiera följande påstående för att säkerställa att processen avslutas inom lg(| G |) många steg:
Krav 1 — Om i < s då | K ( i +1) | = 2| K ( i ) | .
Det är omedelbart att | K ( i +1) | ≤ 2| K ( i ) | . Antag nu för en motsägelse att | K ( i +1) | < 2| K ( i ) | . Enligt duvhålsprincipen finns k 1 , k 2 ∈ K ( i +1) med k 1 = z 1 α 1 · z 2 α 2 ·…· z i +1 α i +1 = z 1 β 1 · z 2 β 2 ·…· z i +1 β i +1 = k 2 för vissa α j , β j ∈ {0,1}. Låt r vara det största heltal så att α r ≠ β r . Antag WLOG att α r = 1. Det följer att z r = z p − α p · z p -1 − α p -1 ·…· z 1 − α 1 · z 1 β 1 · z 2 β 2 ·…· z q β q , med p , q < r . Därav z r ∈ K ( r −1) −1 K ( r − 1), en motsägelse.
Nästa anspråk används för att visa att kostnaden för varje gruppelement ligger inom den erforderliga gränsen.
Krav 2 — c ( i ) ≤ i 2 − i .
Eftersom c (0)=0 räcker det att visa att c ( i +1) - c ( i ) ≤ 2 i . Cayley- grafen för G är sammankopplad och om i < s , K ( i ) −1 K ( i ) ≠ G , så finns det ett element av formen g 1 · g 2 ∈ G \ K ( i ) −1 K ( i ) med g 1 ∈ K ( i ) −1 K ( i ) och g 2 ∈ S .
Det krävs högst 2 i steg för att generera g 1 ∈ K ( i ) −1 K ( i ). Det är ingen mening att generera elementet med maximal längd, eftersom det är identiteten. Därför 2 i −1 steg. För att generera g 1 · g 2 ∈ G \ K ( i ) −1 K ( i ), räcker det med 2 i -steg.
Vi avslutar nu satsen. Eftersom K ( s ) −1 K ( s ) = G , kan valfri g ∈ G skrivas på formen k
−1 1 · k 2 med k
−1 1 , k 2 ∈ K ( s ). Enligt konsekvens 2 behöver vi som mest s 2 − s steg för att generera Z ( s ) = Z , och inte mer än 2 s − 1 steg för att generera g från Z ( s ).
Därför c ( g | S ) ≤ s 2 + s − 1 ≤ lg 2 | G | + lg| G | − 1 ≤ (1 + lg| G |) 2 .