Abstract
The group-theoretic approach to fast matrix multiplication has been introduced by Cohn and Umans (proceedings of 44th annual IEEE symposium on foundations of computer science, IEEE Computer Society, 2003). In this approach, there is a challenging problem. It is to find three subsets of a given group satisfying the so-called triple product property such that the product of their sizes is as large as possible. For this challenging problem, some brute-force algorithm has been proposed, which is exact but time-consuming. The ant colony optimization is a randomized heuristic algorithm and finds extensive applications in many fields. We use it to solve the problem of searching for three subsets of a given group such that they satisfy the triple product property and the product of their sizes reaches the maximum. Experimental results show that the ant colony optimization is efficient for this problem. Using this approach, we obtain three subsets for each nonabelian group of order not larger than 44 which satisfy the triple product property and the product of whose sizes reaches the best value found so far.

Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Ambainis A, Filmus Y, Le Gall F (2015) Fast matrix multiplication: limitations of the coppersmith-winograd method. In: Proceedings of the forty-seventh annual acm symposium on theory of computing, pp 585–593
Bini D, Capovani M, Romani F, Lotti G (1979) \(\text{ O }(n^{2.7799})\) complexity for \(n\times n\) approximate matrix multiplication. Inf Process Lett 8(5):234–235
Bshouty NH (1995) On the additive complexity of \(2\times 2\) matrix multiplication. Inf Process Lett 56(6):329–335
Cohn H, Umans C (2003) A group-theoretic approach to fast matrix multiplication. In: Proceedings of 44th annual IEEE symposium on foundations of computer science, IEEE Computer Society, pp 438–449
Coppersmith D, Winograd S (1982) On the asymptotic complexity of matrix multiplication. SIAM J Comput 11(3):472–492
Coppersmith D, Winograd S (1990) Matrix multiplication via arithmetic progressions. J Symb Comput 9(3):251–280
Dorigo M, Maniezzo V, Colorni A (1996) Ant system: optimization by a colony of cooperating agents. IEEE Trans Syst Man Cybern Part B Cybern 26(1):29–41
Hart S, Hedtke I, Müller-Hannemann M, Murthy S (2015) A fast search algorithm for \(<m, m, m>\) triple product property triples and an application for 5 \(\times \) 5 matrix multiplication. Groups Complexity Cryptol 7(1):31–46
Hedtke I, Murthy S (2012) Search and test algorithms for triple product property triples. Groups Complex Cryptol 4(1):111–133
Hopcroft JE, Kerr LR (1969) Some techniques for proving certain simple programs optimal. In: IEEE conference record of 10th annual symposium on switching and automata theory, pp 36–45
Jansen T, Wegener I (2001) Evolutionary algorithms: how to cope with plateaus of constant fitness and when to reject strings of the same fitness. IEEE Trans Evol Comput 5(6):589–599
Le Gall F (2014) Powers of tensors and fast matrix multiplication. Eprint Arxiv pp 296–303
Neumann F, Sudholt D, Witt C (2009) Analysis of different MMAS ACO algorithms on unimodal functions and plateaus. Swarm Intell 3(1):35–68
Neumann PM (2011) A note on the triple product property for subsets of finite groups. LMS J Comput Math 14(14):232–237
Pan VY (1978) Strassen’s algorithm is not optimal, trilinear technique of aggregating, uniting and canceling for constructing fast algorithms for matrix operations. In: Proceedings of the 19th annual symposium on foundations of computer science, pp 166–176
Pan VY (1980) New fast algorithms for matrix operations. SIAM J Comput 9(2):321–342
Rai P (2014) Edge detection of medical images using modified ant colony optimization algorithm based on weighted heuristics. Int J Image Gr Signal Process 6(3):21–26
Salama K, Abdelbar AM (2014) A novel ant colony algorithm for building neural network topologies. In: Proceedings of the 9th international conference on ant colony optimization and swarm intelligence, ANTS 2014, Brussels, Belgium, September 10–12, pp 1–12
Schönhage A (1981) Partial and total matrix multiplication. SIAM J Comput 10(3):434–455
Stothers A (2010) On the complexity of matrix multiplication. Ph.D. thesis, University of Edinburgh
Strassen V (1969) Gaussian elimination is not optimal. Numer Math 13(4):354–356
Strassen V (1987) Relative bilinear complexity and matrix multiplication. J Für Die Reine Und Angewandte Math 375–376:406–443
Stützle T, Hoos HH (2000) Max–Min ant system. Future Gener Comput Syst 16(8):889–914
Williams VV (2012) Multiplying matrices faster than coppersmith-winograd. In: Proceedings of the forty-fourth annual acm symposium on theory of computing, pp 887–898
Winograd S (1971) On multiplication of \(2\times 2\) matrices. Linear Algebra Appl 4(4):381–388
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Funding
This study was funded by the National Natural Science Foundation of China (Nos. 61472143, 61562071), the Scientific Research Special Plan of Guangzhou Science and Technology Programme (No. 201607010045), and the Natural Science Foundation of Jiangxi Province (No. 20151BAB207020).
Conflict of interest
The authors declare that they have no conflict of interest
Human and Participants
This article does not contain any studies with human participants or animals performed by any of the authors.
Additional information
Communicated by V. Loia.
Appendix
Appendix
GAP Id | \(\langle n,m,p \rangle \) | Details subsets |
---|---|---|
[36, 1] | \(\langle 6, 4, 2\rangle \) | \(G:=\)SmallGroup(36,1), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1*f_2*f_3,f_1*f_2*f_4,f_1*f_2*f_3^2\), | ||
\(f_2*f_3*f_4^2,f_2*f_3^2*f_4^2]\); | ||
\(T=[e,f_1,f_2,f_1*f_2]\); | ||
\(U=[e,f_1*f_2*f_4^2]\); | ||
[36, 3] | \(\langle 9\), 3, \(2\rangle \) | \(G:=\)SmallGroup(36,3), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_2,f_1*f_4,f_2^2,f_1^2*f_3,f_1*f_2*f_4\), | ||
\(f_1^2*f_2*f_3,f_1*f_2^2*f_4,f_1^2*f_2^2*f_3]\); | ||
\(T=[e,f_1,f_1^2*f_2]\); | ||
\(U=[e,f_3*f_4]\); |
[36, 4] | \(\langle \)12, 2\(, 2\rangle \) | \(G:=\)SmallGroup(36,4), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_3,f_1*f_3,f_2*f_3,f_1*f_3^2,f_1*f_4^2\), | ||
\(f_2*f_4^2,f_3^2*f_4,f_1*f_2*f_3*f_4\), | ||
\(f_1*f_2*f_4^2,f_2*f_3^2*f_4^2\), | ||
\(f_1*f_2*f_3^2*f_4^2]\); | ||
\(T=[e, f_1*f_3^2*f_4]\); | ||
\(U=[e, f_1*f_3^2*f_4^2]\); | ||
[36, 6] | \(\langle 12, 2, 2\rangle \) | \(G:=\)SmallGroup(36,6), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_3,f_2^2,f_1*f_2*f_4,f_1*f_4^2,f_2^2*f_3\), | ||
\(f_2*f_4^2,f_1*f_2*f_3*f_4,f_1*f_3*f_4^2\), | ||
\(f_2*f_3*f_4^2,f_1*f_2^2*f_4^2\), | ||
\(f_1*f_2^2*f_3*f_4^2]\); | ||
\(T=[e,f_1*f_4]\); | ||
\(U=[e,f_1]\); | ||
[36, 7] | \(\langle \)12, 2\(, 2\rangle \) | \(G:=\)SmallGroup(36,7), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_2,f_4,f_1*f_4,f_2*f_4,f_1*f_2*f_4\), | ||
\(f_1*f_4^2,f_3^2*f_4,f_1*f_2*f_4^2,f_2*f_3^2*f_4\), | ||
\(f_1*f_3^2*f_4^2,f_1*f_2*f_3^2*f_4^2]\); | ||
\(T=[e,f_1*f_2*f_3^2]\); | ||
\(U=[e,f_1*f_2*f_3*f_4^2]\); | ||
[36, 9] | \(\langle \)12, 2\(, 2\rangle \) | \(G:=\)SmallGroup(36,9), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1*f_3,f_2*f_3,f_3*f_4,f_4^2\), | ||
\(f_1*f_3*f_4,f_1*f_2*f_3^2,f_1*f_3*f_4^2\), | ||
\(f_2*f_3^2*f_4,f_2*f_3*f_4^2\), | ||
\(f_1*f_2*f_3^2*f_4\),\(f_1*f_2*f_3^2*f_4^2]\); | ||
\(T=[e,f_2]\); | ||
\(U=[e,f_2*f_3^2]\); | ||
[36, 10] | \(\langle 12, 2,2\rangle \) | \(G:=\)SmallGroup(36,10), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1,f_3,f_1*f_3,f_2*f_4,f_1*f_2*f_4\), | ||
\(f_1*f_4^2,f_2*f_3^2,f_3*f_4^2,f_1*f_2*f_4^2\), | ||
\(f_2*f_3^2*f_4,f_1*f_2*f_3^2*f_4^2]\); | ||
\(T=[e,f_1*f_2]\); | ||
\(U=[e,f_1*f_2*f_3*f_4]\); | ||
[36, 11] | \(\langle \)8, 2\(, 3\rangle \) | \(G:=\)SmallGroup(36,11), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_2,f_1*f_4,f_1^2*f_2,f_1^2*f_3*f_4\), | ||
\(f_1*f_2^2*f_3,f_2^2*f_3*f_4\), | ||
\(f_1^2*f_2^2*f_3*f_4]\); | ||
\(T=[e,f_3*f_4]\); | ||
\(U=[e,f_1*f_2*f_3*f_4,f_1^2*f_2^2*f_4]\); | ||
[36, 12] | \(\langle 12, 2,2\rangle \) | \(G:=\)SmallGroup(36,12), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1*f_2,f_3^2,f_1*f_3^2,f_1*f_3*f_4\), | ||
\(f_1*f_4^2,f_2*f_3^2,f_2*f_3*f_4,f_2*f_4^2\), | ||
\(f_3*f_4^2,f_1*f_2*f_3^2,f_1*f_2*f_3*f_4^2]\); | ||
\(T=[e,f_1*f_2*f_4]\); | ||
\(U=[e,f_1*f_2*f_4^2]\); | ||
[36, 13] | \(\langle 12, 2,2\rangle \) | \(G:=\)SmallGroup(36,13), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_2,f_3,f_1*f_2,f_1*f_4,f_4^2\), | ||
\(f_1*f_2*f_4,f_1*f_3^2,f_2*f_3*f_4\), | ||
\(f_1*f_2*f_3*f_4,f_1*f_3*f_4^2\), | ||
\(f_2*f_3^2*f_4^2]\); | ||
\(T=[e,f_1*f_2*f_3]\); | ||
\(U=[e,f_1*f_2*f_3^2*f_4^2]\); |
[38, 1] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(38,1), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2\) | ||
\(S=[e,f_1*f_2^2,f_2^3,f_1*f_2^5,f_2^6,f_1*f_2^8\), | ||
\(f_1*f_2^9,f_1*f_2^{10},f_2^{11},f_1*f_2^{13}\), | ||
\(f_2^{14},f_1*f_2^{16}]\); | ||
\(T=[e,f_1*f_2^{11}]\); | ||
\(U=[e,f_1*f_2]\); | ||
[39, 1] | \(\langle 6,3,3\rangle \) | \(G:=\)SmallGroup(39,1), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2\) | ||
\(S=[e,f_2,f_1^2*f_2^2,f_2^9,f_1*f_2^{10},f_1^2*f_2^{11}]\); | ||
\(T=[e,f_1^2*f_2^5,f_1*f_2^{11}]\); | ||
\(U=[e,f_1*f_2^5,f_1^2*f_2^7]\); | ||
[40, 1] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(40,1), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1,f_2,f_3,f_1*f_2,f_1*f_3,f_2*f_3\), | ||
\(f_1*f_2*f_3,f_1*f_4^4,f_1*f_2*f_4^4\), | ||
\(f_1*f_3*f_4^4,f_1*f_2*f_3*f_4^4]\); | ||
\(T=[e,f_1*f_2*f_3*f_4^3]\); | ||
\(U=[e,f_1*f_4]\); | ||
[40, 3] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(40,3), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1,f_3,f_1*f_3,f_1*f_4,f_2*f_4\), | ||
\(f_2*f_3*f_4,f_1*f_2*f_4^3,f_2*f_4^4\), | ||
\(f_1*f_3*f_4,f_1*f_2*f_3*f_4^3\), | ||
\(f_2*f_3*f_4^4]\); | ||
\(T=[e,f_2*f_4^2]\); | ||
\(U=[e,f_2*f_3*f_4^3]\); | ||
[40, 4] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(40,4), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_3,f_4^2,f_1*f_4^2,f_2*f_4^2,f_3*f_4^2\), | ||
\(f_1*f_2*f_4^2,f_1*f_3*f_4^2,f_2*f_3*f_4^2\), | ||
\(f_1*f_2*f_3*f_4^2,f_1*f_2*f_4^4\), | ||
\(f_1*f_2*f_3*f_4^4]\); | ||
\(T=[e,f_1*f_3*f_4^3]\); | ||
\(U=[e,f_1*f_4^4]\); | ||
[40, 5] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(40,5), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1*f_3,f_2*f_4^2,f_1*f_2*f_4^2,f_1*f_4^3\), | ||
\(f_2*f_3*f_4^2,f_2*f_4^3,f_3*f_4^3\), | ||
\(f_1*f_2*f_3*f_4^2,f_2*f_3*f_4^3,f_3*f_4^4\), | ||
\(f_1*f_3*f_4^4 ]\); | ||
\(T=[e,f_1*f_3*f_4^3]\); | ||
\(U=[e,f_1*f_3*f_4]\); | ||
[40, 6] | \(\langle 13,2,2\rangle \) | \(G:=\)SmallGroup(40,6), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_4,f_1*f_3,f_1*f_2*f_4,f_1*f_4^2\), | ||
\(f_2*f_3*f_4,f_1*f_2*f_4^2,f_1*f_4^3\), | ||
\(f_2*f_3*f_4^2,f_3*f_4^3,f_2*f_4^4\), | ||
\(f_1*f_2*f_3*f_4^3,f_1*f_2*f_3*f_4^4]\); | ||
\(T=[e,f_1*f_2*f_3]\); | ||
\(U=[e,f_1*f_3*f_4^3]\); | ||
[40, 7] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(40,7), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1,f_2,f_3,f_1*f_3,f_2*f_3,f_2*f_4^2\), | ||
\(f_2*f_3*f_4^2,f_2*f_4^3,f_1*f_2*f_4^3\), | ||
\(f_2*f_3*f_4^3,f_1*f_2*f_3*f_4^3]\); | ||
\(T=[e,f_1*f_2*f_3*f_4]\); | ||
\(U=[e,f_1*f_4^2]\); |
[40, 8] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(40,8), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_1*f_3,f_1*f_2*f_3,f_3*f_4^2,f_1*f_4^3\), | ||
\(f_3*f_4^3,f_4^4,f_2*f_3*f_4^3,f_2*f_4^4\), | ||
\(f_1*f_2*f_4^4,f_2*f_3*f_4^4\), | ||
\(f_1*f_2*f_3*f_4^4]\); | ||
\(T=[e,f_1*f_3*f_4^4]\); | ||
\(U=[e,f_1*f_3*f_4^2]\); | ||
[40, 10] | \(\langle 10,2,2\rangle \) | \(G:=\)SmallGroup(40,10), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_3,f_1*f_2*f_4,f_1*f_3^2,f_1*f_3*f_4\), | ||
\(f_2*f_3^2*f_4,f_3^3*f_4,f_1*f_3^3*f_4\), | ||
\(f_2*f_3^4,f_1*f_3^4*f_4]\); | ||
\(T=[e,f_4]\); | ||
\(U=[e,f_2]\); | ||
[40, 11] | \(\langle 10,2,2\rangle \) | \(G:=\)SmallGroup(40,11), \(e=\)One(G), \(f_1=G.1\) |
\(S=[e,f_4,f_1*f_2*f_3,f_2*f_3^2,f_3^3\), | ||
\(f_1*f_2*f_3*f_4,f_2*f_3^2*f_4,f_3^4\), | ||
\(f_3^3*f_4,f_3^4*f_4]\); | ||
\(T=[e,f_1]\); | ||
\(U=[e,f_2]\); | ||
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
[40, 12] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(40,12), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_2,f_3,f_1*f_4,f_2*f_4,f_1*f_3*f_4\), | ||
\(f_2*f_3*f_4,f_1*f_2*f_3*f_4,f_4^4,f_1*f_4^4\), | ||
\(f_1*f_2*f_4^4,f_1*f_2*f_3*f_4^4]\); | ||
\(T=[e,f_3*f_4^4]\); | ||
\(U=[e,f_3*f_4^2]\); | ||
[40, 13] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(40,13), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3,f_4=G.4\) | ||
\(S=[e,f_2,f_1*f_3,f_3*f_4,f_1*f_2*f_3\), | ||
\(f_1*f_4^2,f_2*f_3*f_4\),\(f_4^3,f_1*f_2*f_4^2\), | ||
\(f_2*f_4^3,f_3*f_4^3,f_1*f_2*f_3*f_4^3]\); | ||
\(T=[e,f_1*f_2*f_4]\); | ||
\(U=[e,f_1]\); | ||
[42, 1] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(42,1), \(e=\)One(G), \(f_1=G.1\) |
\(f_2=G.2,f_3=G.3\) | ||
\(S=[e,f_3,f_2^2,f_3^2,f_1*f_3^2,f_2*f_3^2\), | ||
\(f_1*f_2*f_3^2,f_2^2*f_3^3,f_2^2*f_3^4,f_2*f_3^5\), | ||
\(f_1*f_2^2*f_3^4,f_1*f_2*f_3^6]\); | ||
\(T=[e,f_1*f_3^6]\); | ||
\(U=[e,f_1*f_3^3]\); | ||
[42, 2] | \(\langle 6,3,3\rangle \) | \(G:=\)SmallGroup(42,2), \(e=\)One(G), |
\(f_1=G.1,f_2=G.2,f_3=G.3\) | ||
\(S=[e,f_2*f_3,f_2^2*f_3^3,f_1*f_2*f_3^4\), | ||
\(f_1*f_2*f_3^5\), \(f_1*f_2^2*f_3^6]\); | ||
\(T=[e,f_2^2*f_3,f_2*f_3^5]\); | ||
\(U=[e,f_2^2*f_3^2,f_2*f_3^3]\); | ||
[42, 3] | \(\langle 14,2,2\rangle \) | \(G:=\)SmallGroup(42,3), \(e=\)One(G), |
\(f_1=G.1,f_2=G.2,f_3=G.3\) | ||
\(S=[e,f_1*f_2,f_1*f_3,f_2^2,f_2*f_3^2\), | ||
\(f_1*f_2^3,f_1*f_2^2*f_3,f_2^4*f_3,f_2^3*f_3^2\), | ||
\(f_2^6,f_2^5*f_3,f_1*f_2^4*f_3^2\), | ||
\(f_1*f_2^6*f_3,f_1*f_2^5*f_3^2]\); | ||
\(T=[e,f_1]\); | ||
\(U=[e,f_1*f_3^2]\); |
[42, 4] | \(\langle 12,2,2\rangle \) | \(G:=\)SmallGroup(42,4), \(e=\)One(G), |
\(f_1=G.1,f_2=G.2,f_3=G.3\) | ||
\(S=[e,f_1,f_1*f_2,f_1*f_3,f_2^2*f_3^2,f_2*f_3^3\), | ||
\(f_1*f_2*f_3^3,f_1*f_3^4,f_1*f_2^2*f_3^3\), | ||
\(f_1*f_2*f_3^4,f_2^2*f_3^6,f_1*f_2^2*f_3^6]\); | ||
\(T=[e,f_1*f_3^5]\); | ||
\(U=[e,f_1*f_3^3]\); | ||
[42, 5] | \(\langle 14,2,2\rangle \) | \(G:=\)SmallGroup(42,5), \(e=\)One(G), |
\(f_1=G.1,f_2=G.2,f_3=G.3\) | ||
\(S=[e,f_1*f_2,f_2*f_3,f_3^2,f_1*f_2^2*f_3\), | ||
\(f_1*f_2*f_3^2,f_1*f_3^3,f_2^2*f_3^3,f_2*f_3^4\), | ||
\(f_1*f_2*f_3^4,f_1*f_3^5,f_2^2*f_3^5,f_2*f_3^6\), | ||
\(f_1*f_2^2*f_3^6]\); | ||
\(T=[e,f_1*f_2*f_3^3]\); | ||
\(U=[e,f_1*f_2^2*f_3^3]\); | ||
[44, 1] | \(\langle 11,2,2\rangle \) | \(G:=\)SmallGroup(44,1), \(e=\)One(G), |
\(f_1=G.1,f_2=G.2,f_3=G.3\) | ||
\(S=[e,f_3,f_2*f_3^3,f_1*f_2*f_3^3,f_3^5,f_1*f_3^5\), | ||
\(f_1*f_2*f_3^7,f_1*f_3^8,f_1*f_2*f_3^9\), | ||
\(f_2*f_3^{10},f_1*f_2*f_3^{10}]\); | ||
\(T=[e,f_2]\); | ||
\(U=[e,f_1*f_2*f_3]\); | ||
[44, 3] | \(\langle 14,2,2\rangle \) | \(G:=\)SmallGroup(44,3), \(e=\)One(G), |
\(f_1=G.1,f_2=G.2,f_3=G.3\) | ||
\(S=[e,f_1*f_3,f_3^2,f_2*f_3^2,f_1*f_3^4\), | ||
\(f_3^5,f_1*f_2*f_3^4,f_1*f_3^6,f_1*f_3^7\), | ||
\(f_2*f_3^7,f_2*f_3^8,f_3^{10},f_1*f_2*f_3^9\), | ||
\(f_1*f_2*f_3^{10}]\); | ||
\(T=[e,f_1]\); | ||
\(U=[e,f_1*f_2*f_3]\); |
Rights and permissions
About this article
Cite this article
Lai, X., Zhou, Y. & Xiang, Y. Ant colony optimization for triple product property triples to fast matrix multiplication. Soft Comput 21, 7159–7171 (2017). https://doi.org/10.1007/s00500-016-2259-y
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-016-2259-y