Test asociativity světel - Lights associativity test - Wikipedia
v matematika, Lightův test asociativity je postup, který vynalezl F. W. Light pro testování, zda a binární operace definované v a konečná množina podle a Cayleyův multiplikační stůl je asociativní. Naivní postup pro ověření asociativity binární operace specifikovaný Cayleyovou tabulkou, který porovnává dva produkty, které lze vytvořit z každé trojice prvků, je těžkopádný. Lightův test asociativity v některých případech úlohu zjednodušuje (i když nezlepšuje nejhorší dobu běhu naivního algoritmu, jmenovitě pro sady velikostí ).
Popis postupu
Nechte binární operaci '·' definovat v konečné sadě A u Cayleyho stolu. Výběr nějakého prvku A v A, jsou definovány dvě nové binární operace A jak následuje:
- X y = X · ( A · y )
- X y = ( X · A ) · y
Cayleyovy tabulky těchto operací jsou konstruovány a porovnány. Pokud se tabulky shodují, pak X · ( A · y ) = ( X · A ) · y pro všechny X a y. To se opakuje pro každý prvek sady A.
Níže uvedený příklad ilustruje další zjednodušení postupu pro konstrukci a srovnání Cayleyových tabulek operací. ' a ' '.
Není ani nutné konstruovat Cayleyovy tabulky ' a ' ' pro Všechno prvky A. Stačí srovnat Cayleyovy tabulky ' a ' "odpovídající prvkům ve správné generující podmnožině A.
Když operace “. ' je komutativní, pak x y = y X. Ve výsledku musí být vypočítána pouze část každé tabulky Cayley, protože x x = x x vždy drží a x y = x y znamená y x = y X.
Když tam je prvek identity e, nemusí být zahrnuto do Cayleyových tabulek, protože x y = x y vždy platí, pokud alespoň jedno z xay je rovno e.
Příklad
Zvažte binární operaci '·' v sadě A = { A, b, C, d, E } definovaný následující tabulkou Cayley (tabulka 1):
· | A | b | C | d | E |
---|---|---|---|---|---|
A | A | A | A | d | d |
b | A | b | C | d | d |
C | A | C | b | d | d |
d | d | d | d | A | A |
E | d | E | E | A | A |
Sada { C, E } je generující množina pro množinu A v rámci binární operace definované výše uvedenou tabulkou, pro, A = E · E, b = C · C, d = C · E. Stačí tedy ověřit, že binární operace ' a ' ' souhlasí s C shodovat a také, že binární operace ' ' a ' ' souhlasí s E shodovat se.
Chcete-li ověřit, že binární operace ' ' a ' ' souhlasí s C shodovat, vyberte řádek v tabulce 1 odpovídající prvku C:
· | A | b | C | d | E |
---|---|---|---|---|---|
A | A | A | A | d | d |
b | A | b | C | d | d |
C | A | C | b | d | d |
d | d | d | d | A | A |
E | d | E | E | A | A |
Tento řádek je zkopírován jako řádek záhlaví nové tabulky (tabulka 3):
A | C | b | d | d | |
---|---|---|---|---|---|
Pod hlavičkou A zkopírujte odpovídající sloupec v tabulce 1 pod záhlavím b zkopírujte odpovídající sloupec v tabulce 1 atd. a vytvořte tabulku 4.
A | C | b | d | d | |
---|---|---|---|---|---|
A | A | A | d | d | |
A | C | b | d | d | |
A | b | C | d | d | |
d | d | d | A | A | |
d | E | E | A | A |
Záhlaví sloupců tabulky 4 jsou nyní odstraněna, aby se získala tabulka 5:
A | A | A | d | d | |
A | C | b | d | d | |
A | b | C | d | d | |
d | d | d | A | A | |
d | E | E | A | A |
Cayleyova tabulka binární operace ' 'odpovídající prvku C je uveden v tabulce 6.
(C) | A | b | C | d | E |
---|---|---|---|---|---|
A | A | A | A | d | d |
b | A | C | b | d | d |
C | A | b | C | d | d |
d | d | d | d | A | A |
E | d | E | E | A | A |
Dále zvolte C sloupec tabulky 1:
· | A | b | C | d | E |
---|---|---|---|---|---|
A | A | A | A | d | d |
b | A | b | C | d | d |
C | A | C | b | d | d |
d | d | d | d | A | A |
E | d | E | E | A | A |
Zkopírováním tohoto sloupce do indexového sloupce získáte tabulku 8:
A | |||||
C | |||||
b | |||||
d | |||||
E |
Proti záznamu indexu A v tabulce 8 zkopírujte odpovídající řádek v tabulce 1 proti položce indexu b zkopírujte odpovídající řádek v tabulce 1 atd. a vytvořte tabulku 9.
A | A | A | A | d | d |
C | A | C | b | d | d |
b | A | b | C | d | d |
d | d | d | d | A | A |
E | d | E | E | A | A |
Položky rejstříku v prvním sloupci tabulky 9 jsou nyní odstraněny, aby se získala tabulka 10:
A | A | A | d | d | |
A | C | b | d | d | |
A | b | C | d | d | |
d | d | d | A | A | |
d | E | E | A | A |
Cayleyova tabulka binární operace ' 'odpovídající prvku C je uveden v tabulce 11.
(C) | A | b | C | d | E |
---|---|---|---|---|---|
A | A | A | A | d | d |
b | A | C | b | d | d |
C | A | b | C | d | d |
d | d | d | d | A | A |
E | d | E | E | A | A |
Lze ověřit, že položky v různých buňkách v tabulce 6 souhlasí s položkami v odpovídajících buňkách v tabulce 11. To ukazuje X · ( C · y ) = ( X · C ) · y pro všechny X a y v A. Pokud by došlo k nějakému rozporu, pak by to nebyla pravda X · ( C · y ) = ( X · C ) · y pro všechny X a y v A.
Že X · ( E · y ) = ( X · E ) · y pro všechny X a y v A lze ověřit podobným způsobem vytvořením následujících tabulek (tabulka 12 a tabulka 13):
(E) | A | b | C | d | E |
---|---|---|---|---|---|
A | d | d | d | A | A |
b | d | d | d | A | A |
C | d | d | d | A | A |
d | A | A | A | d | d |
E | A | A | A | d | d |
(E) | A | b | C | d | E |
---|---|---|---|---|---|
A | d | d | d | A | A |
b | d | d | d | A | A |
C | d | d | d | A | A |
d | A | A | A | d | d |
E | A | A | A | d | d |
Další zjednodušení
Není nutné sestavovat Cayleyovy tabulky (tabulka 6 a tabulka 11) binárních operací ' ' a ' '. Stačí zkopírovat sloupec odpovídající hlavičce C v tabulce 1 do indexového sloupce v tabulce 5 a vytvořte následující tabulku (tabulka 14) a ověřte, zda A-row tabulky 14 je totožná s A- v tabulce 1, b-row tabulky 14 je totožná s b- řádek tabulky 1 atd. Toto je třeba opakovat mutatis mutandis pro všechny prvky generující sady A.
A | C | b | d | d | |
---|---|---|---|---|---|
A | A | A | A | d | d |
C | A | C | b | d | d |
b | A | b | C | d | d |
d | d | d | d | A | A |
E | d | E | E | A | A |
Program
Počítačový software lze napsat k provedení testu asociativity Light. Kehayopulu a Argyris vyvinuli takový program pro Mathematica.[1]
Rozšíření
Lightův test asociativity lze rozšířit na testování asociativity v obecnějším kontextu.[2][3]
Nechat T = { t1, t2, , tm } být magma ve kterém je operace označena juxtapozice. Nechat X = { X1, X2, , Xn } být množinou. Nechť existuje mapování z kartézský součin T × X na X označeno (t, X) ↦ tx a nechat to být povinen otestovat, zda tato mapa má tuto vlastnost
- (Svatý)X = s(tx) pro všechny s, t v T a všechno X v X.
K ověření, zda výše uvedená vlastnost platí nebo ne, lze použít zobecnění Lightova testu asociativity. V matematických notacích probíhá zobecnění následovně: Pro každou t v T, nechť L(t) být m × n matice prvků X jehož i - ta řada je
- ( (tit)X1, (tit)X2, , (tit)Xn ) pro i = 1, , m
a nechte R(t) být m × n matice prvků X, jehož prvky j - ten sloupec je
- ( t1(txj), t2(txj), , tm(txj) ) pro j = 1, , n.
Podle zobecněného testu (kvůli Bednarkovi) platí, že vlastnost, která má být ověřena, platí tehdy a jen tehdy L(t) = R(t) pro všechny t v T. Když X = T, Bednarkův test se redukuje na Lightův test.
Pokročilejší algoritmy
Existuje randomizovaný algoritmus Rajagopalana a Schulman testovat asociativitu v čase úměrném velikosti vstupu. (Metoda funguje také pro testování určitých dalších identit.) Konkrétně je to běhový modul pro pravděpodobnost tabulky a chyby . Algoritmus lze upravit tak, aby vznikl trojnásobek pro který , pokud existuje, včas .[4]
Poznámky
- ^ Kehayopulu, Niovi; Philip Argyris (1993). "Algoritmus pro test asociativity Light pomocí Mathematica". J. Comput. Informovat. 3 (1): 87–98. ISSN 1180-3886.
- ^ Bednarek, A R (1968). "Rozšíření Lightova testu asociativity". Americký matematický měsíčník. 75 (5): 531–532. doi:10.2307/2314731. JSTOR 2314731.
- ^ Kalman, J. A. (1971). „Bednarekovo rozšíření Lightova testu asociativity“. Semigroup Forum. 3 (1): 275–276. doi:10.1007 / BF02572966.
- ^ Rajagopalan, Sridhar; Schulman, Leonard J. (2000). "Ověření totožnosti". SIAM Journal on Computing. 29 (4): 1155–1163. CiteSeerX 10.1.1.4.6898. doi:10.1137 / S0097539797325387.
Reference
- Clifford, Alfred Hoblitzelle; Preston, Gordon Bamford (1961). Algebraická teorie poloskupin. Sv. Já. Mathematical Surveys, No. 7. Providence, R.I .: Americká matematická společnost. ISBN 978-0-8218-0272-4. PAN 0132791. (str. 7–9)