Next Article in Journal
Probability Distribution of Extreme Events in Complex Systems: Application to Climate Data
Previous Article in Journal
Improper Integrals of Type II—A New Look and Some Surprising Facts
Previous Article in Special Issue
A Novel Discrete Linear-Exponential Distribution for Modeling Physical and Medical Data
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Practical Canonical Labeling of Multi-Digraphs via Computer Algebra

1
Department of Systems Science, University of Shanghai for Science and Technology, Shanghai 200093, China
2
Business School, University of Shanghai for Science and Technology, Shanghai 200093, China
3
School of Environment and Architecture, University of Shanghai for Science and Technology, Shanghai 200093, China
*
Author to whom correspondence should be addressed.
Symmetry 2024, 16(12), 1638; https://doi.org/10.3390/sym16121638
Submission received: 25 October 2024 / Revised: 29 November 2024 / Accepted: 9 December 2024 / Published: 11 December 2024
(This article belongs to the Special Issue Applications Based on AI in Mathematics and Asymmetry/Symmetry)

Abstract

:
Practical algorithms for computing canonical forms of multi-digraphs do not exist in the literature. This paper proposes two practical approaches for finding canonical forms, from the perspective of nD symbolic computation. Initially, the approaches turn the problem of finding canonical forms of multi-digraphs into computing canonical forms of indexed monomials in computer algebra. Then, the first approach utilizes the double coset representative method in computational group theory for canonicalization of indexed monomials and shows that finding the canonical forms of a class of multi-digraphs in practice has polynomial complexity of approximately O ( ( k + p ) 2 ) or O ( k 2.1 ) by the computer algebra system (CAS) tool Tensor-canonicalizer. The second approach verifies the equivalence of canonicalization of indexed monomials and finding canonical forms of (simple) colored tripartite graphs. It is found that the proposed algorithm takes approximately O ( ( k + 2 p ) 4.803 ) time for a class of multi-digraphs in practical implementation, combined with one of the best known graph isomorphism tools Traces, where k and p are the vertex number and edge number of a multi-digraph, respectively.

1. Introduction

The canonical labeling problem is to relabel a graph in such a way that all isomorphic graphs are identical after relabeling [1]. In other words, a canonical labeling of a graph is a unique representative of its isomorphism class, also called a canonical form [2], a canonical code [3], or an optimum code [4]. It is an approach used most frequently in practice to determine whether two graphs are isomorphic, since it overcomes the disadvantages of testing isomorphism directly for the problems of rejecting isomorphs from a graph database or identifying a graph. For instance, a large number of direct isomorphism tests are not required when we look up a given molecule in a database whose elements are all stored in their canonical forms. Instead, we only need to compute the canonical form of the given molecule [5]. Until now, no polynomial-time algorithm exists for either the isomorphism problem or calculating canonical forms of graphs (except for special classes of graphs).
In the literature, there are at least a few hundred algorithms for finding canonical forms of undirected graphs or specific graphs. For example, Babai showed that a canonical form can be constructed in quasipolynomial time [6], following Babai’s breakthrough on the quasipolynomial-time algorithm for graph isomorphism [7]. Huan et al. [8], Kuramochi et al. [9,10], He et al. [11], and Kashani et al. [12] computed canonical form via adjacency matrix. Arvind et al. [13] and Arnborg et al. [14] provided algorithms with complexity of log n for partial 2- and 3-trees. The most successful approach in practice is the individualization-refinement paradigm, which was introduced by Parris et al. [15] and developed by Corneil et al. [16] and Arlazarov et al. [17]. It is utilized by virtually all modern competitive and efficient software tools (for canonical labeling or isomorphism), including nauty [18,19], Bliss [20,21], conauto [22,23], saucy [24], and Traces [25].
Among the above algorithms for computing canonical forms, no algorithm other than nauty accepts directed graphs. There are also other research works on finding canonical forms of (specific) simple directed graphs. For example, Hao [26] utilized k-mix-neighborhood subdigraphs to investigate canonical forms of simple directed graphs without loops. Wang [27] proposed a distributed algorithm for finding canonical forms of directed split-stars.
However, there are no (practical) algorithms for computing canonical forms of multi-digraphs in the literature. On the other hand, there is a natural connection between graphs and algebraic polynomials. Methods and techniques in computer algebra are used to investigate only undirected graphs or simple graphs in the literature. For example, polynomial ideals in a polynomial ring K [ x 1 , , x n ] are used to investigate basic problems in graph theory, such as graph coloring [28,29,30,31,32,33,34,35], S-packing k-coloring [36], independence number of graphs [37,38], and matching problem [39]. In these research works, the vertices of a graph are represented by the variables in K [ x 1 , , x n ] , and the adjacency between vertices is represented by certain polynomials. Unfortunately, such representation is poorly suited for multi-digraphs since it is not easy to describe multi-edges and directions simultaneously. Moreover, there is no approach for using computer algebra to describe multi-digraphs in the literature. Although Ref. [40] reveals some relations between indexed monomials and digraphs, its motivation is to use digraphs to simplify indexed expressions, rather than to solve basic problems in graph theory. Therefore, it does not provide a method for describing multi-digraphs (for example, a multi-digraph corresponds to various indexed monomials in [40]). Then, there are the questions: How do we develop practical algorithms for computing canonical forms of multi-digraphs? Is it possible via computer algebra?
To address these questions, we describe multi-digraphs by indexed monomials (for the first time), propose two practical approaches for canonical labeling from the perspective of nD symbolic computation, and provide some results on the time complexity of the approaches for certain multi-digraphs. More precisely, we initially verify the equivalence of the two problems of finding canonical forms of multi-digraphs and canonicalization of indexed monomials in computer algebra. Then, the first approach computes the canonical forms of indexed monomials based on the double coset representative method in computational group theory and shows that the canonical forms of a class of multi-digraphs can be obtained in practice with polynomial complexity of approximate O ( ( k + p ) 2 ) or O ( k 2.1 ) by the CAS tool Tensor-canonicalizer, where k is the vertex number, and p is the edge number. The second approach turns the problem of canonicalization of indexed monomials into the problem of finding canonical forms of (simple) colored tripartite graphs. It is shown that for a class of multi-digraphs with k vertices and p edges, practical implementation of the second approach is completed in approximately O ( ( k + 2 p ) 4.803 ) time, with the graph isomorphism tool Traces.

2. Preliminaries

