Light's associativity test

Last updated

In mathematics, Light's associativity test is a procedure invented by F. W. Light for testing whether a binary operation defined in a finite set by a Cayley multiplication table is associative. The naive procedure for verification of the associativity of a binary operation specified by a Cayley table, which compares the two products that can be formed from each triple of elements, is cumbersome. Light's associativity test simplifies the task in some instances (although it does not improve the worst-case runtime of the naive algorithm, namely for sets of size ).

Contents

Description of the procedure

Let a binary operation ' · ' be defined in a finite set A by a Cayley table. Choosing some element a in A, two new binary operations are defined in A as follows:

xy = x· ( a·y )
xy = ( x·a ) ·y

The Cayley tables of these operations are constructed and compared. If the tables coincide then x · ( a · y ) = ( x · a ) · y for all x and y. This is repeated for every element of the set A.

The example below illustrates a further simplification in the procedure for the construction and comparison of the Cayley tables of the operations ' ' and ' '.

It is not even necessary to construct the Cayley tables of ' ' and ' ' for all elements of A. It is enough to compare Cayley tables of ' ' and ' ' corresponding to the elements in a proper generating subset of A.

When the operation ' . ' is commutative, then x y = y x. As a result, only part of each Cayley table must be computed, because x x = x x always holds, and x y = x y implies y x = y x.

When there is an identity element e, it does not need to be included in the Cayley tables because x y = x y always holds if at least one of x and y are equal to e.

Example

Consider the binary operation ' · ' in the set A = { a, b, c, d, e } defined by the following Cayley table (Table 1):

Table 1
·abcde
 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

The set { c, e } is a generating set for the set A under the binary operation defined by the above table, for, a = e · e, b = c · c, d = c · e. Thus it is enough to verify that the binary operations ' ' and ' ' corresponding to c coincide and also that the binary operations ' ' and ' ' corresponding to e coincide.

To verify that the binary operations ' ' and ' ' corresponding to c coincide, choose the row in Table 1 corresponding to the element c:

Table 2
·abcde
 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

This row is copied as the header row of a new table (Table 3):

Table 3
    a c b d d
   
   
   
   
   

Under the header a copy the corresponding column in Table 1, under the header b copy the corresponding column in Table 1, etc., and construct Table 4.

Table 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

The column headers of Table 4 are now deleted to get Table 5:

Table 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

The Cayley table of the binary operation ' ' corresponding to the element c is given by Table 6.

Table 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

Next choose the c column of Table 1:

Table 7
·abcde
 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

Copy this column to the index column to get Table 8:

Table 8
                  
 a
 c
 b
 d
 e

Against the index entry a in Table 8 copy the corresponding row in Table 1, against the index entry b copy the corresponding row in Table 1, etc., and construct Table 9.

Table 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

The index entries in the first column of Table 9 are now deleted to get Table 10:

Table 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

The Cayley table of the binary operation ' ' corresponding to the element c is given by Table 11.

Table 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

One can verify that the entries in the various cells in Table 6 agrees with the entries in the corresponding cells of Table 11. This shows that x · ( c · y ) = ( x · c ) · y for all x and y in A. If there were some discrepancy then it would not be true that x · ( c · y ) = ( x · c ) · y for all x and y in A.

That x · ( e · y ) = ( x · e ) · y for all x and y in A can be verified in a similar way by constructing the following tables (Table 12 and Table 13):

