Description of fast matrix multiplication algorithm: ⟨18×20×32:6412⟩

Algorithm type

64⁢X8⁢Y12⁢Z12+44⁢X6⁢Y12⁢Z12+48⁢X4⁢Y12⁢Z12+4⁢X2⁢Y12⁢Z12+6⁢X8⁢Y8⁢Z8+2⁢X10⁢Y8⁢Z4+32⁢X10⁢Y6⁢Z6+6⁢X6⁢Y8⁢Z8+4⁢X10⁢Y6⁢Z4+6⁢X10⁢Y4⁢Z6+X8⁢Y8⁢Z4+64⁢X8⁢Y6⁢Z6+15⁢X10⁢Y4⁢Z4+3⁢X8⁢Y6⁢Z4+6⁢X8⁢Y4⁢Z6+X6⁢Y8⁢Z4+176⁢X6⁢Y6⁢Z6+27⁢X8⁢Y4⁢Z4+X6⁢Y8⁢Z2+2⁢X6⁢Y6⁢Z4+477⁢X4⁢Y6⁢Z6+264⁢X3⁢Y6⁢Z6+10⁢X10⁢Y2⁢Z2+X6⁢Y6⁢Z2+26⁢X6⁢Y4⁢Z4+21⁢X6⁢Y2⁢Z6+2⁢X4⁢Y8⁢Z2+3⁢X4⁢Y6⁢Z4+2⁢X4⁢Y4⁢Z6+325⁢X2⁢Y6⁢Z6+24⁢X⁢Y6⁢Z6+16⁢X8⁢Y2⁢Z2+X6⁢Y4⁢Z2+4⁢X6⁢Y2⁢Z4+3⁢X4⁢Y6⁢Z2+64⁢X4⁢Y4⁢Z4+3⁢X4⁢Y2⁢Z6+X2⁢Y8⁢Z2+2⁢X2⁢Y4⁢Z6+12⁢X5⁢Y4⁢Z2+192⁢X5⁢Y3⁢Z3+36⁢X3⁢Y4⁢Z4+41⁢X6⁢Y2⁢Z2+24⁢X5⁢Y3⁢Z2+36⁢X5⁢Y2⁢Z3+10⁢X4⁢Y4⁢Z2+384⁢X4⁢Y3⁢Z3+8⁢X4⁢Y2⁢Z4+6⁢X2⁢Y4⁢Z4+6⁢X2⁢Y2⁢Z6+90⁢X5⁢Y2⁢Z2+18⁢X4⁢Y3⁢Z2+36⁢X4⁢Y2⁢Z3+6⁢X3⁢Y4⁢Z2+1056⁢X3⁢Y3⁢Z3+222⁢X4⁢Y2⁢Z2+6⁢X3⁢Y4⁢Z+12⁢X3⁢Y3⁢Z2+X2⁢Y4⁢Z2+558⁢X2⁢Y3⁢Z3+2⁢X2⁢Y2⁢Z4+60⁢X5⁢Y⁢Z+6⁢X3⁢Y3⁢Z+156⁢X3⁢Y2⁢Z2+126⁢X3⁢Y⁢Z3+12⁢X2⁢Y4⁢Z+18⁢X2⁢Y3⁢Z2+12⁢X2⁢Y2⁢Z3+222⁢X⁢Y3⁢Z3+96⁢X4⁢Y⁢Z+6⁢X3⁢Y2⁢Z+24⁢X3⁢Y⁢Z2+18⁢X2⁢Y3⁢Z+191⁢X2⁢Y2⁢Z2+18⁢X2⁢Y⁢Z3+6⁢X⁢Y4⁢Z+12⁢X⁢Y2⁢Z3+246⁢X3⁢Y⁢Z+24⁢X2⁢Y2⁢Z+48⁢X2⁢Y⁢Z2+36⁢X⁢Y2⁢Z2+36⁢X⁢Y⁢Z3+360⁢X2⁢Y⁢Z+6⁢X⁢Y2⁢Z+12⁢X⁢Y⁢Z2+138⁢X⁢Y⁢Z64X8Y12Z1244X6Y12Z1248X4Y12Z124X2Y12Z126X8Y8Z82X10Y8Z432X10Y6Z66X6Y8Z84X10Y6Z46X10Y4Z6X8Y8Z464X8Y6Z615X10Y4Z43X8Y6Z46X8Y4Z6X6Y8Z4176X6Y6Z627X8Y4Z4X6Y8Z22X6Y6Z4477X4Y6Z6264X3Y6Z610X10Y2Z2X6Y6Z226X6Y4Z421X6Y2Z62X4Y8Z23X4Y6Z42X4Y4Z6325X2Y6Z624XY6Z616X8Y2Z2X6Y4Z24X6Y2Z43X4Y6Z264X4Y4Z43X4Y2Z6X2Y8Z22X2Y4Z612X5Y4Z2192X5Y3Z336X3Y4Z441X6Y2Z224X5Y3Z236X5Y2Z310X4Y4Z2384X4Y3Z38X4Y2Z46X2Y4Z46X2Y2Z690X5Y2Z218X4Y3Z236X4Y2Z36X3Y4Z21056X3Y3Z3222X4Y2Z26X3Y4Z12X3Y3Z2X2Y4Z2558X2Y3Z32X2Y2Z460X5YZ6X3Y3Z156X3Y2Z2126X3YZ312X2Y4Z18X2Y3Z212X2Y2Z3222XY3Z396X4YZ6X3Y2Z24X3YZ218X2Y3Z191X2Y2Z218X2YZ36XY4Z12XY2Z3246X3YZ24X2Y2Z48X2YZ236XY2Z236XYZ3360X2YZ6XY2Z12XYZ2138XYZ64*X^8*Y^12*Z^12+44*X^6*Y^12*Z^12+48*X^4*Y^12*Z^12+4*X^2*Y^12*Z^12+6*X^8*Y^8*Z^8+2*X^10*Y^8*Z^4+32*X^10*Y^6*Z^6+6*X^6*Y^8*Z^8+4*X^10*Y^6*Z^4+6*X^10*Y^4*Z^6+X^8*Y^8*Z^4+64*X^8*Y^6*Z^6+15*X^10*Y^4*Z^4+3*X^8*Y^6*Z^4+6*X^8*Y^4*Z^6+X^6*Y^8*Z^4+176*X^6*Y^6*Z^6+27*X^8*Y^4*Z^4+X^6*Y^8*Z^2+2*X^6*Y^6*Z^4+477*X^4*Y^6*Z^6+264*X^3*Y^6*Z^6+10*X^10*Y^2*Z^2+X^6*Y^6*Z^2+26*X^6*Y^4*Z^4+21*X^6*Y^2*Z^6+2*X^4*Y^8*Z^2+3*X^4*Y^6*Z^4+2*X^4*Y^4*Z^6+325*X^2*Y^6*Z^6+24*X*Y^6*Z^6+16*X^8*Y^2*Z^2+X^6*Y^4*Z^2+4*X^6*Y^2*Z^4+3*X^4*Y^6*Z^2+64*X^4*Y^4*Z^4+3*X^4*Y^2*Z^6+X^2*Y^8*Z^2+2*X^2*Y^4*Z^6+12*X^5*Y^4*Z^2+192*X^5*Y^3*Z^3+36*X^3*Y^4*Z^4+41*X^6*Y^2*Z^2+24*X^5*Y^3*Z^2+36*X^5*Y^2*Z^3+10*X^4*Y^4*Z^2+384*X^4*Y^3*Z^3+8*X^4*Y^2*Z^4+6*X^2*Y^4*Z^4+6*X^2*Y^2*Z^6+90*X^5*Y^2*Z^2+18*X^4*Y^3*Z^2+36*X^4*Y^2*Z^3+6*X^3*Y^4*Z^2+1056*X^3*Y^3*Z^3+222*X^4*Y^2*Z^2+6*X^3*Y^4*Z+12*X^3*Y^3*Z^2+X^2*Y^4*Z^2+558*X^2*Y^3*Z^3+2*X^2*Y^2*Z^4+60*X^5*Y*Z+6*X^3*Y^3*Z+156*X^3*Y^2*Z^2+126*X^3*Y*Z^3+12*X^2*Y^4*Z+18*X^2*Y^3*Z^2+12*X^2*Y^2*Z^3+222*X*Y^3*Z^3+96*X^4*Y*Z+6*X^3*Y^2*Z+24*X^3*Y*Z^2+18*X^2*Y^3*Z+191*X^2*Y^2*Z^2+18*X^2*Y*Z^3+6*X*Y^4*Z+12*X*Y^2*Z^3+246*X^3*Y*Z+24*X^2*Y^2*Z+48*X^2*Y*Z^2+36*X*Y^2*Z^2+36*X*Y*Z^3+360*X^2*Y*Z+6*X*Y^2*Z+12*X*Y*Z^2+138*X*Y*Z

Algorithm definition

The algorithm ⟨18×20×32:6412⟩ is the (Kronecker) tensor product of ⟨2×2×2:7⟩ with ⟨9×10×16:916⟩.

Algorithm description

These encodings are given in compressed text format using the maple computer algebra system. In each cases, the last line could be understood as a description of the encoding with respect to classical matrix multiplication algorithm. As these outputs are structured, one can construct easily a parser to its favorite format using the maple documentation without this software.


Back to main table