УДК 512.548+519.179.1
Finite Representation of Classes of Isomorphic Groupoids
Maxim N. Nazarov*
National Research University of Electronic Technology — MIET Bld. 1, Shokin Square, Zelenograd, Moscow, 124498
Russia
Received 29.04.2015, received in revised form 11.05.2015, accepted 20.06.2015 We consider an alternative representation of finite groupoids in the form of hypergraphs with three-vertex edges. Automorphism classes of vertices and edges of this hypergraphs are linearly ordered by a natural indexing algorithm based on a maxi-code for three-dimensional adjacency matrix of the hypergraph. With respect of this indexing is constructed a finite set description for the classes of isomorphic groupoids.
Keywords: finite groupoids, hypergraphs, automorphism classes of groupoid elements. DOI: 10.17516/1997-1397-2015-8-3-312-319
Introduction
Let us remind that groupoid D is a set with binary operation. We will call [D] the class of isomorphic groupoids, if it is composed of all groupoids which are isomorphic to D. This class obviously has infinite number of elements, and, also, the individual groupoids from class [D] are indistinguishable from the algebraic point of view. That in turn leads to the problem of choosing the etalon representative of class [D], when we consider the practical application of groupoids (see for example [1]). It also seems logical that there could be a way to describe the class of isomorphic groupoids with some complete invariant in a similar way it is done with complete invariants in graph theory. Moreover, in the framework of [2] it was shown that for classical graphs one can define a complete invariant, which will be very close to graphs in its properties. If we construct a similar invariant for groupoids, then it can be used in practice as an alternative finite representation for the classes of isomorphic groupoids [D], as well as a tool for choosing the etalon representative in class [D].
We can associate with any arbitrary groupoid D an oriented^ hypergraph G = (D, E) by using a rule: xy = z ■ (x, y, z) G E. Thus, in this hypergraph G the edges connect only three vertices and the set of edges E is uniquely defined by the operation on groupoid D. As a result, if we generalize the method of construction of complete graph invariant from the article [2] on this oriented hypergraphs with three-vertex edges, then we will in fact transfer this method on any arbitrary finite groupoids.
1. The indexation of automorphism classes
Definition 1. Let G = (D, E) be any arbitrary hypergraph, in which the number of vertices is n = |D| and all the edges are a three-vertex ones (vi,vj,vk) G E. If we choose some order on
* nazarov-maximilian@yandex.ru © Siberian Federal University. All rights reserved
tWe will call a hypergraph G oriented, if its edges are ordered tuples (x,y,z,...). More information about the theory of classical (not oriented) hypergraphs can be obtained in [3].
the set of vertices D, then we can associate a three-dimensional adjacency matrix A with this hypergraph G by using a following rule:
A(i,j,k) = 1 ^ (vi,vj,vk) € E A A(i,j,k)= 0 ^ (vi,vj,vk) / E.
In the Fig. 1 is represented an example of two adjacency matrices which were constructed for two different orders on the set of vertices D of some hypergraph G. Let us note, that adjacency
D a b c
a a b b
b c a c
c c c c
a1 = (a, b, c)
Ai
Ai a b c
a 1 0 0
b 0 1 0
c 0 0 0
Ai a b c
a 0 1 1
b 0 0 0
c 0 0 0
x
-y x
Ai a b c
a 0 0 0
b 1 0 1
c 1 1 1
*y x
«2 = (c, b, a)
■Ao
A2 c b a
c 1 1 1
b 1 0 1
a 0 0 0
A2 c b a
c 0 0 0
b 0 0 0
a 1 1 0
x
-y x
A2 c b a
c 0 0 0
b 0 1 0
a 0 0 1
*y x
Fig. 1. Two adjacency matrices Ai and A2 for two ordering of the set D
matrices A will be equal for such permutations of vertices, which correspond to automorphisms of groupoid D (vertex automorphisms of its hypergraph G).
Definition 2. We will call the code of adjacency matrix A of finite hypergraph G such a number A), which is obtained by converting adjacency matrix to binary number format
A(1,1,1) + A(1, 2,1) • 21 + ... + A(1, n, 1) • 2n-1 + ... + A(n, n, n) • 2
This formula can
be expressed in a compact form as ^(A) = A(i,j,k) • 2j 1+n(i 1)+n (fc !).
i,j,k = 1
Definition 3. The maximum of all adjacency matrix codes of hypergraph G we will call a maxicode of hypergraph ^max(G). If for some order of vertices a the code of adjacency matrix A) = ^max(G), then order a corresponds to the maxi-code ^max(G) of hypergraph.
Maxi-code is a complete invariant of hypergraphs, since it can be used to reconstruct the adjacency matrix. As a result, maxi-code is also a complete invariant of groupoids D, and it can be viewed as a unique numerical identifier for the class of isomorphic groupoids [D].
Position 1. If a two orderings of the set of vertices a1 = (v\,...,v1 ) and a2 = (v2,...,«^) correspond to the maxi-code ^max(G) of hypergraph G, then all the vertices in those orderings will be pairwise automorphic v^ ~ for all k = 1, n.
Proof. The equality of code ^(A) for a two orderings a1 = (vf, ...,v1 ) and a2 = (v2, ...,v1n) of
the set of vertices D is possible only if the adjacency matrices are equal for this orderings. This
/v1... vi\
in turn will yield that permutation of vertices ^ = I 2 1 ) is an automorphism on G. □
y
y
3
1
1
n
We will use a standard index notation vi = a(i) for the sequences of vertices a = (vi, ...,vn).
Definition 4. Let a be an ordering of the set of vertices, which corresponds to the maxi-code ^max(G). We will call the number of automorphism class v such a natural number N(v), which equals to the minimum index of vertex from class v in the ordering a: N(v) = min i.
i: v^a(i)
The correctness of Definition 4 for numbers of automorphism classes is a simple corollary from proposition 1. More strictly, if maxi-code of hypergraph corresponds to some different vertex sequences ai = (v\,...,vn) and a2 = (v2, ...,v2n), then v^ ~ v| for all k = 1,n. Hence, the minimum index of vertex from class v would be the same for both ai and a2.
Corollary 1. The numbers N(v) can be used to define a linear ordering on the set of automorphism classes of vertices: v\ ^ v2 ■ N (vi) ^ N (v2).
Proof. By definition N(v) are natural numbers, and according to proposition 1 they are equal only for automorphic vertices v ~ u. We can conclude from this that a set of numbers N (vi),..., N (vk) is linearly ordered as a subset of natural numbers. As a result, the ordering on the set of automorphism classes vi < v2 ■ N (vi) < N (v2) would also be a linear one. □
Definition 5. Let us define the indexes of automorphism classes of vertices I(v) by using a following inductive rule:
1. N(v) = min N(u) ^ I(v) = 1 — induction basis to define the first index.
u
2 (yu*=u N(v)N>{N>Nt\%) > N^ 1 (v) = 1 (u) + 1 — inductive step.
We should note, that in the framework of [2] the definition of indexes I(v) was not given in full, and in fact the numbers of classes N(v) were used in all theorems. Wherein, in all illustrations and examples of article [2] I(v) were used, but not N(v), which can be considered a minor error.
By analogy with graph theory we will call two edges (ui,u2,u3), (vi,v2,v3) of hypergraph automorphic, if there exists such an automorphism that Vi ^(ui) = vi. The fact that it is necessary for hypergraphs and groupoids to define the classes of automorphic edges (ui,u2,u3) in addition to the classes of automorphic vertices v is illustrated in Fig. 2.
(a, b, a) ~ (b, a, b) ~ (a, c, a) (a, a, a) ~ (b, b, b) ~ (c, c, c)
(a, b, a) ^ (a, d, a) (a, b, a) ^ (a, e, e)
e ~ f ^ a = D
Fig. 2. An example of groupoid D, for which hypergraph G will have only one class of automor-phic vertices a = D and more than one classes of automorphic edges (a, b, a) ^ (a, e, e)
D a b c d e f
a a a a a e f
b b b b d b f
c c c c d e c
d d b c d d d
e a e c e e e
f a b f f f f
a ~ b ~ c ~ d
Definition 6. Let a be an ordering of the set of vertices, which corresponds to the maxi-code Mmax(G) of G. We will call the number of automorphism class (x, y, z) such a natural number N(x, y, z), which equals to N(x, y, z) = min j + (i — 1)n + (k — 1)n2.
(i,j,k): A(i,j,k) = 1 (a(i),a(j),a(k))~(x,y,z)
Definition 7. By analogy with Definition 5 we will introduce the index of automorphism class of edges I(x, y, z) up to replacing the classes of vertices with the classes of edges.
Theorem 1. If G = H, then for any two vertices u € V(G), v € V(H) the equality I(u) = I(v) holds if and only if there exists isomorphism $ : V(G) ^ V(H), such that $(u) = v.
Proof. Let us prove first, that from $(u) = v, where $ is an isomorphism, will follow the equality of indexes I(u) = I(v). If two hypergraphs are isomorphic, then maxi-codes of this hypergraphs are equal ^max(G) = ^max(H). In this case we can represent the isomorphism
of hypergraphs in the form $ = I1 ...v'n\, where a1 = (u1, ...,un) is some order, which
\vi ...vn J
corresponds to maxi-code of G and a2 = (v1, ... ,vn) corresponds to maxi-code of H. We know that N(u) is a natural number, and hence a1(N(u)) defines some vertex u* = a1(N(u)) in hypergraph G. This vertex u* has two properties: u ~ u* and it has minimum index in the ordering a1 among all the vertices from automorphism class u. If we assume, that N(u) = N(v), then we will get $(u*) ^ $(u), which results in contradiction: $(u*) ^ $(u) and u ~ u*. As a result, for all isomorphic vertices $(u) = v their numbers of automorphism classes will be equal N(u) = N(v), and therefore their indexes of automorphism classes will also be equal I(u) = I(v).
Let us prove the second part of theorem, that from G = H and the equality of class indexes I(u) = I(v) will follow the existence of such isomorphism $ : $(u) = v. Since G = H we know that there must exist some isomorphism $0 : V(G) ^ V(H). For the image v* = $o(u) of u by using the first part of this theorem we obtain I(v*) = I(u) = I(v) . We can conclude from it that vertices v, v* are automorphic v ~ v* on hypergraph H. Let us denote the automorphism, which maps this vertices one onto another as ^ : ^(v*) = v. As a result, the final isomorphism can be defined as a composition $ = $0 o and we get for vertices u and v the equality v = ^($0 (u)). Since the mapping $ is a composition of two isomorphisms, then it is also an isomorphism. □
Theorem 2. If G = H, then for any two edges (u1,u2,u3) € E(G), (v1 ,v2,v3) € E(H) the equality I(u1, u2, u3) = I(v1,v2,v3) holds if and only if there exists hypergraph isomorphism $ : V(G) ^ V(H) such, that $(u1) = vi, $(u2) = v2 and $(u3) = v3.
Proof. The sufficiency can be proven by full analogy with Theorem 1. If we assume, that there exists isomorphism $ : V(G) ^ V(H), such that $(u1) = v1, $(u2) = v2 and $(u3) = v3, then automorphism class numbers would be equal N(u1, u2,u3) = N(v1,v2, v3). This equality of numbers N(u1,u2,u3) = N(v1 ,v2,v3) for all classes of isomorphic edges will in turn imply the equality of indexes I(u1,u2,u3) = I(v1, v2, v3).
The necessity could also be proven by analogy with Theorem 1. Let G = H and I(u1,u2, u3) = I(v1, v2 ,v3). For the images of isomorphism v* = $0 (u1), v* = $0(u2) and v* = $0(u3) using the first part of this theorem we obtain I(u1, u2,u3) = I(v1,v2,v3) = I(v*, v*, v*). We can conclude from it that edges (v1,v2,v3) and (v*,v*,v|) are automorphic (v1,v2,v3) ~ (v*,v*,v*). Let us denote the automorphism, which maps this vertices one onto another as ^ : Vi ^(v*) = vi. As a result, the final isomorphism would be a composition $ = $0 o ty. □
2. The construction of linear notation for groupoids
The direct consequence of Theorems 1 and 2 is the fact, that indexes I(v) and I(vi,v2, v3) are unique identifiers for the automorphism classes. Thus, when defining an invariant for classes of isomorphic groupoids, this indexes could be used as a replacement for vertices and edges.
In constructing the announced invariant we will use an algorithmic* approach, which is quite similar to the definition of the linear notation I[G] of graphs from article [2].
Definition 8. We will call the symmetric linear notation of groupoid D such a string of symbols L(D), which is defined on the basis of four rules:
Rule 1: The string L(D) begins with the element v for which automorphism index is I(v) = 1. Rule 2: When any element x £ D is included into the notation L(D), then together with x we will include the results (z = x ■ y) of multiplication of x on all the groupoid elements y £ D. For this we will use a following string: S = x y ... -— z[... ] ... , if x,y and z have not
Ln Ln+i J J
appeared in the substring of linear notation L(D) to the left of this entry S.
Rule 3: When for some vertex u, which is already present in the left substring of linear notation
L(D) = ... ...... , it is required to add one more instance of u to L(D), then instead
n n+i
of it we will use a special replacement codes #1, #2, #3,..., #m. The designation #1 defines the vertex v to the left of the first opening bracket in the linear notation L(D), while code #2 defines the vertex before the second opening bracket and so on for the last opening bracket. Rule 4: For any element x £ D, when choosing the order in which we will include the elements
yi —— zi..., y2 —— z2... and special symbols #m -— ... in the notation x[...;...;...], we will use a following list of priorities.
1. The top priority will be associated with code #1. The next in priority will be code #2, and so on for all other codes up to the last #m.
2. The elements y £ D with minimum value of indexes I(y) will be included after the codes #m in the notation x[...;...;...].
3. If two elements yi and y2 have the same index I (yi) = I (y2), then we will choose the element yi, if the indexes of edges are I(x, yi, zi) < I(x, y2, z2).
4. When indexes of edges and vertices are the same for yi and y2 we will turn our attention to the potential right multiplication factors of yi and y2. Let yi yield a first result, which is different from the elements of codes #1,..., #m, by right factor multiplication on element of the code #i. In addition, let the code #j hold the same property for y2. We will consider the element yi to be of higher priority than y2 when i < j. In case of equality i = j we will continue recursively this process for the second code value, and so on.
5. If all the positions of non-coded result elements on the step 4 have been the same for both yi and y2, then we will consider the order in which codes #1,..., #m would appear as a results of multiplication of yi and y2 on the elements of any other codes #1,..., #m. Let yi yield a code #1 when multiplied (yi x #i — #1) on the element of code #i, and let y2 yield #1 when multiplied (y2 x #j — #1) on the element of code #j. We will choose§ the element yi to be of higher priority than y2 when i < j. In case of equality i = j we will continue recursively this process for code #2, and so on up to the last code #m.
tit should also be stated, that this algorithm is similar in some extent to the algorithm of SMILES standard for encoding molecular structures (see [4]).
§ If we have found i, but the value j does not exist, then we shall assume j = to.
6. With the failure of priority criteria 1-5 it can be guaranteed, that notation segments yi[...z\ [...]] and y2[... z\ [...]] will have the same position for the first elements z\ and z\, which are different from codes #1,..., #m. We will then recursively apply all the priority criteria 1-5 to z} and z2. Moreover, we will temporally associate for yi a new code #(m + 1) with z! and for y2 we will associate the same code #(m + 1) with z2. If such iteration process will end with overall equality in priorities, then we will do the same with the second ones z2 and zand so on up to the last zk and z|, different from codes #1,..., #m.
Definition 9. We will call the linear notation of class of isomorphic groupoids [D] such a string I[D], which is obtained from any symmetric linear notation L(D) by replacing all the elements v in L(D) with their indexes I(v).
Let us illustrate the definition of linear notation I[D] with the examples in Fig. 3 of left-zero semigroup L and right-zero semigroups R, as well as some arbitrary groupoid D.
D a b c
a a b b
b c a c
c c c c
R a b c
a a b c
b a b c
c a b c
L a b c
a a a a
b b b b
c c c c
I (a) = 3, I (b) = 2, I (c) = 1 I (a) = I (b) = I (c) = 1 I (a) = I (b) = I (c) = 1
I[D]=1[1 #14#1; 2[2#14#1; #243[3#14#2; #24#2; #34#3]; #34#1]4#1; #34#1] I[R]=1[1 #14#1;1[2#14#1; #24#2;1[3#14#1;#24#2; #34#3]4#3]4#2; #34#3] I[L]=1[1 #14#1; 1[2#1-4#2; #24#2; 1[3#14#3; #24#3; #34#3]4#2]4#1; #34#1]
Fig. 3. The example of linear notations of classes of isomorphic groupoids for D, R and L
Definition 10. For any arbitrary linear notation I[D] the colouring of any abstract element j into colour a would be such a string Ij,a)[D], which is obtained from I[D] by replacing the firsfl appearance of automorphism index j with pair (j, a). The colouring for a greater number of elements and colours could be defined by induction, as a consequential colouring of single elements. Thus, it is sufficient to require, that on each iteration of this process we would choose only the elements, which were not coloured on previous iterations.
By using the recursive colouring procedure one could reconstruct the original groupoid D* from linear notation I[D] up to isomorhism D* = D. If the groupoid D has n elements, then for its reconstruction from I[D] we would have to colour the abstract elements of I [D] (the numbers of automorphism classes) into n different colours. For example, to reconstruct the groupoids from Fig. 3 we would colour elements of I[D], I[L] and I[R] into three colours: a, b and c.
Theorem 3. Any arbitrary finite groupoids Di and D2 are isomorhic if and only if their linear notations are equal (I[Di] = I[D2]).
lit is important to note, that only the first appearence of index j is replaced, while all other instances of j would remain untouched.
Proof. Let us first prove the necessity, that from D1 = D2 will follow the equality of linear notation of classes of isomorphic groupoids I[D1] = I[D2]. We know, that in construction of I [D] there is only one situation, which can possibly lead to ambiguity in the definition — it is the choice of the inclusion order for elements v1 and v2 with the rule 4 of definition 8, when all six priority criteria failed to distinguish v1 and v2. Considering the recursive search on stage 6 of rule 4 we can assume, that after the replacement of first occurring elements v with I(v), and all the reoccurring elements with codes #1, ..., #n the strings I(v1)[...] and I(v2)[...] would be just the same. If it is not, and some indexes I(v) are different in I(v1)[...] and I(v2)[...], then vertices v1 and v2 would have a different priorities after criterion 2 of rule 4 is applied recursively. Analogously, if codes #1, ..., #n have different positions in strings I(v1)[...] and I(v2)[...], then v1 and v2 would have different priorities after criteria 4 and 5 of rule 4 are applied recursively. As a result, the definition of I[D] is independent from the order in which we include this vertices v1 and v2. Hence, the notation I[D] would be same for all the isomorphic groupoids.
Let us prove the sufficiency, that from the equality I[D1 ] = I[D2 ] of linear notation of classes of isomorphic groupoids will follow D1 = D2. To do this we get back from I[D1] to L(D1) by colouring the I[D1 ] with elements of (D1, •). Moreover, we choose such colouring L(D1), which corresponds to the operation on (D1, •), potentially exhausting all n! options. Then we repeat the same procedure for the groupoid (D2, o) and obtain L(D2) for it. Let us construct the ty : D1 ^ D2 explicitly by mapping all the elements from L(D1) to the elements with the same string positions in L(D2). If we assume that resulting mapping ty is not an isomorphism, then we will immediately get a contradiction. Indeed, the violation of isomorphism condition would mean that positions of codes #1, ..., #n are different in L(D1) and L(D2), which is impossible due to the equality I[D1] = I[D2] and unambiguous" definition of I[D] on the basis of L(D). □ Remark 1. The basic algorithms for manipulation of linear notations I [D] belong to the following classes of complexity.
1. The transition from D to linear notation I[D] is a problem from class NP, because it requires to compute the maxi-code of three dimensional adjacency matrix.
2. The test on isomorphism for two linear notations I[D1] and I[D2] is a problem of class P, as long as it can be reduced to the trivial check of equality I[D1] = I[D2].
3. The transition from linear notation I[D] to groupoid D is a problem from class P, because it could be performed with a recursive colouring of the abstract elements of I[D].
Conclusion
The first and the most obvious practical application of linear notations I[D] would be in optimization of isomorphism test for groupoids. In fact, if I[D] is stored in computer memory instead of groupoid D, then this test is reduced to the trivial check of equality I[D1] = I[D2]. As a result, this algorithm for I[D] will be of O(|D|2) complexity, which would be essentially better than its counterpart for groupoids D with factorial O(|D|!) complexity.
The second application amounts to the adaptation of I[D] for the algorithms of exhaustive search for finite groupoids of small order. As it is well known, the brute force enumeration of Cayley tables of groupoids D would be computationally ineffective starting from |D| = 4. However, if instead of tables we would do the exhaustive search for I[D] of some fixed order
IIThe indexes I(v) are used only to replace the elements v, while codes #m are preserved in the notation I[D].
n = |D|, then the task would be greatly simplified (the number of groupoids as a function of n is given in [5]).
Let us note, that it is an open problem, whether any correspondence exists between the structure of notation I [D] and such classical algebraic notions as commutativity, associativity, presence of zeros and unities on groupoids. In addition to this, it could also be of some interest for the specialists in the field of n-ary algebras to obtain a generalization of I[D] to the n-ary groupoids (D, f), where f : D x ... x D ^ D.
The author is grateful to A. V. Reshetnikov and N. V. Suvorova for critical comments and discussion of this article.
References
[1] M.N.Nazarov, A self-induced metric on groupoids and its application to the analysis of cellular interactions in biology, J. Math. Sci., 206(2015), no. 5, 561-569.
[2] M.N.Nazarov, Alternative approaches to the description of classes of isomorphic graphs, Prikl. Diskr. Mat., 3(2014), 86-97 (in Russian).
[3] A.A.Zykov, Hypergraphs, Russian Mathematical Surveys, 29(1974), no. 6, 89-154.
[4] D.Weininger, et al, SMILES. 2. Algorithm for generation of unique SMILES notation, J. Chem. Inf. Comput. Sci., 29(1989), no. 2, 97-101.
[5] M.A.Harrison, The number of isomorphism types of finite algebras, Proc. Amer. Math. Soc., 17(1966), 731-737.
Представление классов изоморфных группоидов на основе конечных множеств
Максим Н. Назаров
Для конечных группоидов 'рассматривается альтернативное представление в виде гиперграфов с трёх-вершинными рёбрами. Классы автоморфных вершин и рёбер данных гиперграфов линейно упорядочиваются с помощью алгоритма естественной индексации на основе макси-кода для трёхмерной матрицы смежности гиперграфа. Опираясь на полученную индексацию, строится конечно-множественное описание для классов изоморфных группоидов.
Ключевые слова: конечные группоиды, гиперграфы, классы автоморфных элементов группоидов.