Table 12
 (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
Table 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

A further simplification

It is not necessary to construct the Cayley tables (Table 6 and table 11) of the binary operations ' ' and ' '. It is enough to copy the column corresponding to the header c in Table 1 to the index column in Table 5 and form the following table (Table 14) and verify that the a-row of Table 14 is identical with the a-row of Table 1, the b-row of Table 14 is identical with the b-row of Table 1, etc. This is to be repeated mutatis mutandis for all the elements of the generating set of A.

Table 14
    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

Computer software can be written to carry out Light's associativity test. Kehayopulu and Argyris have developed such a program for Mathematica. [1]

Extension

Light's associativity test can be extended to test associativity in a more general context. [2] [3]

Let T = { t1, t2, , tm } be a magma in which the operation is denoted by juxtaposition. Let X = { x1, x2, , xn } be a set. Let there be a mapping from the Cartesian product T×X to X denoted by (t, x) tx and let it be required to test whether this map has the property

(st)x = s(tx) for all s, t in T and all x in X.

A generalization of Light's associativity test can be applied to verify whether the above property holds or not. In mathematical notations, the generalization runs as follows: For each t in T, let L(t) be the m×n matrix of elements of X whose i - th row is

( (tit)x1, (tit)x2, , (tit)xn ) for i = 1, , m

and let R(t) be the m×n matrix of elements of X, the elements of whose j - th column are

( t1(txj), t2(txj), , tm(txj) ) for j = 1, , n.

According to the generalised test (due to Bednarek), that the property to be verified holds if and only if L(t) = R(t) for all t in T. When X = T, Bednarek's test reduces to Light's test.

More advanced algorithms

There is a randomized algorithm by Rajagopalan and Schulman to test associativity in time proportional to the input size. (The method also works for testing certain other identities.) Specifically, the runtime is for an table and error probability . The algorithm can be modified to produce a triple for which , if there is one, in time . [4]

Notes

  1. Kehayopulu, Niovi; Philip Argyris (1993). "An algorithm for Light's associativity test using Mathematica". J. Comput. Inform. 3 (1): 87–98. ISSN   1180-3886.
  2. Bednarek, A R (1968). "An extension of Light's associativity test". American Mathematical Monthly . 75 (5): 531–532. doi:10.2307/2314731. JSTOR   2314731.
  3. Kalman, J A (1971). "Bednarek's extension of Light's associativity test". Semigroup Forum . 3 (1): 275–276. doi:10.1007/BF02572966. S2CID   124362744.
  4. Rajagopalan, Sridhar; Schulman, Leonard J. (2000). "Verification of Identities". SIAM Journal on Computing. 29 (4): 1155–1163. CiteSeerX   10.1.1.4.6898 . doi:10.1137/S0097539797325387.

Related Research Articles

Group (mathematics) Set with associative invertible operation

In mathematics, a group is a set equipped with an operation that combines any two elements of the set to produce a third element of the set, in such a way that the operation is associative, an identity element exists and every element has an inverse. These three conditions, called group axioms, hold for number systems and many other mathematical structures. For example, the integers together with the addition operation form a group. The concept of a group and its definition through the group axioms was elaborated for handling, in a unified way, essential structural properties of entities of very different mathematical nature. Because of the ubiquity of groups in numerous areas, some authors consider them as a central organizing principle of contemporary mathematics.

In mathematics, especially in abstract algebra, a quasigroup is an algebraic structure resembling a group in the sense that "division" is always possible. Quasigroups differ from groups mainly in that they need not be associative and need not have an identity element.

The relational model (RM) for database management is an approach to managing data using a structure and language consistent with first-order predicate logic, first described in 1969 by English computer scientist Edgar F. Codd, where all data is represented in terms of tuples, grouped into relations. A database organized in terms of the relational model is a relational database.

Semigroup Algebraic structure consisting of a set with an associative binary operation

In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative binary operation.

Subgroup Subset of a group that forms a group itself

In group theory, a branch of mathematics, given a group G under a binary operation ∗, a subset H of G is called a subgroup of G if H also forms a group under the operation ∗. More precisely, H is a subgroup of G if the restriction of ∗ to H × H is a group operation on H. This is often denoted HG, read as "H is a subgroup of G".

Permutation Mathematical version of an order change

In mathematics, a permutation of a set is, loosely speaking, an arrangement of its members into a sequence or linear order, or if the set is already ordered, a rearrangement of its elements. The word "permutation" also refers to the act or process of changing the linear order of an ordered set.

In mathematics, the concept of an inverse element generalises the concepts of opposite and reciprocal of numbers.

Exponentiation Mathematical operation

Exponentiation is a mathematical operation, written as bn, involving two numbers, the baseb and the exponent or powern, and pronounced as "b raised to the power of n". When n is a positive integer, exponentiation corresponds to repeated multiplication of the base: that is, bn is the product of multiplying n bases:

In database theory, relational algebra is a theory that uses algebraic structures with a well-founded semantics for modeling data, and defining queries on it. The theory was introduced by Edgar F. Codd.

Function (mathematics) Association of a single output to each input

In mathematics, a function from a set X to a set Y assigns to each element of X exactly one element of Y. The set X is called the domain of the function and the set Y is called the codomain of the function.

In mathematics, function composition is an operation  ∘  that takes two functions f and g, and produces a function h = g  ∘  f such that h(x) = g(f ). In this operation, the function g is applied to the result of applying the function f to x. That is, the functions f : XY and g : YZ are composed to yield a function that maps x in domain X to g(f ) in codomain Z. Intuitively, if z is a function of y, and y is a function of x, then z is a function of x. The resulting composite function is denoted g ∘ f : XZ, defined by (g ∘ f )(x) = g(f ) for all x in X.

In mathematics, particularly in matrix theory, a permutation matrix is a square binary matrix that has exactly one entry of 1 in each row and each column and 0s elsewhere. Each such matrix, say P, represents a permutation of m elements and, when used to multiply another matrix, say A, results in permuting the rows or columns of the matrix A.

Named after the 19th century British mathematician Arthur Cayley, a Cayley table describes the structure of a finite group by arranging all the possible products of all the group's elements in a square table reminiscent of an addition or multiplication table. Many properties of a group – such as whether or not it is abelian, which elements are inverses of which elements, and the size and contents of the group's center – can be discovered from its Cayley table.

In mathematics, an operad is a structure that consists of abstract operations, each one having a fixed finite number of inputs (arguments) and one output, as well as a specification of how to compose these operations. Given an operad , one defines an algebra over to be a set together with concrete operations on this set which behave just like the abstract operations of . For instance, there is a Lie operad such that the algebras over are precisely the Lie algebras; in a sense abstractly encodes the operations that are common to all Lie algebras. An operad is to its algebras as a group is to its group representations.

A logical matrix, binary matrix, relation matrix, Boolean matrix, or (0, 1) matrix is a matrix with entries from the Boolean domain B = {0, 1}. Such a matrix can be used to represent a binary relation between a pair of finite sets.

In the mathematics of binary relations, the composition of relations is the forming of a new binary relation R ; S from two given binary relations R and S. In the calculus of relations, the composition of relations is called relative multiplication, and its result is called a relative product. Function composition is the special case of composition of relations where all relations involved are functions.

Granulometry (morphology)

In mathematical morphology, granulometry is an approach to compute a size distribution of grains in binary images, using a series of morphological opening operations. It was introduced by Georges Matheron in the 1960s, and is the basis for the characterization of the concept of size in mathematical morphology.

Matrix (mathematics) Two-dimensional array of numbers

In mathematics, a matrix is a rectangular array or table of numbers, symbols, or expressions, arranged in rows and columns, which is used to represent a mathematical object or a property of such an object.

Cartesian product Mathematical set formed from two given sets

In mathematics, specifically set theory, the Cartesian product of two sets A and B, denoted A × B, is the set of all ordered pairs (a, b) where a is in A and b is in B. In terms of set-builder notation, that is

In computer science, Iacono's working set structure is a comparison based dictionary. It supports insertion, deletion and access operation to maintain a dynamic set of elements. The working set of an item is the set of elements that have been accessed in the structure since the last time that was accessed . Inserting and deleting in the working set structure takes time while accessing an element takes . Here, represents the size of the working set of .

References