Polynomial Factorization Preprocessing for Computational Complexity Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer algebra systems face challenges in efficiently factoring polynomials, particularly those with infinite series and non-monic polynomials, due to high computational complexity and limitations in handling multivariate polynomials and infinite series.

Innovation Solution

The proposed solution involves preprocessing input polynomials by classification and specialized pre-processing techniques such as factoring out greatest common factors, lowest power variables, and linear transformations to simplify polynomials before applying the Berlekamp-Zassenhaus algorithm, which reduces computational expense and adapts to different polynomial forms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the Berlekamp-Zassenhaus algorithm is applied directly to the input polynomial, then polynomial factorization can be performed, but the computational complexity increases exponentially with the number of modular factors

Engineering Contradiction:
Improvepolynomial factorization capabilityVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary actions by performing pre-processing steps before the main factorization algorithm. This includes calculating the inverse of the input polynomial, converting non-monic polynomials to monic form, and simplifying the polynomial structure. These preliminary transformations reduce the complexity of the polynomial before applying the Berlekamp-Zassenhaus algorithm, thereby reducing the exponential computational burden while maintaining factorization capability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes parameters of the polynomial by transforming it into a different form that is more suitable for factorization. Specifically, it converts non-monic polynomials to monic polynomials by multiplying by the inverse of the leading coefficient, and transforms the polynomial into a form where the constant term is 1. These parameter changes simplify the polynomial structure and reduce the number of modular factors, thereby reducing computational complexity.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If computer algebra systems attempt to factor polynomials representing infinite series, then comprehensive factorization can be achieved, but the system challenges and computational burden increase significantly

Engineering Contradiction:
Improvehandling of infinite seriesVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the factorization process into distinct phases: pre-processing phase (handling inverse calculation and monic conversion), classification phase (determining polynomial type and characteristics), and factorization phase (applying appropriate algorithms). This segmentation allows the system to handle different types of polynomials including those representing infinite series by applying appropriate techniques to each segment, reducing overall system complexity while maintaining versatility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary transformations as mediators between the input polynomial and the factorization algorithm. These intermediaries include the inverse polynomial calculation and the conversion to monic form with constant term 1. These intermediary steps transform complex polynomials including infinite series representations into a standardized form that is easier to factor, reducing system complexity while maintaining adaptability.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If non-monic polynomials are converted to monic polynomials, then the polynomial can be factored more efficiently, but additional processing steps are required

Engineering Contradiction:
Improvefactorization efficiencyVSAvoidpre-processing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs the conversion to monic form as a preliminary action before the main factorization process. By calculating the inverse of the leading coefficient and multiplying the polynomial accordingly, the system prepares the polynomial in advance for more efficient factorization. This preliminary conversion, while requiring additional processing time, significantly improves the efficiency of the subsequent factorization algorithm by reducing the number of modular factors and simplifying the polynomial structure.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8682950B2Computer-implemented symbolic polynomial factorization
Publication Date: 2014.03.25 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8682950B2 patent drawing
  • US8682950B2 patent drawing
  • US8682950B2 patent drawing

AI summary

An input polynomial, in symbolic form, is received, classified, pre-processed, and factored. The input polynomial is classified as a constant, a univariate polynomial, or a multivariate polynomial. Various pre-processing is performed depending on the classification. After the input polynomial is pre-processed, the remaining polynomial is factored using a polynomial factoring algorithm. By pre-processing the input polynomial, the complexity of the polynomial to be factored is reduced, which reduces the computational expense of the polynomial factoring algorithm.