Popis: |
There have been several algorithms designed to optimise matrix multiplication. From schoolbook method with complexity $O(n^3)$ to advanced tensor-based tools with time complexity $O(n^{2.3728639})$ (lowest possible bound achieved), a lot of work has been done to reduce the steps used in the recursive version. Some group-theoretic and computer algebraic estimations also conjecture the existence of an $O(n^2)$ algorithm. This article discusses a quadratic-time number-theoretic approach that converts large vectors in the operands to a single large entity and combines them to make the dot-product. For two $n \times n$ matrices, this dot-product is iteratively used for each such vector. Preprocessing and computation makes it a quadratic time algorithm with a considerable constant of proportionality. Special strategies for integers, floating point numbers and complex numbers are also discussed, with a theoretical estimation of time and space complexity. |