In this section, we first review some basic notions and notations regarding indexed monomials in computer algebra. Most of them are also presented in [41]. Then, some notations about graphs are also reviewed.
Definition 1. 
An indexed function is composed of four parts: function name, sequence of upper indices, sequence of lower indices, and  variables. An indexed monomial is the product of indexed functions and elements in K , and  obeys the Einstein summation convention, where K is a field. The product of some indexed functions within an indexed monomial is called a sub-monomial. In an indexed monomial, a  free index occurs only once, and a dummy index occurs twice, as an upper index and a lower one, respectively. The F-degree of an indexed monomial is the number of indexed functions contained in the monomial.
Definition 2. 
If an indexed monomial with coefficient 1 cannot be divided into two sub-monomials without common dummy indices, it is called an elementary indexed monomial. If the indices of an indexed monomial are all dummy indices, we say that the monomial is fully contracted.
Any indexed monomial obeys rules that involve the renaming of dummy indices (Ren), and commutativity of multiplication (Com), defined as follows.
(1)
Renaming of dummy indices (Ren): Suppose m is an indexed monomial; i 1 , i 2 , , i s are some of its dummy indices; and  D is the set of dummy indices of m. For  j l D \ { i 1 , i 2 , , i s } ( l = 1 , , s ), let m 1 be the indexed monomial obtained by replacing i 1 , i 2 , , i s in m with j 1 , j 2 , , j s , respectively. Then,
m m 1 = 0 .
(2)
Commutativity of multiplication (Com): Suppose M 1 and M 2 are two indexed functions of an indexed monomial m. Let m 2 be the indexed monomial obtained by exchanging the positions of M 1 , M 2 in m. Then,
m m 2 = 0 .
Moreover, in this paper, the indexed monomials that are used to describe multi-digraphs also have the following properties called G-inner symmetries.
(1)
Suppose m is an indexed monomial that takes { i 1 , i 2 , , i s } as the upper (lower) index sequence of one indexed function, and  σ is an arbitrary permutation on { i 1 , i 2 , , i s } . Let m 3 be the indexed monomial obtained by replacing the sequence { i 1 , i 2 , , i s } in m with the sequence { σ ( i 1 ) , σ ( i 2 ) , , σ ( i s ) } . Then,
m m 3 = 0 .
(2)
Suppose F i 1 , i 2 , , i s j 1 , j 2 , , j q is an indexed function of an indexed monomial m. Let m 4 be the indexed monomial obtained by replacing F i 1 , i 2 , , i s j 1 , j 2 , , j q in m with F j 1 , j 2 , , j q i 1 , i 2 , , i s . Then,
m m 4 = 0 .
We refer to Ren, Com, and G-inner symmetries as monoterm properties (Mon) in this paper.
Two monomials m, m being equivalent with respect to Mon means that m m belongs to the ideal generated by the left side of Equations (1)–(4) in the indexed polynomial ring. A canonical form of an indexed monomial m with respect to Mon is a unique representative of the indexed monomials that are equivalent to m with respect to Mon.
Remark 1. 
Theorem 3.10 in [42] proves that a canonical form of m with respect to Mon is the normal form of m with respect to a Gröbner basis in the ST-fundamental restricted ring. Proposition 2.8 and Corollary 3.3 in [42] show that each element in the Gröbner basis is in the form of f f m o n , where f is an elementary indexed monomial in the restricted ring, and f m o n is a unique representative of the elementary indexed monomials that can be rewritten as f by Mon. Therefore, by a direct computation, the canonical form of m with respect to Mon is also a unique representative of the indexed monomials that can be rewritten as m by Mon. In addition, in what follows, we do not distinguish between “two indexed monomials are equivalent with respect to Mon” and “one indexed monomial can be rewritten as another one by Mon”.
Example 1. 
m = T a b k e k l R a c l H e c b is an indexed monomial. T a b k e k l , R a c l , a n d H e c b are indexed functions. a , b , c , e , k , l are all dummy indices. m is also an elementary indexed monomial and a fully contracted monomial. It obeys Ren, such as T a b k e k l R a c l H e c b = T d b k g k l R d c l H g c b .
Notation 1. 
(1)
In what follows, we sometimes write an indexed function in the form of F I 1 I 2 as F I 2 I 1 for simplicity, where F is an indexed function name, and I 1 and I 2 are index sequences.
(2)
I P is used to denote the set of fully contracted monomials whose coefficients are 1 and whose indexed functions are in the form of T ( a , b ) I 1 I 2 or T ( a , b ) I 2 I 1 with a =   | I 1 | , b =   | I 2 | , where T ( a , b ) is the indexed function name.
(3)
For an indexed monomial m, F ( m ) denotes the set of indexed functions contained in m.
(4)
Let G = ( V , E ) denote a multi-digraph (whose vertices and edges are labelled v 1 , v 2 , and e 1 , e 2 , , respectively). Let G denote the set of multi-digraphs.
(5)
E ( u , v ) denotes the set of edges directed from u to v. For each vertex v, find the edges whose initial (resp. terminal) vertex is v, sort them by edge label in a lexicographical order, and obtain an index sequence denoted by E ( v ) (resp. E ( v ) ).
Definition 3. 
Two multi-digraphs G = ( V , E ) , G = ( V , E ) are isomorphic if there is a bijection ψ between V and V such that | E ( u , v ) | = | E ( ψ ( u ) , ψ ( v ) ) | for u , v V , in which case we write G G , where | · | denotes the element number of a set.
Definition 4. 
A canonical form of G is a function C : G G such that C ( G ) G , and C ( G ) = C ( G ) for G G . In other words, a canonical form of G is a unique representative of its isomorphism class.

3. The First Approach

As introduced in Section 1, we will provide two approaches for canonical labeling of multi-digraphs, and each of them generates some interesting results with regard to time complexity. This section presents the first one.
Proposition 1. 
Let G = ( V , E ) be a multi-digraph. Then, G can be described by an indexed monomial in I P . In other words, there exists a mapping, denoted by δ, from G to I P .
Proof. 
First, define a function α : V N × N by letting α ( v ) be the ordered pair ( | E ( v ) | , | E ( v ) | ) , where × refers to a Cartesian product.
Then, let T ( α ( v ) ) E ( v ) E ( v ) be an indexed function whose function name is T ( α ( v ) ) and whose upper index sequence and lower index sequence are E ( v ) and E ( v ) , respectively. Finally, let δ ( G ) be the indexed monomial v V T ( α ( v ) ) E ( v ) E ( v ) . It is clear that δ is a mapping from G to I P .  □
Example 2. 
Suppose G = ( V , E ) is a multi-digraph, as shown in Figure 1.
E ( v 1 ) = { e 2 , e 6 , e 7 } , E ( v 1 ) = { e 1 } , E ( v 2 ) = { e 5 , e 4 } , E ( v 2 ) = { e 6 , e 7 , e 3 } ,
E ( v 3 ) = { e 3 } , E ( v 3 ) = { e 2 , e 4 } , E ( v 4 ) = { e 1 } , E ( v 4 ) = { e 5 } .
α ( v 1 ) = ( 3 , 1 ) , α ( v 2 ) = ( 2 , 3 ) , α ( v 3 ) = ( 1 , 2 ) , α ( v 4 ) = ( 1 , 1 ) .
Finally, δ ( G ) = T ( 3 , 1 ) e 1 e 2 , e 6 , e 7 T ( 2 , 3 ) e 6 , e 7 , e 3 e 5 , e 4 T ( 1 , 2 ) e 2 , e 4 e 3 T ( 1 , 1 ) e 5 e 1 .
Corollary 1. 
δ in Proposition 1 induces a surjection (denoted by) δ ^ from G to I P /∼, where ∼ is the equivalence relation defined as m 1 m 2 if and only if m 1 can be rewritten as m 2 by Mon.
Proof. 
Define δ ^ as δ ^ ( G ) = [ δ ( G ) ] , where [ δ ( G ) ] denotes the equivalence class containing  δ ( G ) .
Suppose m is an element in [ m ] , satisfying the condition that the upper index sequence and lower index sequence are both sorted in lexicographical order, with  m I P . Then, let the vertices of a multi-digraph G be v 1 , v 2 , , v k , and let E ( v i ) , E ( v i ) be the upper index sequence and the lower index sequence of the ith indexed function of m , respectively, where k is the F-degree of m . It is clear that δ ( G ) = m according to the proof of Proposition 1. Hence, δ ^ ( G ) = [ m ] .  □
Proposition 2. 
G 1 and G 2 are isomorphic if and only if δ ( G 1 ) and δ ( G 2 ) are equivalent with respect to Mon.
Proof. 
Assume that G 1 G 2 . Then, there exists a bijection ψ between V 1 and V 2 such that | E ( u , v ) | = | E ( ψ ( u ) , ψ ( v ) ) | for u , v V 1 . Consequently, α ( v ) = α ( ψ ( v ) ) , E ( v ) (resp. E ( v ) ) can be rewritten as E ( ψ ( v ) ) (resp. E ( ψ ( v ) ) ) by exchanging positions of edge labels, and renaming the edge label, where α is defined in the proof of Proposition 1. In other words, v V 1 T ( α ( v ) ) E ( v ) E ( v ) can be rewritten as ψ ( v ) V 2 T ( α ( ψ ( v ) ) ) E ( ψ ( v ) ) E ( ψ ( v ) ) by Ren, G-inner symmetries, and Com.
Conversely, assume that δ ( G 1 ) = v V 1 T ( α ( v ) ) E ( v ) E ( v ) and δ ( G 2 ) = v V 2 T ( α ( v ) ) E ( v ) E ( v ) are equivalent with respect to Mon. Then, there exists a bijection ϑ between F ( δ ( G 1 ) ) and F ( δ ( G 2 ) ) , such that each indexed function f = T ( α ( v ) ) E ( v ) E ( v ) F ( δ ( G 1 ) ) can be rewritten as ϑ ( f ) = T ( α ( v ) ) E ( v ) E ( v ) by renaming the index and exchanging index positions. Define a mapping ψ from V 1 to V 2 , such that ψ ( v ) = v . It is clear that G 1 and G 2 are isomorphic under ψ .  □
The corollary below implies that finding canonical forms of multi-digraphs is equivalent to finding indexed monomials in I P , following immediately from Proposition 2 and the proof for Corollary 1.
Corollary 2. 
(1)
There is a bijection between G /≈ and I P /∼, where ≈ is the equivalence relation defined as G 1 G 2 if and only if G 1 and G 2 are isomorphic, and ∼ is defined in Corollary 1.
(2)
The canonical form G c a n of a multi-digraph G can be obtained by letting the vertices of G c a n be v 1 , v 2 , , v k , and E ( v i ) , E ( v i ) be the upper index set and the lower index set of the ith indexed function of m m o n , respectively, where m m o n is a canonical form of δ ( G ) with respect to Mon, and k is the F-degree of m m o n .
According to Corollary 2, we have the following Algorithm 1 for computing canonical forms of multi-digraphs.
Algorithm 1 Canonical form of a multi-digraph.
Input: 
A multi-digraph G with vertex set { v 1 , v 2 , , v k } and edge set { e 1 , e 2 , , e p } .
Output: 
Canonical form of G.
Step 1. 
For each vertex v i , find the edges whose initial vertex is v i , and sort them in a lexicographical order, obtaining an index sequence E ( v i ) . Then, sort the edges whose terminal vertex is v i in a lexicographical order, obtaining an index sequence E ( v i ) .
Step 2. 
Let α ( v i ) be an ordered pair ( | E ( v i ) | , | E ( v i ) | ) , then obtain an indexed monomial m = v i V T ( α ( v i ) ) E ( v i ) E ( v i ) .
Step 3. 
Find the canonical form of m with respect to Ren, G-inner symmetries, and Com, denoted by m m o n .
Step 4. 
Let the vertices of a multi-digraph be v 1 , v 2 , , v k , and the edges whose initial (resp. terminal) vertex is v i be the upper (resp. low) indices of the ith indexed function of m m o n . Output the multi-digraph.
Remark 2. 
It is clear that Step 1, Step 2, and Step 4 have polynomial complexity of at most O ( ( k + p ) 2 ) . The methods, algorithms and complexity for Step 3 are discussed below.
Canonicalization of indexed polynomials is a classical and important topic in computer algebra, as modern differential geometry and physics often involve the massive calculation of such polynomials. It is also a challenging problem since the ideal generated by the basic syzygies cannot be finitely generated, mainly due to the property of Ren. In particular, monoterm canonicalization of an indexed monomial (i.e., finding canonical form of an indexed monomial with respect to monoterm symmetries) is indispensable in polynomial canonicalization, as shown in [41,42,43]. Various efforts have been made to present methods and algorithms for monoterm canonicalization.
In the literature, the representative approaches for monoterm canonicalization of arbitrary indexed expressions include renaming reference [44,45,46], double coset representative [47,48], classification theory and undirected graph labelling [49], and digraph labelling [40]. For specific expressions such as Riemann tensor monomials and indexed differential monomials, representative methods include graph algebra extension [50] and the distance invariant method [51,52,53].
The double coset representative method turns the monoterm canonicalization problem into the problem of finding the canonical representative of a double coset in representation theory. For example, suppose m is a fully contracted indexed monomial with 2 n dummy indices. First express m as a single tensor, denoted by T. Then, the property of Ren and metric symmetry (if it exists) can be described by a subgroup D of the direct product H S 2 n , i.e., the action of D on (the indices of) T yields all the indexed monomials that are equivalent to T with respect to Ren and metric symmetry, where S 2 n is a symmetric group, and  H = { 1 , 1 } , which is used to indicate sign changes when applying symmetries to a monomial. Similarly, the other symmetries of T are described by a subgroup S of H S 2 n . Consequently, the set of monomials equivalent to T is given by the action of S × D on T, where S × D is the double coset of S and D in H S 2 n . Sort the indices of T in alphabetical order to get T 0 , and let g be an element in H S 2 n satisfying the condition that the action of g on T 0 is T. Finally, the canonical form of m is obtained by the action of g ˜ on T, where g ˜ is the canonical representative of the double coset S × g × D and can be found within 2 n 1 loops based on a base for S and strong generating sets for S and D. As illustrated in [48,50], the double coset representative method has exponential complexity in the worst case. The renaming reference method mainly splits the indices in classes, establishes the index order, and rename indices. It has factorial complexity. Other methods for arbitrary indexed expressions also present factorial complexity. In other words, the Butler–Portugal algorithm based on the double coset representative method [47] is the most efficient in theory. In practice, it is also the most efficient, since numerous experimental implementations show polynomial complexity in the number of indices in most common cases. Many popular CAS software packages based on the Butler–Portugal algorithm have also been developed, including the open-source Canon package [48] for Maple; xPerm package for Mathematica [54]; Cadabra [55] and SymPy [56], which are both standalone open-source; and Tensor-canonicalizer, which is based on the improved Butler–Portugal algorithm by Niehoff for Mathematica [57].
Among all these packages, Tensor-canonicalizer [57] performs the best in most common cases, especially in tensor calculus in higher dimensions. For example, while other software packages present nearly factorial complexity in practice for indexed monomials with total symmetry and contracted dummy indices, Tensor-canonicalizer is of polynomial complexity.
Therefore, we adopt Tensor-canonicalizer to find canonical forms of indexed monomials with respect to Mon.
Example 3. 
Suppose G = ( V , E ) is the multi-digraph shown in Figure 2a. Compute the canonical form of G as follows.
Step 1.
G is described by the indexed monomial
m = T ( 0 , 4 ) e 1 e 4 e 5 e 6 T ( 2 , 0 ) e 5 , e 6 T ( 2 , 0 ) e 2 , e 3 T ( 1 , 1 ) e 2 e 4 T ( 1 , 1 ) e 3 e 1 .
Step 2.
The canonical form of m is T ( 2 , 0 ) e 1 , e 2 T ( 1 , 1 ) e 1 e 3 T ( 1 , 1 ) e 2 e 4 T ( 2 , 0 ) e 5 , e 6 T ( 0 , 4 ) e 3 , e 4 , e 5 , e 6 .
Step 3.
The canonical form of G is shown in Figure 2b, by Step 4 of Algorithm 1.
According to the analysis of experimental implementations in Ref. [57], we have the following conclusions.
Proposition 3. 
Suppose G is a multi-digraph with k indices and p edges. If for each vertex v, | E ( v ) | = | E ( v ) | = 2 , then finding the canonical form of G has polynomial complexity of approximately O ( ( k + p ) 2 ) or O ( k 2.1 ) in practice.
Proof. 
According to Algorithm 1 or Corollary 1, δ ^ ( G ) is in the form of
[ T ( 2 , 2 ) T ( 2 , 2 ) T ( 2 , 2 ) ] ,
which has the same symmetries as Riemann tensor monomials. Section 5.2 in Ref. [57] shows that Tensor-canonicalizer can canonicalize contracted Riemann tensor monomials in polynomial time O ( k 2.1 ) in practice, which together with Remark 2 completes the proof.  □

4. The Second Approach

As illustrated in Section 3, we only need to consider monoterm canonicalization of indexed monomials in I P . In this section, another efficient method is proposed. It turns canonicalization of indexed monomials into finding canonical forms of tripartite graphs. First, the indexed monomials in I P are described by simple colored undirected graphs. Then, the most efficient approach and the best known software Traces are applied to obtain some properties of time complexity in practice.
Notation 2. 
G s = ( V s , E s ) denotes a simple undirected graph. We use ( G s , π ) to denote a simple colored (undirected) graph, where π is a coloring of G s , i.e., a surjection from V s to { 1 , 2 , , t } , and  t   | V s | . G sc denotes the set of simple colored undirected graphs.
Definition 5. 
Suppose ( G s , π ) , ( G s , π ) G s c . They are isomorphic if there is a bijection ψ between V s and V s such that π ( v ) = π ( ψ ( v ) ) , and  u v E s if and only if ψ ( u ) ψ ( v ) E s for u , v V s , in which case we write ( G s , π ) ( G s , π ) .
Definition 6. 
A canonical form of G s is a function C : G sc G sc such that C ( ( G s , π ) ) ( G s , π ) , and  C ( ( G s , π ) ) = C ( ( G s , π ) ) for ( G s , π ) ( G s , π ) .
Proposition 4. 
Let m be an indexed monomial in I P . Then, m can be described by a simple colored undirected graph. In other words, there exists a mapping, denoted by ρ, from  I P to G sc .
Proof. 
Suppose m = i = 1 k T ( a i , b i ) I i 2 I i 1 . Then, ρ ( m ) is constructed as follows. First, let the indexed function names (according to their appearance in m) be vertices v 1 , v 2 , , v k , and  π ( v i ) = 1 for 1 i k . Secondly, let the upper indices of m be vertices v k + 1 , , v k + l , the lower indices be vertices v k + l + 1 , , v k + 2 l , π ( v i ) = 2 for k + 1 i k + l , and  π ( v i ) = 3 for k + l + 1 i k + 2 l . An  edge u v of ρ ( m ) satisfies one of the following conditions: (1) u , v correspond to an upper index and a lower index with the same name, (2) u , v correspond to the indexed function name and one index of an indexed function, respectively.  □
Example 4. 
Suppose m = T ( 3 , 1 ) e 1 e 2 , e 6 , e 7 T ( 2 , 3 ) e 6 , e 7 , e 3 e 5 , e 4 T ( 1 , 2 ) e 2 , e 4 e 3 T ( 1 , 1 ) e 5 e 1 , as given in Example 2.
First, let the vertices v 1 , v 2 , v 3 , v 4 of the colored graph ρ ( m ) represent the function names T ( 3 , 1 ) , T ( 2 , 3 ) , T ( 1 , 2 ) , T ( 1 , 1 ) , respectively, v 5 , , v 11 represent the upper indices e 2 , e 6 , e 7 , e 5 , e 4 , e 3 , e 1 , and  v 12 , , v 18 correspond to the lower indices e 1 , e 6 , e 7 , e 3 , e 2 , e 4 , e 5 . Then, π ( v 1 ) , , π ( v 4 ) are 1, π ( v 5 ) , π ( v 11 ) are 2, and  π ( v 12 ) , , π ( v 18 ) are 3. The edges are
v 1 v 5 , v 1 v 6 , v 1 v 7 , v 1 v 12 , v 2 v 8 , v 2 v 9 , v 2 v 13 , v 2 v 14 , v 2 v 15 ,
v 3 v 10 , v 3 v 16 , v 3 v 17 , v 4 v 11 , v 4 v 18 , v 5 v 16 , v 6 v 13 , v 7 v 14 , v 8 v 18 , v 9 v 17 , v 10 v 15 , v 11 v 12 .
ρ ( m ) is shown in Figure 3.
Remark 3. 
In the literature, Ref. [49] also uses an undirected graph to describe an indexed monomial. The graph takes each index of the indexed monomial as a vertex and has an extra vertex 1, which is adjacent to free indices. However, it does not take the indexed function names as vertices. The graphical description proposed in (the proof of) Proposition 4 integrates all the elements of an indexed monomial into a graph. What is more important, the proposed graphical representation can lead to some good properties, as shown in the following Propositions 6 and 7.
The following claim will verify the equivalence of finding canonical forms of indexed monomials and of colored graphs.
Proposition 5. 
Suppose m , m I P . Then, m and m are equivalent with respect to Mon, if and only if ρ ( m ) and ρ ( m ) are isomorphic.
Proof. 
Assume that m and m are equivalent. Then, there exists a bijection ϑ between F ( m ) and F ( m ) such that for each indexed function f, ϑ ( f ) can be rewritten as f by Ren (in one step), and then by G-inner symmetries and Com. Define a mapping ψ from the vertex set of ρ ( m ) to that of ρ ( m ) , such that either v and ψ ( v ) represent the indexed function names of f and ϑ ( f ) , respectively, or the index represented by v can be rewritten as the one represented by ψ ( v ) via Ren, where v ρ ( m ) . It is clear that ρ ( m ) and ρ ( m ) are isomorphic under ψ .
Conversely, assume that ρ ( m ) and ρ ( m ) are isomorphic (under a bijection ψ ). Suppose v 11 , v 12 , v 13 are vertices of ρ ( m ) colored in 1 , 2 , 3 . Then, v 1 i v 1 j is an edge of ρ ( m ) if and only if ψ ( v 1 i ) ψ ( v 1 j ) is an edge of ρ ( m ) , where i , j { 1 , 2 , 3 } . In other words, there exists a bijection ω between the index sets of m and m such that a , b are in the same indexed function if and only if ω ( a ) and ω ( b ) are in the same indexed function, and  ( a , b ) is a pair of dummy indices of m if and only if ( ω ( a ) , ω ( b ) ) is a pair of dummy indices of m . Therefore, m can be rewritten as m by Mon.  □
By Proposition 5, the following corollary is straightforward.
Corollary 3. 
(1)
There is a bijection between G sc /≈ and I P /∼, where ≈ is the equivalence relation defined as G s G s , if and only if G s and G s are isomorphic, and ∼ is defined as a∼b if and only if a can be rewritten as b by Mon.
(2)
A canonical form of m can be obtained from ρ ( m ) can , a canonical form of ρ ( m ) , as follows: Sort the vertices of ρ ( m ) can with the color 2 in a lexicographical order, and obtain a vertex sequence denoted by VS. Define a mapping ξ from VS to N by mapping the ith element in VS to i. ξ induces a mapping ξ ^ from the set of vertices with the color 3 to N such that ξ ^ ( v ) = ξ ( v ) , where v and v are adjacent, and  v , v are vertices with the colors 2 and 3 respectively. Then, m m o n is i T ( a i , b i ) I 2 i I 1 i , satisfying the condition that T ( a i , b i ) represents the ith element of the sequence of vertices with the color 1, I 1 i and I 2 i are subsequences of { 1 , 2 , } , and  ξ 1 ( A ) (resp. ξ ^ 1 ( A ) ) is adjacent to the vertex represented by T ( a i , b i ) , where A is in I 1 i (resp. I 2 i ).
Combining Proposition 4 and Corollary 3, we have the following method for finding canonical forms of multi-digraphs.
Remark 4. 
It is clear that Steps 2 and 4 have polynomial complexity of at most O ( ( k + 2 p ) 2 ) . Steps 1 and 5 have polynomial complexity O ( ( k + p ) 2 ) by Remark 2. The methods and complexity of Step 3 for finding canonical forms of simple colored undirected graphs are discussed as follows.
The following proposition shows that we only need to consider canonical forms of simple colored tripartite graphs in Step 3 of Algorithm 2.
Algorithm 2 Another method for finding canonical forms of multi-digraphs.
Input
A multi-digraph G, with k vertices and p edges.
Output: 
Canonical form of G.
Step 1. 
Apply Steps 1 and 2 of Algorithm 1, to get an indexed monomial m.
Step 2. 
Find the colored graph ρ ( m ) to describe m.
2.1
Let the indexed function names of m (according to their appearance in m) be vertices v 1 , v 2 , , v k , and  color them with 1.
2.2
Let the upper indices of m be vertices v k + 1 , , v k + p , and color them with 2. Let the lower indices be vertices v k + p + 1 , , v k + 2 p , and color them with 3.
2.3
If the vertices u , v correspond to an upper index and a lower index with the same name, or they correspond to the indexed function name and one index of an indexed function, respectively, then let u v be an edge.
Step 3. 
Compute a canonical form of ρ ( m ) , denoted by ρ ( m ) can .
Step 4. 
Obtain the canonical form m m o n of m from ρ ( m ) can , as follows.
4.1
Sort the vertices of ρ ( m ) can with the color 2 in a lexicographical order, and obtain a vertex sequence denoted by VS2.
4.2
Let ξ be a mapping from VS2 to N by mapping the ith element in VS2 to i.
4.3
For each vertex v with the color 3, find the vertex v with the color 2 which is adjacent to v, let ξ ^ be a mapping from the set of vertices with the color 3 to N such that ξ ^ ( v ) = ξ ( v ) .
4.4
Obtain a vertex sequence, denoted by VS1, by sorting the vertices with the color 1 in a lexicographical order. Then, find the vertex set S 2 i (resp. S 3 i ) with the color 2 (resp. 3) that are adjacent to the ith element in VS1, and sort { ξ ( v ) | v S 2 i } (resp. { ξ ^ ( v ) | v S 3 i } ) in ascending order to obtain I 1 i (resp. I 2 i ).
4.5
Let m m o n be i = 1 k T ( a i , b i ) I 2 i I 1 i , where a i , b i are | I 1 i | and | I 2 i | , respectively.
Step 5. 
Apply Step 4 of Algorithm 1 to get a multi-digraph.
Proposition 6. 
Suppose m I P . Then, ρ ( m ) is a tripartite graph.
Proof. 
The vertex set of ρ ( m ) can be divided into three disjoint subsets, consisting of vertices with the color 1, 2, and 3, respectively. According to Proposition 4, the two ends of an edge must have different colors. □
As mentioned in Section 1, the most successful approach in practice for finding canonical forms of graphs or solving the isomorphism problem is the individualization-refinement paradigm, which is utilized by virtually all modern competitive and efficient software tools, including nauty, Bliss, conauto, saucy, and Traces. Among the five tools, conauto and saucy do not perform canonical labeling. Nauty is the first highly efficient program that can handle structurally regular graphs with hundreds of vertices. Bliss is specially designed for large and sparse graphs. Traces, developed by Piperno et al. [25], made a major revision of the way the search tree is scanned. Mckay et al. [1] compared the performance of Traces with nauty, Bliss, saucy, and conauto, showing that for finding canonical forms, nauty is generally the fastest for small graphs and some easier families of graphs, while Traces is better for most of the difficult (colored) graph families. In particular, Traces is the fastest for tripartite graphs. Therefore, Algorithm 2 combined with these modern competitive tools, especially Traces, can provide an efficient approach for finding canonical forms of multi-digraphs, according to Remark 4.
Remark 5. 
The experiments in [1] show that computing canonical forms of (non-disjoint) union of (small) tripartite graphs take polynomial time. We repeat such an experiment, and find that the time complexity is approximately O ( n 4.803 ) , as shown in Figure 4.
By Remarks 4 and 5, the following conclusion is straightforward.
Proposition 7. 
For a multi-digraph G with k vertices and p edges, if ρ δ ( G ) is a non-disjoint union of small tripartite graphs, then computing the canonical form of G takes approximately O ( k + 2 p ) 4.803 time in practice by Algorithm 2 and Traces, where ρ , δ are defined in Propositions 4 and 1, respectively.

