Alternative Basis Matrix Multiplication for Lower Arithmetic Complexity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current matrix multiplication algorithms, despite advancements like Strassen's and Winograd's algorithms, still face inefficiencies in computational complexity and communication costs, particularly in large-scale matrix operations.

Innovation Solution

The method involves determining an invertible basis transformation to encode and decode matrices, reducing the number of operations required for matrix multiplication by applying alternative basis transformations, which can be computed using heuristics or sparsification techniques, thereby optimizing the arithmetic and input-output complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If Strassen-Winograd's algorithm is used for matrix multiplication, then the leading coefficient is optimal with 7 multiplications and 15 additions, but the hidden constants and communication costs remain high for large-scale operations

Engineering Contradiction:
Improvecomputational speedVSAvoidcommunication cost
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies basis transformations to change the parameter representation of matrices, transforming them into alternative bases that reduce the number of operations required. This parameter transformation approach modifies how matrix elements are expressed and combined, leading to reduced arithmetic complexity and communication requirements while maintaining computational accuracy.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent divides the matrix multiplication process into distinct transformation phases: encoding input matrices into alternative bases, performing simplified multiplications in the transformed domain, and decoding results back to the original basis. This segmentation allows each phase to be optimized independently, reducing overall communication costs and computational complexity.

Inventive Principle:
Principle #1Segmentation

2Productivity

If basis transformation is applied to reduce operations, then arithmetic complexity decreases by 16.66%, but additional transformation steps are required

Engineering Contradiction:
Improvearithmetic complexityVSAvoidalgorithm complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs basis transformation (encoding) as a preliminary action before the main multiplication operation. By pre-transforming input matrices into alternative bases that are more favorable for computation, the subsequent multiplication requires fewer operations. This preliminary preparation step simplifies the core computational task despite adding an initial transformation phase.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The alternative basis acts as an intermediary representation between the original matrix inputs and the final results. Matrices are transformed into this intermediate basis where computations are more efficient, then transformed back. This intermediary representation mediates the computation process, enabling reduced arithmetic complexity while maintaining correctness through invertible transformations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10387534B2Fast matrix multiplication and linear algebra by alternative basis
Publication Date: 2019.08.20 YISSUM RESEARCH DEVELOPMENT COMPANY OF THE HEBREW UNIVERSITY OF JERUSALEM LTD
  • US10387534B2 patent drawing
  • US10387534B2 patent drawing
  • US10387534B2 patent drawing

AI summary

A computerized method comprising operating one or more hardware processor for receiving a first matrix and a second matrix. The hardware processor(s) are operated for determining a basis transformation, wherein the basis transformation is invertible to an inverted basis transformation. The hardware processor(s) are operated for computing an alternative basis first matrix by multiplying the first matrix by the basis transformation. The hardware processor(s) are operated for computing an alternative basis second matrix by multiplying the second matrix by the basis transformation. The hardware processor(s) are operated for performing a matrix multiplication of the alternative basis first matrix and the alternative basis second matrix, thereby producing an alternative basis multiplied matrix. The hardware processor(s) are operated for computing a multiplied matrix by multiplying the alternative basis multiplied matrix by the inverted basis transformation.