QR decomposition factors a matrix A into A = QR, where Q is an orthogonal matrix (its columns are orthonormal vectors, so QᵀQ = I) and R is an upper triangular matrix. This factorization is typically computed using Householder reflections, Givens rotations, or the Gram-Schmidt process, with the modified Gram-Schmidt variant offering superior numerical stability for ill-conditioned matrices.
Glossary
QR Decomposition

What is QR Decomposition?
QR decomposition is a numerical linear algebra technique that factors a matrix into the product of an orthogonal matrix Q and an upper triangular matrix R, providing a numerically stable method for solving least-squares problems central to adaptive filter coefficient estimation.
In online DPD training, QR decomposition solves the normal equations for coefficient estimation without explicitly computing the inverse of the correlation matrix, which can be ill-conditioned when basis functions are highly correlated. By solving Rx = Qᵀb through back-substitution, QR decomposition provides a numerically robust alternative to direct matrix inversion, making it suitable for fixed-point FPGA implementations where numerical stability is paramount.
Key Properties of QR Decomposition
QR decomposition factorizes a matrix A into an orthogonal matrix Q and an upper triangular matrix R, providing a numerically stable foundation for solving least-squares problems in adaptive DPD coefficient estimation.
Orthogonal Matrix Q
The matrix Q is orthogonal, meaning its columns are orthonormal vectors. This property ensures that Q<sup>T</sup>Q = I, preserving the Euclidean norm of vectors during transformation.
- Key benefit: Multiplying by Q<sup>T</sup> does not amplify noise or rounding errors
- Condition number: Orthogonal matrices have a perfect condition number of 1
- Stability: Avoids the numerical instability inherent in directly inverting the normal equations
Upper Triangular Matrix R
The matrix R is upper triangular, with all entries below the main diagonal equal to zero. This structure enables efficient solution of linear systems through back substitution.
- Back substitution: Solve Rx = b by computing the last variable first, then substituting upward
- Computational cost: O(n²) for back substitution versus O(n³) for general matrix inversion
- Hardware efficiency: Triangular structure maps well to systolic array implementations on FPGAs
Solving Least-Squares Without Normal Equations
QR decomposition solves the least-squares problem min ||Ax - b||² by transforming it into min ||Rx - Q<sup>T</sup>b||², avoiding the explicit formation of the normal equations A<sup>T</sup>A.
- Normal equations: Forming A<sup>T</sup>A squares the condition number, amplifying ill-conditioning
- QR approach: Works directly on A, preserving numerical accuracy
- DPD relevance: Critical when the correlation matrix of basis functions becomes ill-conditioned due to highly correlated polynomial terms
Condition Number Preservation
The condition number of R equals the condition number of the original matrix A, unlike the normal equations approach where the condition number is squared. This makes QR decomposition the preferred method for ill-conditioned problems.
- Condition number κ(A): Measures sensitivity of the solution to small perturbations in the data
- QR preserves κ: κ(R) = κ(A), maintaining the problem's intrinsic difficulty
- Practical impact: Enables stable coefficient estimation even when basis functions are nearly linearly dependent
Gram-Schmidt vs. Householder Methods
Multiple algorithms exist for computing the QR decomposition, each with distinct numerical properties and computational requirements.
- Classical Gram-Schmidt: Intuitive but numerically unstable; orthogonality degrades with ill-conditioned matrices
- Modified Gram-Schmidt: Reorders operations to improve stability, widely used in adaptive filtering
- Householder reflections: Most numerically stable method, using orthogonal reflections to zero out sub-diagonal elements
- Givens rotations: Efficient for sparse matrices or when only selected elements need zeroing, ideal for streaming implementations
Recursive QR Updating
For online DPD training, the QR decomposition can be updated recursively as new data arrives, avoiding full recomputation. This enables real-time coefficient adaptation.
- QR-RLS algorithm: Maintains the Cholesky factor R of the inverse correlation matrix, updating it with each new sample
- Sliding window: Old data can be removed using hyperbolic rotations, implementing a finite memory
- Forgetting factor integration: Exponential weighting is applied directly to R through scaling operations
- FPGA implementation: Systolic array architectures exploit the triangular structure for pipelined execution
QR Decomposition vs. Direct Matrix Inversion
A comparison of QR decomposition and direct matrix inversion for solving the normal equations in least-squares coefficient estimation, highlighting numerical stability, computational cost, and hardware suitability.
| Feature | QR Decomposition | Direct Matrix Inversion | Cholesky Decomposition |
|---|---|---|---|
Numerical Stability | Excellent | Poor | Moderate |
Condition Number Sensitivity | Linear (κ) | Quadratic (κ²) | Quadratic (κ²) |
Handles Ill-Conditioning | |||
Floating-Point Operations (n×m matrix) | 2nm² − 2m³/3 | nm² + m³/3 | nm² + m³/6 |
FPGA Implementation Complexity | High | Moderate | Low |
Square Root Operations Required | |||
Suitable for Fixed-Point Hardware | |||
Typical ACLR Degradation from Numerical Error | < 0.1 dB | 2–5 dB | 0.5–2 dB |
Frequently Asked Questions
Clear, technically precise answers to the most common questions about using QR decomposition for numerically stable coefficient estimation in adaptive digital predistortion systems.
QR decomposition is a matrix factorization technique that decomposes a matrix A into the product of an orthogonal matrix Q and an upper triangular matrix R (A = QR). The columns of Q form an orthonormal basis for the column space of A, meaning QᵀQ = I. The matrix R contains the coefficients that express the original columns of A as linear combinations of the Q basis vectors. The decomposition is typically computed using Gram-Schmidt orthogonalization, Householder reflections, or Givens rotations. In the context of DPD coefficient estimation, QR decomposition solves the least-squares problem min ||Ax - b||² by transforming it into the triangular system Rx = Qᵀb, which can be solved efficiently via back-substitution without explicitly forming the normal equations AᵀA.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Understanding QR decomposition requires familiarity with the numerical linear algebra and adaptive filtering concepts that motivate its use in stable coefficient estimation.
Ill-Conditioning
A numerical state where the correlation matrix has a high condition number, making the solution hypersensitive to small perturbations in the input data. In DPD coefficient estimation, ill-conditioning arises when basis functions are highly correlated, causing standard normal equations to amplify noise and produce wildly inaccurate predistorter coefficients. QR decomposition directly addresses this by avoiding the explicit formation of the normal equations, operating on the original data matrix instead.
Numerical Stability
The robustness of an algorithm to rounding errors and finite-precision effects. QR decomposition using Householder reflections or Givens rotations offers superior numerical stability compared to direct matrix inversion or Cholesky decomposition. This is critical for FPGA-based DPD implementations where fixed-point arithmetic with limited word lengths can cause unstable algorithms to diverge. QR-based solvers maintain accuracy even with ill-conditioned matrices.
Recursive Least Squares (RLS)
An adaptive filtering algorithm that recursively minimizes a weighted linear least squares cost function. The core computational step in RLS involves updating the inverse correlation matrix. Implementing RLS via QR decomposition—known as QR-RLS—replaces the explicit matrix inversion with a numerically stable orthogonal triangularization process, enabling robust real-time coefficient tracking for closed-loop DPD systems.
Correlation Matrix
A matrix formed by the autocorrelation of basis function outputs in the DPD model. When this matrix is inverted during block-based coefficient estimation, any ill-conditioning directly degrades the solution. QR decomposition factorizes the original data matrix A into Q and R, allowing the least-squares solution to be computed via back-substitution on the triangular system Rx = Qᵀb, bypassing the numerically fragile step of forming and inverting AᵀA.
Forgetting Factor
A weighting parameter λ (0 < λ ≤ 1) that exponentially discounts older data in recursive algorithms. In QR-RLS, the forgetting factor is incorporated by applying exponential weighting to the triangular factor R during the update step. This enables the DPD system to track time-varying PA characteristics caused by thermal memory effects, bias shifts, and aging, ensuring the predistorter adapts to non-stationary operating conditions.
Regularization Parameter
A scalar δ added to the diagonal of the correlation matrix to improve numerical conditioning and prevent overfitting. In QR-based estimation, regularization is applied by augmenting the data matrix with a scaled identity matrix before decomposition. This technique is essential during initial DPD training when the correlation matrix may be rank-deficient due to insufficient signal excitation, ensuring a stable initial coefficient vector.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us