5. Conclusions and Future Work

This paper proposed a novel description of multi-digraphs as a class of indexed monomials, presented two efficient and practical approaches for computing canonical forms of multi-digraphs from the perspective of computer algebra, and explored some interesting results on complexity. Initially, we verified the equivalence of the two problems of finding canonical forms of multi-digraphs and of indexed monomials in I P . Then, the first approach employed the double coset representative method from computational group theory for canonicalization of indexed monomials and found that finding the canonical forms of a class of multi-digraphs in practice has polynomial complexity via Tensor-canonicalizer. The second approach turned canonicalization of indexed monomials into finding canonical forms of (colored) tripartite graphs. It was shown that the proposed algorithm combined with the Traces tool also takes polynomial time for computing canonical forms of a class of multi-digraphs.
In future work, ideals and syzygies in indexed polynomial rings will be used to investigate other basic problems in multi-digraphs, especially graph operations.

Author Contributions

Conceptualization, J.L. and F.N.; methodology, J.L.; validation, S.Y. and W.L.; formal analysis, J.L. and C.Z.; investigation, J.L. and F.N.; resources, J.L.; writing—original draft preparation, J.L.; writing—review and editing, J.L. and S.Y.; supervision, F.N. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China (Grant No. 12371508).

Data Availability Statement

The original contributions presented in the study are included in the article. Further inquiries can be directed to the corresponding authors.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. McKay, B.D.; Piperno, A. Practical graph isomorphism, II. J. Symb. Comput. 2014, 60, 94–112. [Google Scholar] [CrossRef]
  2. Babai, L.; Luks, E.M. Canonical labeling of graphs. In Proceedings of the 15th Annual ACM Symposium on Theory of Computing, Boston, MA, USA, 25–27 April 1983; pp. 171–183. [Google Scholar]
  3. Ivanciuc, O. Canonical numbering and constitutional symmetry. In Handbook of Chemoinformatics; Wiley–VCH Verlag GmbH: Weinheim, Germany, 2008; pp. 139–160. [Google Scholar]
  4. Shah, Y.J.; Davida, G.I.; McCarthy, M.K. Optimum featurs and graph isomorphism. IEEE Trans. Syst. Man Cybern. 1974, 3, 313–319. [Google Scholar] [CrossRef]
  5. Grohe, M.; Pascal, S. The graph isomorphism problem. Commun. ACM 2020, 63, 128–134. [Google Scholar] [CrossRef]
  6. Babai, L. Canonical form for graphs in quasipolynomial time. In Proceedings of the 51st Annual ACM SIGACT Symposium on Theory of Computing, Phoenix, AZ, USA, 23–26 June 2019; pp. 1237–1246. [Google Scholar]
  7. Babai, L. Graph isomorphism in quasipolynomial time. In Proceedings of the 48th Annual ACM Symposium on Theory of Computing, Cambridge, MA, USA, 19–21 June 2016; pp. 684–697. [Google Scholar]
  8. Huan, J.; Wang, W.; Prins, J. Efficient mining of frequent subgraphs in the presence of isomorphism. In Proceedings of the 3rd IEEE International Conference on Data Mining, Melbourne, FL, USA, 19–22 November 2003; pp. 549–552. [Google Scholar]
  9. Kuramochi, M.; Karypis, G. Finding frequent patterns in a large sparse graph. Data Min. Knowl. Discov. 2005, 11, 243–271. [Google Scholar] [CrossRef]
  10. Kuramochi, M.; Karypis, G. An efficient algorithm for discovering frequent subgraphs. IEEE Trans. Knowl. Data Eng. 2004, 16, 1038–1051. [Google Scholar] [CrossRef]
  11. He, P.R.; Zhang, W.J.; Li, Q. Some further development on the eigensystem approach for graph isomorphism detection. J. Frankl. Inst. Eng. Appl. Math. 2005, 342, 657–673. [Google Scholar] [CrossRef]
  12. Kashani, Z.; Ahrabian, H.; Elahi, E.; Nowzari–Dalini, A.; Ansari, E.; Asadi, S.; Mohammadi, S.; Schreiber, F.; Masoudi-Nejad, A. Kavosh: A new algorithm for finding network motifs. BMC Bioinform. 2009, 10, 318. [Google Scholar] [CrossRef]
  13. Arvind, V.; Das, B.; Köbler, J. A logspace algorithm for partial 2–tree canonization. In Proceedings of the 3rd International Computer Science Symposium in Russia, Moscow, Russia, 7–12 June 2008; pp. 40–51. [Google Scholar]
  14. Arnborg, S.; Proskurowski, A. Canonical representations of partial 2– and 3–trees. BIT 1992, 32, 197–214. [Google Scholar] [CrossRef]
  15. Parris, R.; Read, R.C. A Coding Procedure for Graphs; Scientific Report UWI/CC 10; University of West Indies Computer Centre: Mona, Jamaica, 1969. [Google Scholar]
  16. Corneil, D.G.; Gotlieb, C.C. An efficient algorithm for graph isomorphism. J. ACM 1970, 17, 51–64. [Google Scholar] [CrossRef]
  17. Arlazarov, V.L.; Zuev, I.I.; Uskov, A.V.; Faradzev, I.A. An algorithm for the reduction of finite non–oriented graphs to canonical form. Ž. Vycisl. Mat. Mat. Fiz. 1974, 14, 737–743. [Google Scholar] [CrossRef]
  18. McKay, B.D. Computing automorphisms and canonical labellings of graphs. In Combinatorial Mathematics; Lecture Notes in Mathematics; Springer: Berlin/Heidelberg, Germany, 1978; Volume 686, pp. 223–232. [Google Scholar]
  19. McKay, B.D. Practical graph isomorphism. Congr. Numer. 1980, 30, 45–87. [Google Scholar] [CrossRef]
  20. Junttila, T.; Kaski, P. Engineering an efficient canonical labeling tool for large and sparse graphs. In Proceedings of the 9th Workshop on Algorithm Engineering and Experiments and the 4th Workshop on Analytic Algorithms and Combinatorics, New Orleans, LA, USA, 6 January 2007; pp. 135–149. [Google Scholar]
  21. Junttila, T.; Kaski, P. Conflict propagation and component recursion for canonical labeling. In Proceedings of the 1st International ICST Conference on Theory and Practice of Algorithms, Rome, Italy, 18–20 April 2011; pp. 151–162. [Google Scholar]
  22. López–Presa, J.L.; Fernández Anta, A. Fast algorithm for graph isomorphism testing. In Proceedings of the 8th International Symposium on Experimental Algorithms, Dortmund, Germany, 4–6 June 2009; pp. 221–232. [Google Scholar]
  23. López–Presa, J.L.; Fernández Anta, A.; Núñez Chiroque, L. Conauto–2.0: Fast isomorphism testing and automorphism group computation. arXiv 2011, arXiv:1108.1060. [Google Scholar]
  24. Darga, P.T.; Liffiton, M.H.; Sakallah, K.A.; Markov, I.L. Exploiting structure in symmetry detection for CNF. In Proceedings of the 41st Design Automation Conference, San Diego, CA, USA, 7–11 June 2004; pp. 530–534. [Google Scholar]
  25. Piperno, A. Search space contraction in canonical labeling of graphs. arXiv 2008, arXiv:0804.4881. [Google Scholar]
  26. Hao, J.; Gong, Y.; Wang, Y.; Tan, L.; Sun, J. Using k–mix–neighborhood subdigraphs to compute canonical labelings of digraphs. Entropy 2017, 19, 79. [Google Scholar] [CrossRef]
  27. Wang, F. An efficient distributed algorithm for canonical labeling on directed split–stars. Discret. Appl. Math. 2008, 156, 3475–3482. [Google Scholar] [CrossRef]
  28. De Loera, J.A. Groebner bases and graph colorings. Beitr. Algebra Geom. 1995, 36, 89–96. [Google Scholar]
  29. De Loera, J.A.; Lee, J.; Malkin, P.N.; Margulies, S. Hilbert’s Nullstellensatz and an algorithm for proving combinatorial infeasibility. In Proceedings of the 21st Annual Meeting of the International Symposium on Symbolic Computation, ISSAC, Linz, Austria, 20–23 July 2008; pp. 197–206. [Google Scholar]
  30. De Loera, J.A.; Lee, J.; Margulies, S.; Onn, S. Expressing combinatorial optimization problems by systems of polynomial equations and the Nullstellensatz. Comb. Probab. Comput. 2009, 18, 551–582. [Google Scholar] [CrossRef]
  31. De Loera, J.A.; Margulies, S.; Pernpeintner, M.; Riedl, E.; Rolnick, D.; Spencer, G.; Stasi, D.; Swenson, J. Graph–coloring ideals: Nullstellensatz certificates: Groebner bases for chordal graphs, and hardness of Groebner bases. In Proceedings of the 40th ACM International Symposium on Symbolic and Algebraic Computation, ISSAC, Bath, UK, 6–9 July 2015; pp. 133–140. [Google Scholar]
  32. Hashemi, A.; Ghaeli, Z. Note on Groebner bases and graph colorings. Miskolc Math. Notes 2013, 14, 103–109. [Google Scholar] [CrossRef]
  33. Mnuk, M. Representing graph properties by polynomial ideals. In Proceedings of the 4th International Workshop on Computer Algebra in Scientific Computing (CASC), Constance, Germany, 22–26 September 2001; pp. 431–444. [Google Scholar]
  34. Matiyasevich, Y.V. Some algebraic methods for calculation of the number of colorings of a graph. J. Math. Sci. 2004, 121, 2401–2408. [Google Scholar] [CrossRef]
  35. Hillar, C.; Windfeldt, T. Algebraic characterization of uniquely vertex colorable graphs. J. Comb. Theory Ser. B 2008, 98, 400–414. [Google Scholar] [CrossRef]
  36. Maarouf, H. Groebner bases techniques for an S–packing k–coloring of a graph. Electron. J. Comb. 2017, 24, P3.33. [Google Scholar] [CrossRef] [PubMed]
  37. Li, S.R.; Li, W.W. Independence number of graphs and generators of ideals. Combinatorica 1981, 1, 55–61. [Google Scholar] [CrossRef]
  38. Alon, N.; Tarsi, M. Colorings and orientations of graphs. Combinatorica 1992, 12, 125–134. [Google Scholar] [CrossRef]
  39. Fischer, K.G. Symmetric polynomials and Hall’s theorem. Discret. Math. 1988, 69, 225–234. [Google Scholar] [CrossRef]
  40. Obeid, N. On the Simplification of Tensor Expressions. Master’s Thesis, Department of Computer Science, University of Western Ontario, London, ON, Canada, August 2001. [Google Scholar]
  41. Liu, J. Normalization in Riemann tensor polynomial ring. J. Syst. Sci. Complex. 2018, 31, 569–580. [Google Scholar] [CrossRef]
  42. Liu, J. An extension of Gröbner basis theory to indexed polynomials without eliminations. J. Syst. Sci. Complex. 2020, 33, 1708–1718. [Google Scholar] [CrossRef]
  43. Liu, J.; Ni, F.; Song, S.H.; Du, M.J. Normalization of indexed differentials by extending Gröbner basis theory. J. Syst. Sci. Complex. 2022, 35, 2016–2028. [Google Scholar] [CrossRef]
  44. Portugal, R. An algorithm to simplify tensor expressions. Comput. Phys. Commun. 1998, 115, 215–230. [Google Scholar] [CrossRef]
  45. Portugal, R. Algorithmic simplification of tensor expressions. J. Phys. A Math. Gen. 1999, 32, 7779–7789. [Google Scholar] [CrossRef]
  46. Portugal, R. The Riegeom package: Abstract tensor calculation. Comput. Phys. Commun. 2000, 126, 261–268. [Google Scholar] [CrossRef]
  47. Manssur, L.R.U.; Portugal, R.; Svaiter, B.F. Group-theoretic approach for symbolic tensor manipulation. Internat. J. Modern Phys. C 2002, 13, 859–879. [Google Scholar] [CrossRef]
  48. Manssur, L.R.U.; Portugal, R. The Canon package: A fast kernel for tensor manipulators. Comput. Phys. Commun. 2004, 157, 173–180. [Google Scholar] [CrossRef]
  49. Li, Z.; Shao, S.; Liu, W. Classifications and canonical forms of tensor product expressions in the presence of permutation symmetries. arXiv 2016, arXiv:1604.06156v1. [Google Scholar]
  50. Li, H.B.; Li, Z.; Li, Y. Riemann tensor polynomial canonicalization by graph algebra extension. In Proceedings of the 42th ACM International Symposium on Symbolic and Algebraic Computation, Kaiserslautern, Germany, 25–28 July 2017; pp. 269–276. [Google Scholar]
  51. Liu, J. Normalization of indexed differentials based on function distance invariants. In Proceedings of the 19th International Workshop on Computer Algebra in Scientific Computing, Beijing, China, 18–22 September 2017; pp. 285–300. [Google Scholar]
  52. Liu, J. Block distance invariant method for monoterm canonicalization of Riemann tensor polynomials. ACM Commun. Comput. Algebra 2019, 53, 134–137. [Google Scholar] [CrossRef]
  53. Liu, J.; Ni, F. Distance invariant method for normalization of indexed differentials. J. Symb. Comput. 2021, 104, 256–275. [Google Scholar] [CrossRef]
  54. Martín-García, J.M. xPerm: Fast index canonicalization for tensor computer algebra. Comput. Phys. Commun. 2008, 179, 597–603. [Google Scholar] [CrossRef]
  55. Peeters, K. A field-theory motivated approach to symbolic computer algebra. Comput. Phys. Commun. 2007, 176, 550–558. [Google Scholar] [CrossRef]
  56. Meurer, A.; Smith, C.P.; Paprocki, M.; Čertík, O.; Kirpichev, S.B.; Rocklin, M.; Kumar, A.; Ivanov, S.; Moore, J.K.; Singh, S.; et al. SymPy: Symbolic computing in Python. PeerJ Comput. Sci. 2017, 3, e103. [Google Scholar] [CrossRef]
  57. Niehoff, B.E. Faster tensor canonicalization. Comput. Phys. Commun. 2018, 228, 123–145. [Google Scholar] [CrossRef]
