27
PUP SCITECH R & D CENTER F I N I T A S F I N I T A S A SOFTWARE FOR THE CONSTRUCTION AND ANALYSIS OF FINITE ALGEBRAS Sta. Mesa, Manila, Philippines Polytechnic University of the Philippines Manila, Philippines Raoul E. Cawagas

PUP SCITECH R & D CENTER F I N I T A S F I N I T A S A SOFTWARE FOR THE CONSTRUCTION AND ANALYSIS OF FINITE ALGEBRAS Sta. Mesa, Manila, Philippines Polytechnic

Embed Size (px)

Citation preview

PUP SCITECH R & D CENTER

F I N I T A SF I N I T A S

A SOFTWARE FOR THE CONSTRUCTION

AND ANALYSIS OF FINITE ALGEBRAS

Sta. Mesa, Manila, Philippines

Polytechnic University of the PhilippinesManila, Philippines

Raoul E. Cawagas

ABOUT ABOUT F I N I T A SF I N I T A S

FINITAS FINITAS is a unique finite algebra package is a unique finite algebra package designed for the construction and analysis of finite designed for the construction and analysis of finite algebraic structures like algebraic structures like groupoids, quasigroups, groupoids, quasigroups, loopsloops (which are not associative) as well as (which are not associative) as well as semigroupssemigroups and and groups groups (which are associative). (which are associative).

FINITASFINITAS is user friendly. You do not need to is user friendly. You do not need to learn special syntax in order to use it. Construction learn special syntax in order to use it. Construction and analysis of a finite system is based on the and analysis of a finite system is based on the structure matrix methodstructure matrix method in which a system is in which a system is defined in terms of its defined in terms of its Cayley tableCayley table. This is in . This is in marked contrast to most mathematical software marked contrast to most mathematical software in the market today.in the market today.

THE NEED FOR THE NEED FOR FINITASFINITAS

The study of finite algebras (like The study of finite algebras (like quasigroups, quasigroups, loops, semigroups and groupsloops, semigroups and groups) requires powerful ) requires powerful computer algorithms for solving problems involving computer algorithms for solving problems involving their construction and analysis. their construction and analysis.

Most softwares available today can deal only with Most softwares available today can deal only with associative algebras like groups and related associative algebras like groups and related structures. For structures. For non-associative algebrasnon-associative algebras like like quasigroups and NAFIL loops, there appears to be quasigroups and NAFIL loops, there appears to be no available softwares. Thus, there is a need for no available softwares. Thus, there is a need for special softwares like special softwares like FINITASFINITAS. .

SOME APPLICATIONSSOME APPLICATIONS FINITASFINITAS is an effective research tool in the field of is an effective research tool in the field of

finite algebras. It has proven to be a very finite algebras. It has proven to be a very powerful computational tool that has led to powerful computational tool that has led to various significant discoveries in the development of various significant discoveries in the development of the the theorytheory of of NNon-on-AAssociative ssociative FFiniteinite IInvertible nvertible LLoops oops ((NAFILNAFIL) ) and also in the more general field of and also in the more general field of quasigroup theoryquasigroup theory..

FINITAS FINITAS has also been found to be a very has also been found to be a very effective mathematics learning aid. Using the effective mathematics learning aid. Using the software, a college or high school student can easily software, a college or high school student can easily create his own finite algebra, analyze it to create his own finite algebra, analyze it to determine its properties and relate it to other known determine its properties and relate it to other known systems within a typical class hour. systems within a typical class hour.

HOW TO RUNHOW TO RUN FINITASFINITAS FINITASFINITAS runs under Windows. So, first open your runs under Windows. So, first open your

computer under Windows.computer under Windows. The package consists of several files: The package consists of several files: Finitas.exe, Finitas.exe,

Finitas.dsk, FinHelp.chm, Fas.ico, Sample Tables Finitas.dsk, FinHelp.chm, Fas.ico, Sample Tables andand Sample Blocks Sample Blocks..

To open it, simply click on the To open it, simply click on the FINITASFINITAS icon icon. This . This will bring out the will bring out the FINITASFINITAS title page labeled: title page labeled: Welcome to FINITASWelcome to FINITAS. .

Then click on the Then click on the OkOk button to bring out a blank button to bring out a blank table editor windowtable editor window labeled labeled UNTITLED.TBL. UNTITLED.TBL.

For detailed instructions, open the For detailed instructions, open the HelpHelp menu menu..

FINITASFINITAS TITLE PAGE

This is the FINITAS main screen with its title page labeled Welcome to FINITAS.

TABLE EDITOR WINDOWTABLE EDITOR WINDOW

The table editor window is the main work area of FINITAS . It is basically a blank Cayley table used

for constructing a finite algebra.

HOW TO CONSTRUCT AN ALGEBRAHOW TO CONSTRUCT AN ALGEBRA

A A finite algebraic systemfinite algebraic system consists of a set consists of a set GG of finite of finite orderorder nn and a and a binary operationbinary operation satisfying a set of satisfying a set of AxiomsAxioms. Such a system is usually denoted by . Such a system is usually denoted by (G,(G,).).

A finite algebra is completely determined by the A finite algebra is completely determined by the nn22 possible possible binary productsbinary products of its n elements arranged of its n elements arranged in the form of a multiplication table called a in the form of a multiplication table called a Cayley Cayley tabletable. Thus, to construct a finite algebra we simply . Thus, to construct a finite algebra we simply construct its Cayley table.construct its Cayley table.

To do this, we first define the To do this, we first define the set Gset G, the , the operation operation , , and the and the AxiomsAxioms it is required to satisfy. Then we it is required to satisfy. Then we define the define the nn22 binary products of its elements and binary products of its elements and tabulate them in the form of a tabulate them in the form of a Cayley table.Cayley table.

Most algebraic structures satisfy some or all of the following Most algebraic structures satisfy some or all of the following AxiomsAxioms (or postulates): (or postulates):

Let Let S = {1,2,3,…,n}S = {1,2,3,…,n} be a set of order n and let be a set of order n and let be a binary operation be a binary operation on the set S.on the set S.

A1 (A1 (Closure AxiomClosure Axiom): For all a,b ): For all a,b S, a S, ab b S. S.

A2 (A2 (Identity AxiomIdentity Axiom): There exists an element e ): There exists an element e S such that e S such that ea = a a = a = a= ae for all a e for all a S. S.

A3 (A3 (Inverse AxiomInverse Axiom): Given an identity e ): Given an identity e S, to each a S, to each a S there is a S there is a unique a’unique a’ S such that a S such that aa’ = e = a’a’ = e = a’a.a.

A4 (A4 (Unique Solution AxiomUnique Solution Axiom): For all all a,b ): For all all a,b S, there exists unique S, there exists unique x,y x,y S such that a S such that ax = b and yx = b and ya = b.a = b.

A5 (A5 (Commutative AxiomCommutative Axiom): For all a,b ): For all a,b S, a S, ab = bb = ba.a.

A6 (A6 (Associative AxiomAssociative Axiom): For all a,b ): For all a,b S, a S, a(b(b c) = (a c) = (a b) b)c.c.

Algebraic AxiomsAlgebraic Axioms

Construction ProcedureConstruction Procedure First, decide what kind of an algebraic system First, decide what kind of an algebraic system (G,(G,))

you want to construct. This is determined primarily you want to construct. This is determined primarily by the by the AxiomsAxioms it is required to satisfy. it is required to satisfy.

Next, select your mode of construction: Next, select your mode of construction: MANUALMANUAL or or SEMI-AUTOSEMI-AUTO..

The MANUAL mode is the default. If you choose The MANUAL mode is the default. If you choose this, you can enter your data directly into the blank this, you can enter your data directly into the blank Cayley tableCayley table in the in the Table EditorTable Editor window. window.

If you choose the SEMI-AUTO mode, first open the If you choose the SEMI-AUTO mode, first open the ConstructConstruct menu and select the item menu and select the item Parameters Parameters to to bring out the bring out the Parameters dialog boxParameters dialog box. Here, you must . Here, you must indicate the indicate the order norder n of the system and the of the system and the AxiomsAxioms it it is required to satisfy.is required to satisfy.

PARAMETERS DIALOG BOX for construction under the SEMI-AUTO mode.

This box is used to indicate the order n and the Axioms of an algebra under construction. To select

a given Axiom, you must activate it.

SampleSample Construction Construction

Let us construct an abelian loop Let us construct an abelian loop (G, (G, )) of order of order n = 6n = 6 using the using the SEMI-AUTO mode. Here, we take G to be the set SEMI-AUTO mode. Here, we take G to be the set G = {1,2,3,4,5,6}.G = {1,2,3,4,5,6}. The subset The subset {1,2,3}{1,2,3} must form a must form a subsystemsubsystem of order m = 3. of order m = 3.

In the In the ParametersParameters dialog box, we enter 6 for order n, activate all of dialog box, we enter 6 for order n, activate all of the Axioms: the Axioms: A1, A3, A4, A5,A1, A3, A4, A5, and enter the numeral and enter the numeral 11 for for A2 A2 to to serve as theserve as the identity element identity element. See . See Figure G-P.Figure G-P.

Then click the Then click the OkOk button to automatically enter the numerals button to automatically enter the numerals 1,2,3,4,5,61,2,3,4,5,6 (in that order, as the elements of the set G), as row and (in that order, as the elements of the set G), as row and column headings. These will also appear as the entries in the first column headings. These will also appear as the entries in the first row and first column of the table as shown in row and first column of the table as shown in Figure G-1.Figure G-1.

Enter the elements of the subset {1,2,3} as shown in Enter the elements of the subset {1,2,3} as shown in Figure G-2Figure G-2 so so that they form a subsystem.that they form a subsystem.

Finally, enter the other numerals until the whole table is Finally, enter the other numerals until the whole table is completely filled up as shown in completely filled up as shown in Figure G-3 Figure G-3 andand G-4 G-4. Each entry . Each entry must satisfy the chosen Axioms in order to complete the desired must satisfy the chosen Axioms in order to complete the desired table. table.

SETTINGS OF THE PARAMETERS DIALOG BOX

Figure G-P. This box shows the settings for the

system (G,(G,)) to be constructed. Note that the to be constructed. Note that the element element 11 has been chosen as the identity element has been chosen as the identity element and that and that A1, A3, A4A1, A3, A4, and , and A5A5 have been activated. have been activated.

CharacteristicCharacteristic Patterns Patterns

In filling out the Cayley table S(G), the pattern (or position) of In filling out the Cayley table S(G), the pattern (or position) of entries is determined by the entries is determined by the AxiomsAxioms the system satisfies. These are the system satisfies. These are automatically satisfied if they are activated in the automatically satisfied if they are activated in the ParametersParameters dialog dialog box under the box under the SEMI-AUTO MODE.SEMI-AUTO MODE.

P(A1) P(A1) Closure PatternClosure Pattern: All entries g: All entries gij ij = g= gii g gjj of S(G) are elements of the of S(G) are elements of the set G and there is exactly one entry at each intersection of a given row i set G and there is exactly one entry at each intersection of a given row i and a given column j of S(G).and a given column j of S(G).

P(A2) P(A2) Identity PatternIdentity Pattern: In S(G), the entries in row e are identical to the : In S(G), the entries in row e are identical to the entries in column e, that is, gentries in column e, that is, gek ek = g = gkk = g = gkeke for all k = 1,…,n, where g for all k = 1,…,n, where gee is is the identity element of G.the identity element of G.

P(A3) P(A3) Inverse PatternInverse Pattern: The identity element g: The identity element ge e G appears exactly once G appears exactly once in each row and in each column of S(G) such that gin each row and in each column of S(G) such that gab ab = g = gee = g = gba ba ..

P(A4) P(A4) Unique Solution PatternUnique Solution Pattern: Each element g: Each element gbb G appears exactly G appears exactly once in each row x and in each column y of S(G), that is, gonce in each row x and in each column y of S(G), that is, gxaxa = g = gbb = g = gkaka iff k = x and giff k = x and gayay = g = gbb = g = gakak iff k = y. iff k = y.

P(A5) P(A5) Commutative PatternCommutative Pattern: The entries of S(G) are such that g: The entries of S(G) are such that gab ab = g = gbaba for all a,b = 1,…,n; S(G) is symmetric.for all a,b = 1,…,n; S(G) is symmetric.

CAYLEY TABLE OF THE SYSTEM (G,) UNDER CONSTRUCTION

Figure G-1. This table shows the entries in the 1st row and 1st column, where the element 1 is the

chosen identity.

Figure G-2. This table shows the entries for the required subsystem ({1,2,3},) of order m = 3.

PARTIAL ENTRIES OF THE CAYLEY TABLE OF (G,) UNDER CONSTRUCTION

Figure G-3. This table shows additional entries for the elements of the subset {1,2,3} that satisfy A4.

PARTIAL ENTRIES OF THE CAYLEY TABLE OF (G,) UNDER CONSTRUCTION

COMPLETED CAYLEY TABLE OF THE SYSTEM (G,)

Figure G-4. This table shows the entries for the elements of the subset {4,5,6} that satisfy A4. This completes the construction of the Cayley table of

the system (G,(G,))..

HOW TO ANALYZE A SYSTEMHOW TO ANALYZE A SYSTEM To analyze the constructed system To analyze the constructed system (G,(G,)), open the , open the

AnalyzeAnalyze menu and click on menu and click on Axioms TestAxioms Test..

Now click on Now click on Special properties test Special properties test to determine its to determine its weak weak associative properties associative properties (if any)(if any) like like power-power-associative, semi automorphic inverse properties, associative, semi automorphic inverse properties, etc.etc. Then click on Then click on Structural properties test Structural properties test and choose and choose Subsystems test, Subsystems test, etc.etc.

HOW TO DISPLAY RESULTS OF ANALYSISHOW TO DISPLAY RESULTS OF ANALYSIS

To display the results of analyses done on To display the results of analyses done on (G,(G,)), go to the , go to the DisplayDisplay menu and choose menu and choose System properties ofSystem properties of (G,(G,)), next , next Special properties ofSpecial properties of (G,(G,)), then , then Subsystems ofSubsystems of (G,(G,)), etc., etc.

DISPLAY: SUMMARY OF ANALYSIS OF (G,OF (G,))

This display simply shows the summary of the analysis done on the system (G,(G,)). It also shows that . It also shows that (G,(G,)) is an is an

Abelian NAFIL loopAbelian NAFIL loop of order 6. of order 6.

DISPLAY: SPECIAL PROPERTIES OF (G,DISPLAY: SPECIAL PROPERTIES OF (G,))

The system (G,(G,) ) was found to have the following was found to have the following special special propertiesproperties: AIP, AAIP, SAIP, and FL. The first three : AIP, AAIP, SAIP, and FL. The first three

properties are related.properties are related.

DISPLAY: SUBSYSTEMS OF (G,DISPLAY: SUBSYSTEMS OF (G,))

This display shows that (G,) has three subsystems all of which are abelian groups. In particular, it shows that the

subset {1,2,3} forms a subsystem.

Other Other FINITAS FINITAS Functions Functions FINITAS FINITAS can also do the following:can also do the following: Determine the Determine the powerspowers (Left/Right), (Left/Right), ordersorders (Left/Right) of (Left/Right) of

elements, as well as elements, as well as generatorsgenerators (if any) of a loop. (if any) of a loop. Determine (if any) the Determine (if any) the normal subsystemsnormal subsystems of a loop and their of a loop and their

factor systems.factor systems. Determine (if any) the Determine (if any) the nucleinuclei (left, middle, right), (left, middle, right), nucleusnucleus, and , and

centercenter of a loop. of a loop. Determine certain Determine certain associated matricesassociated matrices of the elements of a of the elements of a

system and their system and their permutation representations.permutation representations. Compare two systems for Compare two systems for isomorphism, homomorphism, isomorphism, homomorphism, and and

isotopy.isotopy. Import the text file of a Cayley table and convert it into a valid Import the text file of a Cayley table and convert it into a valid

FINITAS FINITAS table file. table file.

FINITAS - PresentationsFINITAS - Presentations FINITASFINITAS has been presented in the following international has been presented in the following international

conferences:conferences: 2000 - International Congress on Ghiyath Al-Din Jamshid 2000 - International Congress on Ghiyath Al-Din Jamshid

Kashani, Kashan University, IranKashani, Kashan University, Iran 1997 - 24th IBC/ABI International Congress on Arts and 1997 - 24th IBC/ABI International Congress on Arts and

Communications, Keble College, Oxford University, Communications, Keble College, Oxford University, EnglandEngland

1996 - 2nd European Congress of Mathematics1996 - 2nd European Congress of Mathematics

Janos Bolyai Mathematical Society, Budapest, HungaryJanos Bolyai Mathematical Society, Budapest, Hungary 1995 - 2nd Asian Mathematics Conference, Suranaree 1995 - 2nd Asian Mathematics Conference, Suranaree

University of Technology, Nakhon Ratchasima, Thailand.University of Technology, Nakhon Ratchasima, Thailand.

FINITAS FINITAS was developed at the was developed at the PUP SciTech R&D PUP SciTech R&D Center Center with the support of the with the support of the National Research National Research Council of the Philippines (NRCP)Council of the Philippines (NRCP) and the and the Philippine Philippine Council for Advanced Science and Technology Research Council for Advanced Science and Technology Research and Development (PCASTRD)and Development (PCASTRD) of the of the Department of Department of Science and Technology (DOST).Science and Technology (DOST).

I also wish to acknowledge the invaluable help of myI also wish to acknowledge the invaluable help of my Research AssistantsResearch Assistants Alexander S. Carrascal, Renilda S. Alexander S. Carrascal, Renilda S. Layno, Aurea Z. Rosal,Layno, Aurea Z. Rosal, my able programmers my able programmers Allan Allan Dimanlig Dimanlig andand Nero B. Leona, Nero B. Leona, and the other members of and the other members of my research staff.my research staff.

ACKNOWLEDGEMENTACKNOWLEDGEMENT

FINITAS FINITAS is available for trial purposes to interested is available for trial purposes to interested delegates of the delegates of the LOOPS’03 International LOOPS’03 International Conference.Conference. An An End User License Agreement End User License Agreement (EULA)(EULA) is available. is available.

The The FINITAS V1.1FINITAS V1.1 files can be copied and the files can be copied and the User’s ManualUser’s Manual can be reproduced, as well as several can be reproduced, as well as several papers related to papers related to FINITASFINITAS and its applications. and its applications.

For inquiries, send an e-mail to: Raoul E. Cawagas For inquiries, send an e-mail to: Raoul E. Cawagas [email protected]@pacific.net.ph The The

ANNOUNCEMENTANNOUNCEMENT