Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  CHAP003.htm   Sprache: HTML

 
 products/Sources/formale Sprachen/GAP/pkg/sonata/doc/htm/tut/CHAP003.htm


<html><head><title>[SONATA-tutorial] 3 The nearring library</title></head>
<body text="#000000" bgcolor="#ffffff">
[<a href = "chapters.htm">Up</a>] [<a href ="CHAP002.htm">Previous</a>] [<a href ="CHAP004.htm">Next</a>] [<a href = "theindex.htm">Index</a>]
<h1>3 The nearring library</h1><p>
<P>
<H3>Sections</H3>
<oL>
<li> <A HREF="CHAP003.htm#SECT001">An application of the nearring library</a>
<li> <A HREF="CHAP003.htm#SECT002">Appendix K revisited</a>
</ol><p>
<p>
There are many non-isomorphic nearrings, even of small order.
All non-isomorphic nearrings of orders 2 to 15 and
all non-isomorphic nearrings with identity up
to order 31 with exception of those on
the elementary abelian groups of orders
16 and 27 are collected in the SONATA
nearring library.
<p>
<p>
<h2><a name="SECT001">3.1 An application of the nearring library</a></h2>
<p><p>
The number of nearrings in the library is big.
For example, try
<p>
<pre>
    gap> NumberLibraryNearRings( GTW12_3 );
    48137
</pre>
<p>
Try your favorite small groups with this
function to get an impression of these
numbers.
<p>
Of course, no one can know all these nearrings
personally. Therefore, the main purpose
of the nearring library is to filter out the
nearrings of interest.
<p>
Consider for example the following
<p>
<strong>Problem:</strong> How many non-rings with identity of order 4 are
there  and what do they look like? If you cannot answer this
question adhoc, stay tuned. 
<p>
Let's start with the groups of order 4. Of course you know,
there are 2 groups of order 4: <code>GTW4_1</code>, the cyclic group
and <code>GTW4_2</code>, Klein's four group.
<p>
Let's go for GTW4_1 first:
<p>
<pre>
    gap> NumberLibraryNearRingsWithOne( GTW4_1 );
    1
    gap> Filtered( AllLibraryNearRingsWithOne( GTW4_1 ),     
    >              n -> not IsDistributiveNearRing( n ) );
    [  ]
</pre>
<p>
So, the only nearring with identity there is
on <code>GTW4_1</code> is the ring. Well... you knew that before,
didn't you?
<p>
Now for <code>GTW4_2</code>:
<p>
<pre>
    gap> NumberLibraryNearRingsWithOne( GTW4_2 );
    5
    gap> Filtered( AllLibraryNearRingsWithOne( GTW4_2 ),
    >              n -> not IsDistributiveNearRing( n ) );
    [ LibraryNearRing(4/2, 12), LibraryNearRing(4/2, 22) ]
</pre>
<p>
Here we go:
<p>
<pre>
    gap> PrintTable( LibraryNearRing( GTW4_2, 12 ) );
    Let:
    n0 := (())
    n1 := ((3,4))
    n2 := ((1,2))
    n3 := ((1,2)(3,4))

       +  | n0  n1  n2  n3  
      --------------------
      n0  | n0  n1  n2  n3  
      n1  | n1  n0  n3  n2  
      n2  | n2  n3  n0  n1  
      n3  | n3  n2  n1  n0  

       *  | n0  n1  n2  n3  
      --------------------
      n0  | n0  n0  n0  n0  
      n1  | n0  n0  n1  n1  
      n2  | n0  n0  n2  n2  
      n3  | n0  n1  n2  n3  
    gap> PrintTable( LibraryNearRing( GTW4_2, 22 ) );
    Let:
    n0 := (())
    n1 := ((3,4))
    n2 := ((1,2))
    n3 := ((1,2)(3,4))

       +  | n0  n1  n2  n3  
      --------------------
      n0  | n0  n1  n2  n3  
      n1  | n1  n0  n3  n2  
      n2  | n2  n3  n0  n1  
      n3  | n3  n2  n1  n0  

       *  | n0  n1  n2  n3  
      --------------------
      n0  | n0  n0  n2  n2  
      n1  | n0  n1  n2  n3  
      n2  | n0  n2  n2  n0  
      n3  | n0  n3  n2  n1  
</pre>
<p>
<p>
<h2><a name="SECT002">3.2 Appendix K revisited</a></h2>
<p><p>
An alternative to filtering the nearring library is to
use a <code>for ... do ... od</code> construction.
<p>
We shall demonstrate this by recomputing the list
of nearrings given in appendix K of <a href="biblio.htm#Pilz:Nearrings"><[>Pilz:Nearrings</cite></a>],
i.e. a list of all nearrings on the dihedral group of order 8
(<code>GTW8_4</code>) which have an identity, are non-zerosymmetric or
are integral.
<p>
First, we initialize the variable <code>nr_list</code
as the empty list:
<p>
<pre>
    gap> nr_list := [ ];
    [ ]
</pre>
<p>
Now, we write ourselves a <code>for</code> loop and add those nearrings
we want:
<p>
<pre>
    gap> for i in [1..NumberLibraryNearRings( GTW8_4 )] do  
    >       n := LibraryNearRing( GTW8_4, i );
    >       if ( not IsZeroSymmetricNearRing( n ) or     
    >            IsIntegralNearRing( n ) or          
    >            Identity( n ) <> fail    
    >          ) then              
    >         Add( nr_list, n );    
    >       fi;
    >    od;      
    gap> Length( nr_list );                                          
    141
</pre>
<p>
How many boolean nearrings are amongst these? We call a nearring
<strong>boolean</strong> if <i>x</i>*<i>x</i>=<i>x</i> for all <i>x</i>  ∈ <i>N</i>.
<p>
<pre>
    gap> Filtered( nr_list, IsBooleanNearRing );
    [ LibraryNearRing(8/4, 1314), LibraryNearRing(8/4, 1380), 
      LibraryNearRing(8/4, 1446), LibraryNearRing(8/4, 1447) ]
</pre>
<p>
Which correspond to the numbers
140, 86, 99, and 141 in
<a href="biblio.htm#Pilz:Nearrings"><[>Pilz:Nearrings</cite></a>], appendix K, accordingly.
<p>
For those who got interested in boolean nearrings:
many results about them have been collected in
<a href="biblio.htm#Pilz:Nearrings"><[>Pilz:Nearrings</cite></a>], 9.31.
<p>
<p>
[<a href = "chapters.htm">Up</a>] [<a href ="CHAP002.htm">Previous</a>] [<a href ="CHAP004.htm">Next</a>] [<a href = "theindex.htm">Index</a>]
<P>
<address>SONATA-tutorial manual<br>September 2025
</address></body></html>

Messung V0.5
C=94 H=99 G=96

¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge