ClearAll[TropicalPlus,TropicalTimes,TropicalMatrixPower]​​​​TropicalPlus[a_,b_]:=Min[a,b]​​TropicalTimes[a_,b_]:=a+b​​​​TropicalMatrixTimes[mat1_,mat2_]:=Module[{n,m,p},{n,m}=Dimensions[mat1];​​{m,p}=Dimensions[mat2];​​Table[Min@@Table[TropicalPlus[mat1[[i,k]],mat2[[k,j]]],{k,m}],{i,n},{j,p}]]​​​​TropicalMatrixPower[base_,exponent_]:=Module[{result=IdentityMatrix[Length[base]],i},Do[result=TropicalMatrixTimes[result,base],{i,exponent}];​​result]​​​​a={{2,3},{5,7}};​​b={{4,2},{1,2}};​​​​result=TropicalMatrixPower[a,b];​​​​MatrixForm[result]​​
Out[]//MatrixForm=

0
0
0
0