Figure 1. An example of a multi-digraph.
Figure 1. An example of a multi-digraph.
Symmetry 16 01638 g001
Figure 2. An example of computing canonical forms of multi-digraphs. (a) A multi-digraph G. (b) The canonical form of G.
Figure 2. An example of computing canonical forms of multi-digraphs. (a) A multi-digraph G. (b) The canonical form of G.
Symmetry 16 01638 g002
Figure 3. Graphical description of Example 4 (red = 1, green = 2, yellow = 3).
Figure 3. Graphical description of Example 4 (red = 1, green = 2, yellow = 3).
Symmetry 16 01638 g003
Figure 4. Performance of computing canonical forms of (non-disjoint) union of tripartite graphs by Traces (horizontal: number of vertices; vertical: time in seconds).
Figure 4. Performance of computing canonical forms of (non-disjoint) union of tripartite graphs by Traces (horizontal: number of vertices; vertical: time in seconds).
Symmetry 16 01638 g004
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Liu, J.; Yang, S.; Liu, W.; Ni, F.; Zhu, C. Practical Canonical Labeling of Multi-Digraphs via Computer Algebra. Symmetry 2024, 16, 1638. https://doi.org/10.3390/sym16121638

AMA Style

Liu J, Yang S, Liu W, Ni F, Zhu C. Practical Canonical Labeling of Multi-Digraphs via Computer Algebra. Symmetry. 2024; 16(12):1638. https://doi.org/10.3390/sym16121638

Chicago/Turabian Style

Liu, Jiang, Siyu Yang, Wencheng Liu, Feng Ni, and Chenfan Zhu. 2024. "Practical Canonical Labeling of Multi-Digraphs via Computer Algebra" Symmetry 16, no. 12: 1638. https://doi.org/10.3390/sym16121638

APA Style

Liu, J., Yang, S., Liu, W., Ni, F., & Zhu, C. (2024). Practical Canonical Labeling of Multi-Digraphs via Computer Algebra. Symmetry, 16(12), 1638. https://doi.org/10.3390/sym16121638

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop