Íàó÷íî-ìåòîäè÷íèé öåíòð
Íàó÷íûå ðàáîòû
Äîêëàäû, êóðñîâûå, ðåôåðàòû
Íàó÷íî-ìåòîäè÷åñêèé öåíòð Ñàíêò-Ïåòåðáóðãà
 

Äèïëîìíàÿ ðàáîòà: Âîñüìèýëåìåíòíûå àññîöèàòèâíûå êîëüöà

Äèïëîìíàÿ ðàáîòà: Âîñüìèýëåìåíòíûå àññîöèàòèâíûå êîëüöà

Ôåäåðàëüíîå àãåíòñòâî ïî îáðàçîâàíèþ

Ãîñóäàðñòâåííîå îáðàçîâàòåëüíîå ó÷ðåæäåíèå âûñøåãî ïðîôåññèîíàëüíîãî îáðàçîâàíèÿ

Âÿòñêèé Ãîñóäàðñòâåííûé Ãóìàíèòàðíûé Óíèâåðñèòåò

Ìàòåìàòè÷åñêèé ôàêóëüòåò

Êàôåäðà àëãåáðû è ãåîìåòðèè

Âûïóñêíàÿ êâàëèôèêàöèîííàÿ ðàáîòà

Âîñüìèýëåìåíòíûå àññîöèàòèâíûå êîëüöà

Âûïîëíèë: ñòóäåíò V êóðñà ìàòåìàòè÷åñêîãî ôàêóëüòåòà Êàñüÿíîâ À.À.

_________________________

Íàó÷íûé ðóêîâîäèòåëü: ä.ô.-ì.í., ïðîôåññîð, çàâ. êàôåäðû àëãåáðû è ãåîìåòðèè

Âå÷òîìîâ Å.Ì.

_________________________

Ðåöåíçåíò: ê.ô.-ì.í., äîöåíò

×åðìíûõ Â.Â.

_________________________

Äîïóùåí ê çàùèòå â ÃÀÊ

Çàâ. êàôåäðîé________________                             Âå÷òîìîâ Å.Ì.

                                                                                     «      »___________

Äåêàí ôàêóëüòåòà_____________                             Âàðàíêèíà Â.È.

                                                                                     «      »___________

Êèðîâ 2005

Ñîäåðæàíèå

Ââåäåíèå........................................................................................ 3

§1. Àáåëåâû ãðóïïû ïî ñëîæåíèþ.............................................. 5

§2. Êîëüöà, îáðàçîâàííûå àääèòèâíîé ãðóïïîé ............ 8

§3. Êîëüöà, îáðàçîâàííûå àääèòèâíîé ãðóïïîé ... 10

Áèáëèîãðàôè÷åñêèé ñïèñîê........................................................ 11

Ïðèëîæåíèå................................................................................ 12


Ââåäåíèå

Ïîíÿòèå êîëüöà ïîÿâèëîñü â ìàòåìàòèêå â êîíöå XIX âåêà. Ïåðâûìè ïðèìåðàìè àññîöèàòèâíûõ êîëåö áûëè ÷èñëîâûå êîëüöà, ò.å. ïîäêîëüöà ïîëÿ êîìïëåêñíûõ ÷èñåë è êîëüöà êëàññîâ âû÷åòîâ öåëûõ ÷èñåë. Êàê ñàìîñòîÿòåëüíàÿ îáëàñòü àëãåáðû, òåîðèÿ àññîöèàòèâíûõ êîëåö îôîðìèëàñü ê íà÷àëó XX âåêà. Èç ýòîé òåîðèè âûäåëèëèñü â ñàìîñòîÿòåëüíûå îáëàñòè àëãåáðû òåîðèè êîììóòàòèâíûõ êîëåö, òåë, àëãåáð.

Äàäèì îñíîâíûå ïîíÿòèÿ, êîòîðûìè ìû áóäåì ïîëüçîâàòüñÿ â äàëüíåéøåì.

Àääèòèâíîé àáåëåâîé ãðóïïîé  íàçûâàåòñÿ àëãåáðà ñ áèíàðíîé îïåðàöèåé + (ñëîæåíèå), óäîâëåòâîðÿþùåé ñëåäóþùèì àêñèîìàì:

1)   ñëîæåíèå àññîöèàòèâíî, ò.å. ;

2)   â G ñóùåñòâóåò íåéòðàëüíûé ýëåìåíò 0 (íîëü) òàêîé, ÷òî ;

3)   â G äëÿ ëþáîãî ýëåìåíòà ñóùåñòâóåò ïðîòèâîïîëîæíûé ýëåìåíò, ò.å. ;

4)   Ñëîæåíèå êîììóòàòèâíî: ;

Ìóëüòèïëèêàòèâíîé ïîëóãðóïïîé  íàçûâàåòñÿ àëãåáðà ñ áèíàðíîé îïåðàöèåé  (óìíîæåíèå), óäîâëåòâîðÿþùàÿ çàêîíó àññîöèàòèâíîñòè: ; (â äàëüíåéøåì ìû áóäåì ïèñàòü ab, è èìåòü ââèäó ïðîèçâåäåíèå ýëåìåíòîâ a è b â G.

Êîëüöîì íàçûâàåòñÿ àëãåáðà  ñ äâóìÿ áèíàðíûìè îïåðàöèÿìè ñëîæåíèÿ è óìíîæåíèÿ, êîòîðûå óäîâëåòâîðÿþò ñëåäóþùèì óñëîâèÿì:

1)   îòíîñèòåëüíî ñëîæåíèÿ êîëüöî ÿâëÿåòñÿ àáåëåâîé ãðóïïîé;

2)   îòíîñèòåëüíî óìíîæåíèÿ – ýòî ïîëóãðóïïà;

3)   âûïîëíÿþòñÿ çàêîíû äèñòðèáóòèâíîñòè:  è ;

Äàííàÿ äèïëîìíàÿ ðàáîòà ïðåäñòàâëÿåò ñîáîé èçëîæåíèå ìåòîäèêè èçó÷åíèÿ îïðåäåëåííûõ êîíå÷íûõ àëãåáð.  íàñòîÿùåå âðåìÿ èçó÷åíèå êîíå÷íûõ àëãåáð ïðîèçâîäèòñÿ ñ ïîìîùüþ êîìïüþòåðà. Çàäà÷à äàííîé äèïëîìíîé ðàáîòû ñîñòîèò â îòûñêàíèè âñåõ âîñüìèýëåìåíòíûõ àññîöèàòèâíûõ êîëåö. Äëÿ ýòîãî ìû ñíà÷àëà íàõîäèì âñå àáåëåâû ãðóïïû èç âîñüìè ýëåìåíòîâ, à çàòåì äëÿ êàæäîé òàêîé ãðóïïû ñòðîèì ñîîòâåòñòâóþùèå ïîëóãðóïïû ïî óìíîæåíèþ, è ïîëó÷àåì èñêîìûå êîëüöà.

Âñåãî àáåëåâûõ ãðóïï ïî ñëîæåíèþ, ñ òî÷íîñòüþ äî èçîìîðôèçìà, áóäåò òðè: , , è . Äëÿ ãðóïïû , êîëüöà íàõîäÿòñÿ âðó÷íóþ. Äëÿ íàõîæäåíèÿ êîëåö ïî îñòàëüíûì äâóì ãðóïïàì íóæíî èñïîëüçîâàòü êîìïüþòåð, òàê êàê êîëè÷åñòâî âñåâîçìîæíûõ ïîëóãðóïï ïî óìíîæåíèþ áóäåò âåëèêî è, ñîîòâåòñòâåííî, îòáîð âîñüìèýëåìåíòíûõ êîëåö áåç ïðèâëå÷åíèÿ âû÷èñëèòåëüíîé ìàøèíû çàéìåò î÷åíü ìíîãî âðåìåíè.

 ðåçóëüòàòå ïîëó÷àåì, ÷òî âñåãî ñóùåñòâóåò ñ òî÷íîñòüþ äî èçîìîðôèçìà 392 âîñüìèýëèìåíòíûõ êîëüöà.

Äëÿ ðàáîòû ñ àáåëåâûìè ãðóïïàìè è ïîëóãðóïïàìè ïî óìíîæåíèþ, à òàêæå äëÿ ïðåäñòàâëåíèÿ èõ â êîìïüþòåðå, áóäåì ïîëüçîâàòüñÿ òàáëèöàìè Êýëè. Òàáëèöåé Êýëè íàçûâàåòñÿ êâàäðàòíàÿ òàáëèöà ïðîèçâîëüíîé àëãåáðû, çàäàâàåìàÿ äëÿ îïðåäåë¸ííîé áèíàðíîé îïåðàöèè. Çàãëàâíàÿ ñòðîêà òàáëèöû çàïîëíÿåòñÿ â íåêîòîðîì ïîðÿäêå ñèìâîëàìè, îáîçíà÷àþùèìè ðàçëè÷íûå ýëåìåíòû, òåìè æå ñèìâîëàìè è â òîì æå ïîðÿäêå çàïîëíÿåòñÿ ãëàâíûé ñòîëáåö. Åñëè àëãåáðà îáëàäàåò íåéòðàëüíûì ýëåìåíòîì, òî ýòîò ýëåìåíò, êàê ïðàâèëî, ïîìåùàåòñÿ íà ïåðâîì ìåñòå. Åñëè íà i-ì ìåñòå â çàãëàâíîì ñòîëáöå ñòîèò ñèìâîë ai, è íà j-ì ìåñòå â çàãëàâíîé ñòðîêå – ñèìâîë aj, òî íà ïåðåñå÷åíèè i-îé ñòðîêè è j-ãî ñòîëáöà çàïèñûâàåòñÿ ñèìâîë, îáîçíà÷àþùèé ðåçóëüòàò îïåðàöèè ýëåìåíòîâ ai è aj.  íàøåì ñëó÷àå ìû íå áóäåì ïèñàòü çàãëàâíûå ñòðîêè òàáëèöû, ïîäðàçóìåâàÿ, ÷òî ýëåìåíòû ïðîíóìåðîâàíû ÷èñëàìè îò 0 äî 7. Ìû áóäåì èñïîëüçîâàòü òàáëèöû Êýëè áåç çàãëàâíûõ ñòðîêè è ñòîëáöà.


§1. Àáåëåâû ãðóïïû ïî ñëîæåíèþ

Êàê óæå áûëî ñêàçàíî âûøå, âñåãî âîñüìèýëåìåíòíûõ àääèòèâíûõ àáåëåâûõ ãðóïï ñ òî÷íîñòüþ äî èçîìîðôèçìà òðè: , , è .

Ïðåäñòàâèì êàæäóþ èç òàêèõ ãðóïï â âèäå òàáëèö Êýëè. Äëÿ ãðóïïû  ýëåìåíòû ïðåäñòàâèì ÷èñëàìè îò 0 äî 7. Ýëåìåíòû äëÿ ãðóïï  è  îáîçíà÷èì ñëåäóþùèì îáðàçîì:

0º (0,0)

1º (1,0)

2º (2,0)

3º (3,0)

4º (0,1)

5º (1,1)

6º (2,1)

7º (3,1)

0º (0,0,0)

1º (1,0,0)

2º (0,1,0)

3º (0,0,1)

4º (1,1,0)

5º (1,0,1)

6º (0,1,1)

7º (1,1,1)

Òàêèì îáðàçîì, ãðóïïû áóäóò èìåòü ñëåäóþùèé âèä:

0 1 2 3 4 5 6 7

1 2 3 4 5 6 7 0

2 3 4 5 6 7 0 1

3 4 5 6 7 0 1 2

4 5 6 7 0 1 2 3

5 6 7 0 1 2 3 4

6 7 0 1 2 3 4 5

7 0 1 2 3 4 5 6

0 1 2 3 4 5 6 7

1 2 3 0 5 6 7 4

2 3 0 1 6 7 4 5

3 0 1 2 7 4 5 6

4 5 6 7 0 1 2 3

5 6 7 4 1 2 3 0

6 7 4 5 2 3 0 1

7 4 5 6 3 0 1 2

0 1 2 3 4 5 6 7

1 0 4 5 2 3 7 6

2 4 0 6 1 7 3 5

3 5 6 0 7 1 2 4

4 2 1 7 0 6 5 3

5 3 7 1 6 0 4 2

6 7 3 2 5 4 0 1

7 6 5 4 3 2 1 0

Çàòåì, äëÿ êàæäîé òàêîé ãðóïïû, ìû áóäåì ñòðîèòü ïîëóãðóïïû ïî óìíîæåíèþ, ïîëüçóÿñü òàêæå òàáëèöàìè Êýëè. Äëÿ ãðóïïû  òàêèõ ïîëóãðóïï áóäåò âñåãî 8, òàê êàê íàì äîñòàòî÷íî îïðåäåëèòü ÷åìó ðàâíî ïðîèçâåäåíèå 1·1. Íà ìåñòî ýòîãî ïðîèçâåäåíèÿ ìû ìîæåì ïîñòàâèòü îäèí èç 8 ýëåìåíòîâ (îò 0 äî 7), à âñå îñòàëüíûå ýëåìåíòû áóäóò îïðåäåëÿòüñÿ îäíîçíà÷íî, ñîãëàñíî äèñòðèáóòèâíîìó çàêîíó. Àññîöèàòèâíîñòü óìíîæåíèÿ áóäåò âûïîëíÿòñÿ, òàê êàê óìíîæåíèå ñâîäèòñÿ ê ñëîæåíèþ. Êðîìå òîãî, óìíîæåíèå áóäåò êîììóòàòèâíî. Òàêèì îáðàçîì, ïîñëå âû÷åðêèâàíèÿ èçîìîðôíûõ, ìû ïîëó÷èì 4 êîëüöà ñ àáåëåâîé ãðóïïîé ïî ñëîæåíèþ :

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 2 4 6 0 2 4 6

0 3 6 1 4 7 2 5

0 4 0 4 0 4 0 4

0 5 2 7 4 1 6 3

0 6 4 2 0 6 4 2

0 7 6 5 4 3 2 1

0 0 0 0 0 0 0 0

0 2 4 6 0 2 4 6

0 4 0 4 0 4 0 4

0 6 4 2 0 6 4 2

0 0 0 0 0 0 0 0

0 2 4 6 0 2 4 6

0 4 0 4 0 4 0 4

0 6 4 2 0 6 4 2

0 0 0 0 0 0 0 0

0 4 0 4 0 4 0 4

0 0 0 0 0 0 0 0

0 4 0 4 0 4 0 4

0 0 0 0 0 0 0 0

0 4 0 4 0 4 0 4

0 0 0 0 0 0 0 0

0 4 0 4 0 4 0 4

 ñëó÷àå ñ ãðóïïîé  â ïîëóãðóïïå ïî óìíîæåíèþ óæå áóäåò 4 íåçàâèñèìûõ ïðîèçâåäåíèÿ, ò.å. ýòî òàêèå ýëåìåíòû â òàáëèöå Êýëè äëÿ ïîëóãðóïïû ïî óìíîæåíèþ, íà êîòîðûå ìû ìîæåì ïîñòàâèòü ëþáîé èç ýëåìåíòîâ îò 0 äî 7. Ñîîòâåòñòâåííî âñåãî ðàçëè÷íûõ êîëåö áåç ó÷åòà àññîöèàòèâíîñòè è âû÷åðêèâàíèÿ èçîìîðôíûõ áóäåò 84. Ïðîâåðêà àññîöèàòèâíîñòè óìíîæåíèÿ è âûäåëåíèå èçîìîðôíûõ êîëåö îñóùåñòâëÿåòñÿ ïðîãðàììíûì ñïîñîáîì. ×òîáû íàéòè êîëüöî, èçîìîðôíîå äàííîìó, íóæíî ñíà÷àëà íàéòè âñå àâòîìîðôèçìû àáåëåâîé ãðóïïû ïî ñëîæåíèþ, à ïîòîì ýòèìè ïðåîáðàçîâàíèÿìè ïîäåéñòâîâàòü íà ïîëóãðóïïû ïî óìíîæåíèþ, è ñîîòâåòñòâåííî ïîëó÷èâøèåñÿ îäèíàêîâûå êîëüöà âû÷åðêíóòü. Àâòîìîðôèçìû ãðóïïû  áóäåì èñêàòü âðó÷íóþ. Âûäåëèì â äàííîé ãðóïïå ýëåìåíòû 1, 3, 5, 7 – ýëåìåíòû ÷åòâåðòîãî ïîðÿäêà. Îñòàëüíûå ýëåìåíòû áóäóò âûðàæàòüñÿ ÷åðåç íèõ: 4=1+7, 6=1+5, 2=4+6 – ýòî ýëåìåíòû âòîðîãî ïîðÿäêà. Ïàðû ýëåìåíòîâ 1º(1,0), 3º(3,0) è 5º(1,1), 7º(3,1) – ïðîòèâîïîëîæíûå äðóã äðóãó ýëåìåíòû. Íàì äîñòàòî÷íî ïîñìîòðåòü, êàê áóäóò âåñòè ñåáÿ ýëåìåíòû ÷åòâåðòîãî ïîðÿäêà ïðè àâòîìîðôèçìàõ. Ýòî áóäóò 6 âçàèìíîîäíîçíà÷íûõ îòîáðàæåíèé, â òîì ÷èñëå è òîæäåñòâåííîå, êîòîðûå ïåðåâîäÿò äàííóþ ãðóïïó â ñåáÿ:

1®3

3®1

5®7

7®5

4®4

6®6

2®2

1®1

3®3

5®7

7®5

4®6

6®4

2®2

1®3

3®1

5®5

7®7

4®6

6®4

2®2

1®5

5®1

3®7

7®3

4®4

6®6

2®2

1®7

7®1

3®5

5®3

4®4

6®6

2®2

Êîëåö ñ àáåëåâîé ãðóïïîé ïî ñëîæåíèþ  áóäåò 89, òàê êàê íåçàâèñèìûõ ýëåìåíòîâ â ïîëóãðóïïå ïî óìíîæåíèþ áóäåò 9. Íóæíûå íàì êîëüöà, ìû áóäåì èñêàòü àíàëîãè÷íî ïðåäûäóùåìó ñëó÷àþ. Òîëüêî àâòîìîðôèçìû äàííîé ãðóïïû ìû áóäåì èñêàòü äðóãèì ñïîñîáîì. Çàìåòèì, ÷òî ãðóïïà  ÿâëÿåòñÿ òðåõìåðíûì âåêòîðíûì ïðîñòðàíñòâîì íàä ïîëåì Z2 è áàçèñîì ãðóïïû ìû íàçîâåì ëþáîé åå áàçèñ, êàê âåêòîðíîå ïðîñòðàíñòâî íàä Z2. Äàííàÿ ãðóïïà çàäàåòñÿ íåêîòîðûìè òðåìÿ ýëåìåíòàìè – áàçèñîì ãðóïïû, à îñòàëüíûå ýëåìåíòû âûðàæàþòñÿ ÷åðåç äàííûé áàçèñ. Ê ïðèìåðó íà÷àëüíûé áàçèñ: (1,2,3). Ñîîòâåòñòâåííî: 4=1+2, 5=1+3, 6=2+3, 7=1+2+3. Òàêèì îáðàçîì, êîëè÷åñòâî âñåõ áàçèñîâ – ýòî êîëè÷åñòâî âñåâîçìîæíûõ óïîðÿäî÷åííûõ òðîåê èç äàííûõ ñåìè ýëåìåíòîâ, çà èñêëþ÷åíèåì òàêèõ òðîåê, êîòîðûå áàçèñ íå îáðàçóþò, íà ïðèìåð: (1,2,4), òàê êàê 4=1+2. Êîëè÷åñòâî âñåõ áàçèñîâ – ýòî è áóäåò êîëè÷åñòâî âñåõ àâòîìîðôèçìîâ äàííîé ãðóïïû. Ñíà÷àëà íàéäåì âñåâîçìîæíûå íåóïîðÿäî÷åííûå òðîéêè èç 7 ýëåìåíòîâ, êîòîðûå îáðàçóþò áàçèñ. Ïîëó÷èì 28 òàêèõ òðîåê. ×òîáû íàéòè âñå áàçèñû, íóæíî êàæäóþ íàéäåííóþ òðîéêó, óïîðÿäî÷èòü, ò.å. 28·6. Òàêèì îáðàçîì ïîëó÷àåì 168 ðàçëè÷íûõ áàçèñîâ.


§2. Êîëüöà, îáðàçîâàííûå àääèòèâíîé ãðóïïîé

Äëÿ íàõîæäåíèÿ êîëåö, ñ àáåëåâîé ãðóïïîé ïî ñëîæåíèþ  ìû áóäåì èñïîëüçîâàòü ïðîãðàììó íà ÿçûêå Pascal (Ïðèëîæåíèå 1). Ïðèíöèï ðàáîòû ïðîãðàììû ñëåäóþùèé:

1) Íàõîäèì âñå ïîëóãðóïïû ïî óìíîæåíèþ, òàê, ÷òîáû âûïîëíÿëàñü äèñòðèáóòèâíîñòü;

2) Ïðîâåðÿåì êàæäóþ ïîëóãðóïïó íà àññîöèàòèâíîñòü, è, ñîîòâåòñòâåííî, íåíóæíûå âû÷åðêèâàåì;

3) Íàõîäèì èçîìîðôíûå êîëüöà ñëåäóþùèì îáðàçîì: à) áåðåì ïåðâóþ ïîëóãðóïïó ïî óìíîæåíèþ è äåéñòâóåì íà íåå àâòîìîðôèçìàìè äëÿ àääèòèâíîé àáåëåâîé ãðóïïû; á) íàõîäèì ïîëó÷èâøèåñÿ ïîëóãðóïïû ñðåäè îñòàëüíûõ, è âû÷åðêèâàåì èõ èç îáùåãî ñïèñêà; â) çàòåì áåðåì ñëåäóþùóþ íå âû÷åðêíóòóþ ïîëóãðóïïó è ïðîäåëûâàåì îïåðàöèè à)-á).

Ïîÿñíèì ïóíêò à). Ïóñòü f – àâòîìîðôèçì ãðóïïû . Áåðåì ìóëüòèïëèêàòèâíóþ ïîëóãðóïïó <A,·> ñîîòâåòñòâóþùåãî êîëüöà, ïðåäñòàâëåííóþ òàáëèöåé Êýëè. Òîãäà ÷åðåç <fA,*> îáîçíà÷èì ìóëüòèïëèêàòèâíóþ ïîëóãðóïïó íà , ïîëó÷åííóþ ñëåäóþùèì îáðàçîì. Äëÿ ëþáûõ a,bΠïîëàãàåì a*b=f(f –1(a)· f –1(b)). Ïðè ýòîì êîëüöà <A,·,+> è <fA,*,+> èçîìîðôíû.

Òàêèì îáðàçîì, ìû ïîëó÷èì 33 êîëüöà ñ àáåëåâîé ãðóïïîé ïî ñëîæåíèþ  è ìóëüòèïëèêàòèâíûìè ïîëóãðóïïàìè:


0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 1 1 1 1

0 0 0 0 1 1 1 1

0 0 0 0 1 1 1 1

0 0 0 0 1 1 1 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 0 0 0 2 2 2 2

0 0 0 0 2 2 2 2

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 4 4 4 4

0 0 0 0 4 4 4 4

0 0 0 0 4 4 4 4

0 0 0 0 4 4 4 4

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 5 5 5 5

0 0 0 0 5 5 5 5

0 0 0 0 5 5 5 5

0 0 0 0 5 5 5 5

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 2 0 2 0 2 0 2

0 2 0 2 0 2 0 2

0 2 0 2 0 2 0 2

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 2 0 2 2 0 2 0

0 2 0 2 2 0 2 0

0 2 0 2 2 0 2 0

0 2 0 2 2 0 2 0

0 0 0 0 0 0 0 0

0 0 0 0 1 1 1 1

0 0 0 0 2 2 2 2

0 0 0 0 3 3 3 3

0 0 0 0 4 4 4 4

0 0 0 0 5 5 5 5

0 0 0 0 6 6 6 6

0 0 0 0 7 7 7 7

0 0 0 0 0 0 0 0

0 0 0 0 1 1 1 1

0 0 0 0 2 2 2 2

0 0 0 0 3 3 3 3

0 1 2 3 4 5 6 7

0 1 2 3 5 6 7 4

0 1 2 3 6 7 4 5

0 1 2 3 7 4 5 6

0 0 0 0 0 0 0 0

0 0 0 0 1 1 1 1

0 0 0 0 2 2 2 2

0 0 0 0 3 3 3 3

0 1 2 3 5 6 7 4

0 1 2 3 6 7 4 5

0 1 2 3 7 4 5 6

0 1 2 3 4 5 6 7

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 2 0 2 0 2 0 2

0 2 0 2 2 0 2 0

0 2 0 2 0 2 0 2

0 2 0 2 2 0 2 0

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 2 0 2 1 3 1 3

0 2 0 2 3 1 3 1

0 2 0 2 1 3 1 3

0 2 0 2 3 1 3 1

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 0 0 0 2 2 2 2

0 2 0 2 2 0 2 0

0 2 0 2 0 2 0 2

0 2 0 2 2 0 2 0

0 2 0 2 0 2 0 2

0 0 0 0 0 0 0 0

0 1 2 3 0 1 2 3

0 2 0 2 0 2 0 2

0 3 2 1 0 3 2 1

0 0 0 0 0 0 0 0

0 1 2 3 0 1 2 3

0 2 0 2 0 2 0 2

0 3 2 1 0 3 2 1

0 0 0 0 0 0 0 0

0 1 2 3 0 1 2 3

0 2 0 2 0 2 0 2

0 3 2 1 0 3 2 1

0 0 0 0 4 4 4 4

0 1 2 3 4 5 6 7

0 2 0 2 4 6 4 6

0 3 2 1 4 7 6 5

0 0 0 0 0 0 0 0

0 1 2 3 0 1 2 3

0 2 0 2 0 2 0 2

0 3 2 1 0 3 2 1

0 4 0 4 0 4 0 4

0 5 2 7 0 5 2 7

0 6 0 6 0 6 0 6

0 7 2 5 0 7 2 5

0 0 0 0 0 0 0 0

0 1 2 3 1 2 3 0

0 2 0 2 2 0 2 0

0 3 2 1 3 2 1 0

0 1 2 3 1 2 3 0

0 2 0 2 2 0 2 0

0 3 2 1 3 2 1 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 1 2 3 1 2 3 0

0 2 0 2 2 0 2 0

0 3 2 1 3 2 1 0

0 1 2 3 4 5 6 7

0 2 0 2 5 7 5 7

0 3 2 1 6 5 4 7

0 0 0 0 7 7 7 7

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 2 0 2 0 2 0 2

0 3 2 1 4 7 6 5

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 2 0 2 0 2 0 2

0 3 2 1 4 7 6 5

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 2 0 2 0 2 0 2

0 3 2 1 4 7 6 5

0 4 0 4 0 4 0 4

0 5 2 7 4 1 6 3

0 6 0 6 0 6 0 6

0 7 2 5 4 3 6 1

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 2 0 2 0 2 0 2

0 3 2 1 4 7 6 5

0 4 0 4 2 6 2 6

0 5 2 7 6 3 4 1

0 6 0 6 2 4 2 4

0 7 2 5 6 1 4 3

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 0 0 0 4 4 4 4

0 2 0 2 4 6 4 6

0 0 0 0 4 4 4 4

0 2 0 2 4 6 4 6

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 0 0 0 0 0 0 0

0 2 0 2 0 2 0 2

0 2 0 2 2 0 2 0

0 0 0 0 2 2 2 2

0 2 0 2 2 0 2 0

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 2 0 2 1 3 1 3

0 0 0 0 2 2 2 2

0 2 0 2 3 1 3 1

0 1 2 3 4 5 6 7

0 3 2 1 5 4 7 6

0 1 2 3 6 7 4 5

0 3 2 1 7 6 5 4

0 0 0 0 0 0 0 0

0 2 0 2 2 0 2 0

0 0 0 0 0 0 0 0

0 2 0 2 2 0 2 0

0 2 0 2 0 2 0 2

0 0 0 0 2 2 2 2

0 2 0 2 0 2 0 2

0 0 0 0 2 2 2 2

0 0 0 0 0 0 0 0

0 2 0 2 2 0 2 0

0 0 0 0 0 0 0 0

0 2 0 2 2 0 2 0

0 2 0 2 5 7 5 7

0 0 0 0 7 7 7 7

0 2 0 2 5 7 5 7

0 0 0 0 7 7 7 7

0 0 0 0 0 0 0 0

0 2 0 2 3 1 3 1

0 0 0 0 2 2 2 2

0 2 0 2 1 3 1 3

0 3 2 1 5 4 7 6

0 1 2 3 4 5 6 7

0 3 2 1 7 6 5 4

0 1 2 3 6 7 4 5

0 0 0 0 0 0 0 0

0 4 0 4 0 4 0 4

0 0 0 0 0 0 0 0

0 4 0 4 0 4 0 4

0 0 0 0 0 0 0 0

0 4 0 4 0 4 0 4

0 0 0 0 0 0 0 0

0 4 0 4 0 4 0 4

0 0 0 0 0 0 0 0

0 4 0 4 2 6 2 6

0 0 0 0 0 0 0 0

0 4 0 4 2 6 2 6

0 2 0 2 0 2 0 2

0 6 0 6 2 4 2 4

0 2 0 2 0 2 0 2

0 6 0 6 2 4 2 4

0 0 0 0 0 0 0 0

0 4 0 4 6 2 6 2

0 0 0 0 0 0 0 0

0 4 0 4 6 2 6 2

0 6 0 6 6 0 6 0

0 2 0 2 0 2 0 2

0 6 0 6 6 0 6 0

0 2 0 2 0 2 0 2


§3. Êîëüöà, îáðàçîâàííûå àääèòèâíîé ãðóïïîé

Äëÿ íàõîæäåíèÿ êîëåö ñ äàííîé ãðóïïîé ïî ñëîæåíèþ èñïîëüçîâàëàñü ïðîãðàììà íà ÿçûêå Pascal (Ïðèëîæåíèå 2). Ïðèíöèï äåéñòâèÿ äàííîé ïðîãðàììû, àíàëîãè÷åí ïðèíöèïó, îïèñàííîìó â ïðåäûäóùåì ïàðàãðàôå. Äîáàâëÿåòñÿ òîëüêî ïóíêò ïî íàõîæäåíèþ âñåõ áàçèñîâ äàííîé àääèòèâíîé ãðóïïû.

Âñåãî êîëåö ñ àääèòèâíîé ãðóïïîé  áóäåò 355. Âûïèøåì íåêîòîðûå èç íèõ:


0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 0 1 0 1 1 1

0 0 0 1 0 1 1 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 3 0 3 3 3

0 0 0 0 0 0 0 0

0 0 0 3 0 3 3 3

0 0 0 3 0 3 3 3

0 0 0 3 0 3 3 3

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 1 0 1 0 1 1

0 0 0 0 0 0 0 0

0 0 1 0 1 0 1 1

0 0 1 0 1 0 1 1

0 0 1 0 1 0 1 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 1 1 1 1 0 0

0 0 0 0 0 0 0 0

0 0 1 1 1 1 0 0

0 0 1 1 1 1 0 0

0 0 1 1 1 1 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 2 3 2 3 6 6

0 0 0 0 0 0 0 0

0 0 2 3 2 3 6 6

0 0 2 3 2 3 6 6

0 0 2 3 2 3 6 6

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 2 5 2 5 7 7

0 0 0 0 0 0 0 0

0 0 2 5 2 5 7 7

0 0 2 5 2 5 7 7

0 0 2 5 2 5 7 7

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 1 1 3 0 5 5 3

0 0 0 0 0 0 0 0

0 1 1 3 0 5 5 3

0 1 1 3 0 5 5 3

0 1 1 3 0 5 5 3

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 1 1 7 0 6 6 7

0 0 0 0 0 0 0 0

0 1 1 7 0 6 6 7

0 1 1 7 0 6 6 7

0 1 1 7 0 6 6 7

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 4 0 3 4 7 3 7

0 0 0 0 0 0 0 0

0 4 0 3 4 7 3 7

0 4 0 3 4 7 3 7

0 4 0 3 4 7 3 7

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 4 0 6 4 5 6 5

0 0 0 0 0 0 0 0

0 4 0 6 4 5 6 5

0 4 0 6 4 5 6 5

0 4 0 6 4 5 6 5

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 0 1 0 1 1 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 0 1 0 1 1 1

0 0 0 1 0 1 1 1

0 0 0 1 0 1 1 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 1 0 1 0 1 1

0 0 0 1 0 1 1 1

0 0 1 0 1 0 1 1

0 0 1 1 1 1 0 0

0 0 1 1 1 1 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 1 1 1 1 0 0

0 0 0 1 0 1 1 1

0 0 1 1 1 1 0 0

0 0 1 0 1 0 1 1

0 0 1 0 1 0 1 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 1

0 0 1 2 1 2 4 4

0 0 0 1 0 1 1 1

0 0 1 2 1 2 4 4

0 0 1 4 1 4 2 2

0 0 1 4 1 4 2 2

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 2 0 2 2 2

0 0 0 3 0 3 3 3

0 0 0 2 0 2 2 2

0 0 0 3 0 3 3 3

0 0 0 6 0 6 6 6

0 0 0 6 0 6 6 6

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 2 0 2 2 2

0 0 0 5 0 5 5 5

0 0 0 2 0 2 2 2

0 0 0 5 0 5 5 5

0 0 0 7 0 7 7 7

0 0 0 7 0 7 7 7

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 2 0 2 2 2

0 0 2 3 2 3 6 6

0 0 0 2 0 2 2 2

0 0 2 3 2 3 6 6

0 0 2 6 2 6 3 3

0 0 2 6 2 6 3 3


Áèáëèîãðàôè÷åñêèé ñïèñîê.

1.   Êîñòðèêèí À.È. Ââåäåíèå â àëãåáðó. – Ì.: Íàóêà, 1997.

2.   Ñêîðíÿêîâ Ë.À. Ýëåìåíòû àëãåáðû. – Ì.: Íàóêà, 1986.


Ïðèëîæåíèå

1. Òåêñò ïðîãðàììû ïîèñêà êîëåö, èìåþùèõ àääèòèâíóþ ãðóïïó .

Ïðîãðàììà 1. Ôîðìèðîâàíèå ìóëüòèïëèêàòèâíûõ ïîëóãðóïï:

program form;

uses crt;

type mas=array [0..7,0..7] of integer;

     dmas=array [1..7,1..7] of integer;

var a:mas;

    b:dmas;

    f:text;

procedure sc(var a:mas);

    var i,j:integer;

 begin

    assign(f,'a:\mat.txt');

    reset(f);

    for i:=0 to 7 do begin

     for j:=0 to 7 do read(f,a[i,j]);

     readln(f);

                      end;

     close(f);

 end;

procedure zap1(k1,k2,k3,k4:integer;a:mas; var b:dmas);

   var t2,t3,t5,t6,t7:integer;

    begin

      b[1,1]:=k1; b[1,4]:=k2; b[4,1]:=k3; b[4,4]:=k4;

      b[1,2]:=a[b[1,1],b[1,1]]; b[1,3]:=a[b[1,1],b[1,2]];

      b[1,5]:=a[b[1,1],b[1,4]]; b[1,6]:=a[b[1,1],b[1,5]];

      b[1,7]:=a[b[1,1],b[1,6]];

      for t2:=1 to 7 do b[2,t2]:=a[b[1,t2],b[1,t2]];

      for t3:=1 to 7 do b[3,t3]:=a[b[1,t3],b[2,t3]];

       b[4,2]:=a[b[4,1],b[4,1]]; b[4,3]:=a[b[4,1],b[4,2]];

       b[4,5]:=a[b[4,1],b[4,4]]; b[4,6]:=a[b[4,1],b[4,5]];

       b[4,7]:=a[b[4,1],b[4,6]];

       for t5:=1 to 7 do b[5,t5]:=a[b[1,t5],b[4,t5]];

       for t6:=1 to 7 do b[6,t6]:=a[b[1,t6],b[5,t6]];

       for t7:=1 to 7 do b[7,t7]:=a[b[1,t7],b[6,t7]];

    end;

procedure zap(a:mas);

     var f1:text;

         i,j,k1,k2,k3,k4,r:integer;

 begin

     assign(f1,'a:\a2.txt');

     rewrite(f1);

     r:=0;

     for k1:=0 to 7 do

      for k2:=0 to 7 do

       for k3:=0 to 7 do

        for k4:=0 to 7 do begin

     zap1(k1,k2,k3,k4,a,b);

     for i:=1 to 7 do begin

     for j:=1 to 7 do write(f1,b[i,j]);

     writeln(f1);

                      end;

     writeln(f1);  inc(r);

                          end;

     close(f1);

     writeln(r);

 end;

     begin

clrscr;

sc(a);

zap(a);

    writeln('ok');

    readln;

    end.

Ïðîãðàììà 2. Ïðîâåðêà íà àññîöèàòèâíîñòü:

program assoc;

uses crt;

type mas=array [0..7,0..7] of integer;

var a,b:mas;

    i,j,k1,k2,k3,n,i1,i2,r,q:integer;

    f,f1:text;

   begin

clrscr;

    q:=0;

    assign(f,'a:\w03.txt');

    reset(f);

    assign(f1,'a:\aw03.txt');

    rewrite(f1);

    n:=1; r:=0;

     while n<=2048 do begin

    for i:=0 to 7 do begin

     for j:=0 to 7 do read(f,a[i,j]);

                      readln(f);

                     end;

                for k1:=1 to 7 do

                 for k2:=1 to 7 do

                  for k3:=1 to 7 do

                   if a[k1,a[k2,k3]]<>a[a[k1,k2],k3] then q:=1;

                           if q<>1 then begin

                           for i1:=0 to 7 do begin

                           for i2:=0 to 7 do write(f1,a[i1,i2],' ');

                           writeln(f1);

                                             end;

                                             inc(r);

                                             writeln(f1);

                                                         end;

                       readln(f);inc(n);q:=0;

                       end;

       close(f);

       close(f1);

  writeln(r);

  writeln('ok');

  readln;

  end.

Ïðîãðàììà 3. Íàõîæäåíèå èçîìîðôíûõ êîëåö:

program izomorf;

uses crt;

const p=1;

type mas=array [0..7,0..7] of integer;

     mas1=array [1..8,1..8] of integer;

var a,b:mas;

    y:mas1;

    i,j,n,i1,i2,r,w,h,g,d:integer;

    f,f1,f2:text;

label 1;

 procedure alfa(a:mas; var b:mas);

   var k1,k2,j1,j2,z1,z2,z3,z4,q3,w3:integer;

      begin

            for k1:=0 to 7 do   begin

                                b[0,k1]:=0;

                                b[1,k1]:=a[7,k1];

                                b[2,k1]:=a[2,k1];

                                b[3,k1]:=a[5,k1];

                                b[4,k1]:=a[4,k1];

                                b[5,k1]:=a[3,k1];

                                b[6,k1]:=a[6,k1];

                                b[7,k1]:=a[1,k1];

                                end;

            for k2:=0 to 7 do   begin

                                z1:=b[k2,3];z2:=b[k2,5];

                                b[k2,5]:=z1;b[k2,3]:=z2;

                                z3:=b[k2,1];z4:=b[k2,7];

                                b[k2,7]:=z3;b[k2,1]:=z4;

                                end;

                   for j1:=0 to 7 do

                   for j2:=0 to 7 do begin

                                  if b[j1,j2]=1 then b[j1,j2]:=-1;

                                  if b[j1,j2]=7 then b[j1,j2]:=-7;

                                     end;

                   for j1:=0 to 7 do

                   for j2:=0 to 7 do begin

                                  if b[j1,j2]=-1 then b[j1,j2]:=7;

                                  if b[j1,j2]=-7 then b[j1,j2]:=1;

                                     end;

                   for j1:=0 to 7 do

                   for j2:=0 to 7 do begin

                                  if b[j1,j2]=5 then b[j1,j2]:=-5;

                                  if b[j1,j2]=3 then b[j1,j2]:=-3;

                                     end;

                   for j1:=0 to 7 do

                   for j2:=0 to 7 do begin

                                  if b[j1,j2]=-5 then b[j1,j2]:=3;

                                  if b[j1,j2]=-3 then b[j1,j2]:=5;

                                     end;

                   for q3:=0 to 7 do begin

                   for w3:=0 to 7 do write(b[q3,w3],' ');

                      writeln;

                     end;

  end;

 procedure prov(b:mas);

  var q,i3,j3,t,m,x,i4,j4:integer;

      a1:mas;

  begin

        t:=1;

        reset(f);

        rewrite(f1);

     for m:=1 to 9 do readln(f);

    while t<=p do begin

    for i3:=0 to 7 do begin

     for j3:=0 to 7 do read(f,a1[i3,j3]);

                      readln(f);

                     end;

                   q:=0;

      for i3:=0 to 7 do

           for j3:=0 to 7 do begin

           if a1[i3,j3]=b[i3,j3] then inc(q); end;

           if q<>64 then

           {for x:=1 to 9 do readln(f) else}

                                          begin

                   for i4:=0 to 7 do begin

                   for j4:=0 to 7 do write(f1,a1[i4,j4],' ');

                      writeln(f1);

                                     end;

                      writeln(f1);

                                        end;

                       readln(f);

                       inc(t);

                       end;

  end;

   begin

clrscr;

    assign(f1,'a:\pr.txt');

    assign(f2,'a:\iaw.txt');

    rewrite(f2);

    assign(f,'a:\aw03.txt');

    n:=1;

    reset(f);

    rewrite(f1);

    for i:=0 to 7 do begin

     for j:=0 to 7 do read(f,a[i,j]);

                      readln(f);

                     end;

                     {if a[i,j]=8 then begin n:=8; goto 1; end;}

         alfa(a,b);

         readln(f);

         w:=0;

         for h:=0 to 7 do

             for g:=0 to 7 do

                 if a[h,g]=b[h,g] then inc(w);

                 if w<>64 then prov(b) else  begin

            r:=1;

         while r<=p do begin

             for i1:=1 to 8 do begin

                   for i2:=1 to 8 do read(f,y[i1,i2]);

                      readln(f);

                end;

                 for i1:=1 to 8 do begin

                   for i2:=1 to 8 do write(f1,y[i1,i2],' ');

                      writeln(f1);

                     end;

                     writeln(f1);

                     readln(f);

                     inc(r);

                     end;

                             end;

            for i1:=0 to 7 do begin

                   for i2:=0 to 7 do write(f2,a[i1,i2],' ');

                      writeln(f2);

                                     end;

                             writeln(f2);

              reset(f1);

              rewrite(f);

              d:=1;

              while d<=p do begin

             for i1:=1 to 8 do begin

                   for i2:=1 to 8 do read(f1,y[i1,i2]);

                      readln(f1);

                     end;

                 for i1:=1 to 8 do begin

                   for i2:=1 to 8 do write(f,y[i1,i2],' ');

                      writeln(f);

                     end;

                     writeln(f);

                     readln(f1);

                     inc(d);

                     end;

                            {readln(f1);

                            writeln(f);

                            inc(n);

                            end;}

 close(f);

 close(f1);

 close(f2);

 writeln('ok');

 readln;

 end.


2. Òåêñò ïðîãðàììû ïîèñêà êîëåö, èìåþùèõ àääèòèâíóþ ãðóïïó .

Ïðîãðàììà 1. Íàõîæäåíèå âñåõ áàçèñîâ äàííîé àääèòèâíîé ãðóïïû:

program basis;

uses crt;

type mas=array [1..3] of integer;

var a,b,c,d,e,f,g:char;

    i,j,n,k:integer;

    x:mas;

    f1,f2:text;

 begin

   assign(f2,'a:\28.txt');

   reset(f2);

   assign(f1,'a:\new168.txt');

   rewrite(f1);

     n:=1;

     while n<=28 do begin

     for i:=1 to 3 do read(f2,x[i]);

                            write(f1,x[1],' ',x[2],' ',x[3]);

                            writeln(f1);

                             write(f1,x[1],' ',x[3],' ',x[2]);

                             writeln(f1);

                              write(f1,x[3],' ',x[1],' ',x[3]);

                              writeln(f1);

                               write(f1,x[3],' ',x[2],' ',x[1]);

                               writeln(f1);

                                write(f1,x[2],' ',x[3],' ',x[1]);

                                writeln(f1);

                                 write(f1,x[2],' ',x[1],' ',x[3]);

                                 writeln(f1);

                      readln(f2);

                      writeln(f1);

                      inc(n);

                      end;

  close(f2);

  close(f1);

 writeln('ok');

 readln;

 end.

Ïðîãðàììà 2. Ôîðìèðîâàíèå ïîëóãðóïï, ñ ó÷åòîì àññîöèàòèâíîñòè:

program assZ2;

uses crt;

type mas=array [0..7,0..7] of integer;

var a,a1:mas;

    i1,i2,i3,i4,i5,i6,i7,i8,i9,k1,k2,k3,r:integer;

    n:real;

    f,f1:text;

procedure sc(var a1:mas);

    var i,j:integer;

 begin

    assign(f1,'a:\z2summ.txt');

    reset(f1);

    for i:=0 to 7 do begin

     for j:=0 to 7 do read(f1,a1[i,j]);

     readln(f1);

                      end;

     close(f1);

 end;

procedure zap(i1,i2,i3,i4,i5,i6,i7,i8,i9:integer;a1:mas; var r:integer);

  var   i,j,t1,t2,t3,t4,q:integer;

  begin

                    q:=0;

                    for t1:=0 to 7 do a[0,t1]:=0;

                    for t2:=1 to 7 do a[t2,0]:=0;

                    a[1,1]:=i1; a[1,2]:=i2; a[1,3]:=i3;

                    a[2,1]:=i4; a[2,2]:=i5; a[2,3]:=i6;

                    a[3,1]:=i7; a[3,2]:=i8; a[3,3]:=i9;

                       for t3:=1 to 3 do begin

                           a[t3,4]:=a1[a[t3,1],a[t3,2]];

                           a[t3,5]:=a1[a[t3,1],a[t3,3]];

                           a[t3,6]:=a1[a[t3,2],a[t3,3]];

                           a[t3,7]:=a1[a[t3,1],a[t3,6]];

                                         end;

                       for t4:=1 to 7 do begin

                           a[4,t4]:=a1[a[1,t4],a[2,t4]];

                           a[5,t4]:=a1[a[1,t4],a[3,t4]];

                           a[6,t4]:=a1[a[2,t4],a[3,t4]];

                           a[7,t4]:=a1[a[1,t4],a[6,t4]];

                                         end;

                     {for i:=0 to 7 do begin

                       for j:=0 to 7 do write(a[i,j],' ');

                                        writeln;

                                        end;}

                     for k1:=0 to 7 do

                      for k2:=0 to 7 do

                       for k3:=0 to 7 do

                        if a[k1,a[k2,k3]]<>a[a[k1,k2],k3] then q:=1;

                      {writeln(q);}

                      if q=0 then begin

                         inc(r);

                       {for i:=0 to 2 do begin

                       for j:=0 to 2 do write(f,a[i,j],' ');

                                        writeln(f);

                                        end;

                                        writeln(f);

                                        end;

                                        q:=0;}

                               end;

  end;

  begin

 clrscr;

   r:=0;

   sc(a1);

   assign(f,'a:\z2.txt');

   rewrite(f);

{  i1:=6;i2:=6;i3:=6;i4:=6;i5:=6;i6:=6;i7:=6;i8:=6;i9:=6;}

    for i1:=0 to 7 do

     for i2:=0 to 7 do

      for i3:=0 to 7 do

       for i4:=0 to 7 do

        for i5:=0 to 7 do

         for i6:=0 to 7 do

          for i7:=0 to 7 do

           for i8:=0 to 7 do

            for i9:=0 to 7 do begin

            zap(i1,i2,i3,i4,i5,i6,i7,i8,i9,a1,r);

            writeln(r);

                              end;

 writeln(' ',r);

 close(f);

 writeln('ok');

 readln;

 end.

Ïðîãðàììà 3. Íàõîæäåíèå èçîìîðôíûõ êîëåö:

program izomorf;

uses crt;

const p=1;

type mas=array [0..7,0..7] of integer;

     mas1=array [1..3] of integer;

var a,b,a1:mas;

    y:mas1;

    n,j1,i2,t,h,g,d:integer;

    f,f1,f2,f3,f8:text;

procedure basis(var y:mas1);

    var i:integer;

    begin

      for i:=1 to 3 do read(f2,y[i]);

                    readln(f2);

    end;

procedure sc(var a:mas);

    var i,j:integer;

     begin

       reset(f1);

       for i:=0 to 7 do begin

       for j:=0 to 7 do read(f1,a[i,j]);

                        readln(f1);

                        end;

     end;

{procedure glav(b:mas);

  var q,i,j,x,k:integer;

    begin

             x:=0;k:=1;

             reset(f1);

             rewrite(f8);

             while n<=t do begin

             q:=0;

             for i:=0 to 7 do begin

             for j:=0 to 7 do read(f1,a1[i,j]);

                              readln(f1);

                              end;

               for i:=0 to 7 do

               for j:=0 to 7 do

                     if a1[i,j]=b[i,j] then inc(q);

                 if q=64 then begin inc(h);

                                    x:=1;

                                    end

                                    else

                         for i:=0 to 7 do begin

                         for j:=0 to 7 do write(f8,a1[i,j],' ');

                                          writeln(f8);

                                          end;

                        inc(n);

                        readln(f1);

                        writeln(f8);

                          end;

                 if x=1 then t:=t-2 else t:=t-1;

                        reset(f8);

                        rewrite(f1);

                        while k<=t do begin

                        for i:=0 to 7 do begin

                         for j:=0 to 7 do read(f8,a1[i,j]);

                                          readln(f8);

                                          end;

                        for i:=0 to 7 do begin

                         for j:=0 to 7 do write(f1,a1[i,j],' ');

                                          writeln(f1);

                                          end;

                                     inc(k);

                                      end;

end;}

procedure newb(y:mas1;a:mas; var b:mas);

    var i,j,z1,z2,z3:integer;

      begin

         for i:=0 to 7 do begin

             z1:=a[1,i]; a[1,i]:=a[y[1],i]; a[y[1],i]:=z1;

             z2:=a[2,i]; a[2,i]:=a[y[2],i]; a[y[2],i]:=z2;

             z3:=a[3,i]; a[3,i]:=a[y[3],i]; a[y[3],i]:=z3;

                          end;

          for j:=0 to 7 do begin

             z1:=a[j,1]; a[j,1]:=a[j,y[1]]; a[j,y[1]]:=z1;

             z2:=a[j,2]; a[j,2]:=a[j,y[2]]; a[j,y[2]]:=z2;

             z3:=a[j,3]; a[j,3]:=a[j,y[3]]; a[j,y[3]]:=z3;

                           end;

             for i:=0 to 7 do

             for j:=0 to 7 do begin

                           if a[i,j]=1 then a[i,j]:=-1;

                           if a[i,j]=y[1] then a[i,j]:=-y[1];

                              end;

             for i:=0 to 7 do

             for j:=0 to 7 do begin

                           if a[i,j]=-1 then a[i,j]:=y[1];

                           if a[i,j]=-y[1] then a[i,j]:=1;

                              end;

             for i:=0 to 7 do

             for j:=0 to 7 do begin

                           if a[i,j]=2 then a[i,j]:=-2;

                           if a[i,j]=y[2] then a[i,j]:=-y[2];

                              end;

             for i:=0 to 7 do

             for j:=0 to 7 do begin

                           if a[i,j]=-2 then a[i,j]:=y[2];

                           if a[i,j]=-y[2] then a[i,j]:=2;

                              end;

             for i:=0 to 7 do

             for j:=0 to 7 do begin

                           if a[i,j]=3 then a[i,j]:=-3;

                           if a[i,j]=y[3] then a[i,j]:=-y[3];

                              end;

             for i:=0 to 7 do

             for j:=0 to 7 do begin

                           if a[i,j]=-3 then a[i,j]:=y[3];

                           if a[i,j]=-y[3] then a[i,j]:=3;

                              end;

        for i:=0 to 7 do

        for j:=0 to 7 do b[i,j]:=a[i,j];

               {glav(b);}

                 for i:=0 to 7 do begin

                 for j:=0 to 7 do write(f,b[i,j],' ');

                                  writeln(f);

                                  end;

                                  writeln(f);

            end;

procedure new5(b,a:mas);

    var i,j,z1,z2,i1:integer;

      begin

                 for i:=1 to 5 do begin

                    if i mod 2<>0 then begin

                     for j:=0 to 7 do begin

              z1:=b[2,j]; b[2,j]:=b[3,j]; b[3,j]:=z1;

                                      end;

                      for j:=0 to 7 do begin

               z2:=b[j,2]; b[j,2]:=b[j,3]; b[j,3]:=z2;

                                        end;

             for i1:=0 to 7 do

             for j:=0 to 7 do begin

                           if b[i1,j]=3 then b[i1,j]:=-3;

                           if b[i1,j]=2 then b[i1,j]:=-2;

                              end;

             for i1:=0 to 7 do

             for j:=0 to 7 do begin

                           if b[i1,j]=-3 then b[i1,j]:=2;

                           if b[i1,j]=-2 then b[i1,j]:=3;

                              end;

                              {glav(b);}

                for i1:=0 to 7 do begin

                 for j:=0 to 7 do write(f,b[i1,j],' ');

                                  writeln(f);

                                  end;

                                  writeln(f);

                     end;

                    if i mod 2=0 then begin

                     for j:=0 to 7 do begin

              z1:=b[1,j]; b[1,j]:=b[2,j]; b[2,j]:=z1;

                                      end;

                      for j:=0 to 7 do begin

               z2:=b[j,1]; b[j,1]:=b[j,2]; b[j,2]:=z2;

                                        end;

             for i1:=0 to 7 do

             for j:=0 to 7 do begin

                           if b[i1,j]=1 then b[i1,j]:=-1;

                           if b[i1,j]=2 then b[i1,j]:=-2;

                              end;

             for i1:=0 to 7 do

             for j:=0 to 7 do begin

                           if b[i1,j]=-1 then b[i1,j]:=2;

                           if b[i1,j]=-2 then b[i1,j]:=1;

                              end;

                              {glav(b);}

                 for i1:=0 to 7 do begin

                 for j:=0 to 7 do write(f,b[i1,j],' ');

                                  writeln(f);

                                  end;

                                   writeln(f);

                 end;

                                     end;

  end;

 begin

 clrscr;

 assign(f1,'a:\vse_z21.txt');

 reset(f1);

 assign(f2,'a:\28.txt');

 reset(f2);

 assign(f,'a:\xx.txt');

 rewrite(f);

 {assign(f3,'a:\ist.txt');

 rewrite(f3);

 assign(f8,'a:\pom.txt');

 rewrite(f8);}sc(a);

           for g:=1 to 28 do begin

           basis(y);{d:=1;g:=0;}

           {while d<=t do begin}

           {inc(g);writeln(g);}

           {for j1:=0 to 7 do begin

              for i2:=0 to 7 do write(f3,a[j1,i2]);

                                  writeln(f3);

                                  end;

                                  writeln(f3);}

           newb(y,a,b);

           {n:=1;}

           new5(b,a);

           {inc(d);}

           end;

 close(f);

 close(f1);

 close(f2);

 {close(f3);}

 {close(f8);}

{ writeln(h); }

 writeln('ok');

 readln;

 end.


 

Íàó÷íî-ìåòîäè÷åñêèé öåíòð © 2009