CP decomposition, border rank, and missing minimizers
Exhibit a real rank-three tensor approached by rank-two tensors and connect diverging components with nonattainment.
On this page
The question for today
What you’ll understand
- Distinguish CP rank from border rank over a specified field.
- Expand an explicit degenerating two-term sequence and compute its error.
- Explain why a best rank-at-most-R approximation can fail to exist.
For matrices, a fixed upper rank bound gives a closed set and a best approximation exists in Frobenius norm. Higher-order CP rank can behave differently. Two increasingly large separable components can cancel, leaving a finite limit that needs three components. This produces small residuals without a limiting rank-two representation. We will work over the real numbers, explicitly compute one such sequence, and use its geometry to distinguish an optimizer’s numerical difficulties from a genuine absence of a best approximation.
Rank counts exact summands; border rank counts limits
A CP decomposition writes a tensor as a sum of R pure products. Its CP rank is the smallest such R over the chosen field. Border rank is the smallest R for which the tensor lies in the ordinary Euclidean closure of tensors with CP rank at most R. Thus border rank is at most CP rank. Over complex arrays use the real topology of their real and imaginary coordinates; real and complex ranks can differ, so the field must always be recorded.
Changing between finite-dimensional norms does not change which sequences converge, but our quantitative errors use Frobenius norm. A fixed rank-at-most-R CP set need not be closed for order three or higher. This is different from saying that one parameterization is redundant: nonclosedness concerns represented tensors themselves, after all equivalent factor scalings have been identified.
Differentiate a pure product to produce a rank jump
Let e₁ and e₂ be the standard basis of real two-space. The tensor W with one e₂ in each of three possible positions is visibly a sum of three pure tensors. Its mode ranks are all two, but those lower bounds alone do not prove rank three. For that stronger conclusion examine the third-index slices S = [[0, 1], [1, 0]] and D = [[1, 0], [0, 0]].
If a two-term CP representation existed, the first two factor matrices would be invertible because the corresponding mode ranks are two. Since S is invertible, its two slice coefficients would both be nonzero. Consequently DS⁻¹ would be similar to a diagonal matrix of coefficient ratios. Yet DS⁻¹ = [[0, 1], [0, 0]] is nonzero nilpotent and cannot be diagonalized. This contradiction proves CP rank three over R, and the same argument works over C.
A vanishing error can coexist with diverging factors
Expansion gives Wε − W equal to ε times the three coordinate terms having two e₂ factors, plus ε² times e₂ ⊗ e₂ ⊗ e₂. These four coordinate tensors are orthonormal, so the squared Frobenius error is 3ε² + ε⁴. Each displayed CP component has magnitude proportional to 1/|ε|, illustrating cancellation rather than a bounded convergent factorization. Small residual alone cannot diagnose stable components. An unfolding of W has rank two, while the matrix rank-at-most-one set is closed. Therefore W cannot be a limit of pure tensors, closing the lower bound: its border rank is exactly two.
Because W has rank three but is a limit of rank-at-most-two tensors, its best rank-at-most-two approximation has infimum error zero and no minimizer. This exact example does not assert that every CP fitting problem lacks a solution. Rank-one approximation is better behaved, and constraints or penalties can restore compactness in particular models. Such changes alter the feasible problem; they should not be mistaken for a general higher-order Eckart–Young theorem.
Work it through
Compute an explicit degenerating approximation
Use the displayed Wε sequence with ε = 1/10. Find the coordinate error, its norm, and the meaning of the vanishing-error limit.
The three terms containing exactly two e₂ factors each have coefficient 1/10 in the error, while the all-e₂ term has coefficient 1/100. All other error entries vanish.
Orthogonality of the coordinate terms gives squared error 3/100 + 1/10000 = 301/10000. Thus the error norm is √301/100, approximately 0.173494.
Every nonzero-ε approximation has at most two CP terms. Letting ε shrink drives this error to zero, but the proven rank-three limit W cannot itself belong to the rank-at-most-two feasible set.
The approximants converge in Frobenius norm while their large cancelling CP terms have no finite rank-two limit representation.
The living notebook
Explore the model
Interactive lab · function
Read the leading and higher-order error terms
For each comparison Pause and Reset, then set both controls. Choose coefficient a = 1 and position x = 0.5; the readout y = 0.25 gives squared tensor error 3y + y² = 0.8125. In a fresh run use a = 1 and x = 0.1; y = 0.01 gives 0.0301. The lab evaluates x², from which you compute the two error contributions; it does not fit tensor factors or display their cancellation.
- y at chosen x
- 0.608
- Tangent slope · 2ax
- 1.35
- Signed area · ax³/3
- 0.182
This lab uses only y = ax². Playback traces the curve within the fixed integration interval from 0 to x; it does not estimate numerical error or change the chosen point. Parameter changes pause playback and recompute the model at the current elapsed time. Reset restores both parameters and returns time to zero. Playback starts paused. Adjust either parameter, then choose Play or Step.
Look forOrthogonal coordinate errors add in squares, so a simple scalar readout can verify this explicit border-rank sequence.
Pause & reason
Check your understanding
Your turn
Try it yourself
For ε = 1/2, compute ||Wε − W||F exactly. Identify the two scalar CP weights in the displayed difference quotient and explain why decreasing ε can harm numerical conditioning.
Take a moment to make a prediction or work it out on paper. Open a hint when you need one.
Give me a hint
Use the four orthogonal error coordinates and keep the scalar factor 1/ε outside each pure product.
Compare with the solution
The squared error is 3(1/2)² + (1/2)⁴ = 3/4 + 1/16 = 13/16, so the norm is √13/4, approximately 0.901388. The displayed two CP weights are 2 and −2, multiplying (e₁ + e₂/2) in all three factors and e₁ in all three factors respectively. As ε decreases their absolute weights grow like 1/|ε| while the represented tensor stays bounded. Subtracting large nearby terms can magnify relative errors in factors or arithmetic, so improving the residual need not improve the reliability of the recovered components.
Keep the idea
Take it with you
- CP rank describes an exact representation, while border rank allows limits.
- Mode-rank bounds do not detect every CP-rank obstruction.
- Nonclosed feasible tensor sets can cause genuine best-approximation nonattainment and diverging components.
Read further
Original sources and deeper explanations to follow at your own pace.
Optional progress, saved in this browser when available. Revisit any lesson at any time.
Lesson not marked complete.