Alphabeta Math
Pipeline-generated
How statement and proof provenance work

The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.

  • Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
  • AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
  • AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.

These labels describe origin, not correctness: citations and verification chips remain separate evidence.

✓ 11 results · all verified · 10 also independently AI-judged
Every result on this page is machine-checked by a proof checker and read in full and owner-audited; the judge is an additional, independent cross-model AI review of the proofs. The 1 not AI-judged were verified by owner audit (typically over a confirmed judge false positive), not failures.

Spline evaluation and interpolation algorithms

1 · Prerequisites

2 · Summary

This page evaluates a B-spline curve from its local coefficient list, proves the exact de Boor recurrence, its O(p2) arithmetic count, and a range-qualified forward-error bound. It also gives a single new-knot insertion, proves the associated basis refinement identity and establishes curve preservation. Natural cubic interpolation reuses the published tridiagonal system and exact solution. A local sparse rounded Cholesky and substitution specialization computes an actual rounded residual certificate, includes the matrix and right-hand-side assembly discrepancies, and transfers them to a conditional forward bound for the associated piecewise cubic reconstruction. That reconstruction need not be C1 at interior knots, and floating-point error from evaluating its pieces is separate. The clamped variant prescribes endpoint slopes and has a proved O(H4) maximum-norm error bound for exact boundary derivatives on arbitrary partitions.

3 · Logical flowchart

4 · Definitions, theorems and proofs

AlgorithmAlgorithm: Literature-sourcedProof: Not applicablejudge pass (gpt-6-luna)Open item page →

de Boor coefficient evaluation on a specified knot span

Definition

Use zero-based indices for this procedure: write the clamped knot vector from B-spline spaces and knot conventions as t0≤⋯≤tn+p, where ti=ξi+1, with n≥p+1, and write the real degree-p coefficients as c0,…,cn−1. The input includes p∈N0, a nonempty span index k with p≤k≤n−1 and tk<tk+1, a real query, and the p+1 active coefficients ck−p,…,ck. The query is either x∈[tk,tk+1) or, for the left limit at the right endpoint b, x=b with the last nonempty span supplied. At an interior knot, the half-open convention selects the span on its right. In exact mode the knots, query, and coefficients are real numbers. In floating-point mode the knots, query, and active coefficients are finite stored real numbers in the selected format; conversion into that format is outside this procedure.

The arithmetic mode is either exact real arithmetic or the operationwise floating-point model of Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add. The output is success(value), invalid-input, or, in floating-point mode, range-failure(operation, r, j). The span search is supplied by the caller and is not part of the evaluation loop. Invalid indices, coefficient counts, span or query conditions, or floating-point input formats return invalid-input.

  1. If the indices, coefficient count, span, or query do not satisfy the input conditions, return invalid-input.
  2. If p=0, return ck by copy.
  3. Initialize dj(0)=ck−p+j for 0≤j≤p.
  4. For r=1,…,p, and then j=p,p−1,…,r, put L=k−p+j and U=k+1+j−r. In exact mode set α=(x−tL)/(tU−tL) and dj(r)=(1−α)dj−1(r−1)+αdj(r−1). In floating-point mode first compute v=fl⁡(x−tL). On failure return range-failure for the numerator subtraction. If v=0, copy dj−1(r−1) to dj(r) and skip the denominator subtraction, division, complement subtraction, products, and addition. Otherwise compute w=fl⁡(tU−tL) and then α^=fl⁡(v/w); on the first failure return its operation and indices. Next compute β^=fl⁡(1−α^), followed by a=fl⁡(β^dj−1(r−1)), b=fl⁡(α^dj(r−1)), and dj(r)=fl⁡(a+b), in that order, returning the first range-failure. Keep the old dj(r−1) until the update is complete.
  5. Return success(d_p^{(p)}).

For every loop entry, L≤k<U, so tL≤tk<tk+1≤tU and the denominator is positive. The exact weight therefore lies in [0,1]. When a span endpoint is requested as a one-sided value, the same recurrence is evaluated at that endpoint with the specified half-open or left-limit convention.

AlgorithmAlgorithm: Literature-sourcedProof: Not applicablejudge pass (gpt-6-luna)Open item page →

Single new-knot insertion for a B-spline curve

Definition

Use the zero-based reindexing ti=ξi+1 of the clamped knot vector in B-spline spaces and knot conventions, so t0≤⋯≤tn+p with n≥p+1. Let p∈N0, d∈N, and let the controls be P0,…,Pn−1∈Rd. Let k be a nonempty span index with tk<u<tk+1, where u is not already a knot. Insert u between tk and tk+1 to obtain t′. The output controls Q0,…,Qn are defined by

Qi={Pi,0≤i≤k−p,αiPi+(1−αi)Pi−1,k−p+1≤i≤k,Pi−1,k+1≤i≤n,αi=u−titi+p−ti.

The middle range is empty when p=0. The curve uses the same degree and the B-spline basis for the new knot vector. Each denominator in the middle range is positive and each αi lies in [0,1], so the update is an exact affine blend. This procedure inserts one knot that is new to the vector; repeated insertion at an existing knot is not part of this algorithm's input contract.

DefinitionDefinition: Literature-sourcedProof: Not applicablejudge pass (gpt-6-luna)Open item page →

Clamped cubic spline interpolant

Definition

Let a=x0<x1<⋯<xm=b, with m≥1, let y0,…,ym∈R, and prescribe endpoint slopes σa,σb∈R. A clamped cubic spline interpolant for these data is a function s∈C2([a,b]) whose restriction to every [xi,xi+1] is a polynomial of degree at most three, which satisfies s(xi)=yi for every i, and which satisfies s′(a)=σa and s′(b)=σb.

Here C2 means that the function and its first two derivatives are continuous on [a,b], with one-sided derivatives at the endpoints. This uses the piecewise-cubic convention in Natural cubic splines and replaces its natural endpoint-curvature conditions by prescribed endpoint slopes. It does not alter the natural cubic interpolant or its system.

LemmaStatement: Literature-sourcedProof: AI-adaptedprecheck passOpen item page →

Nodal second-derivative perturbations bound the natural spline error

Statement

Let x1<⋯<xr be natural interpolation knots, r≥2, and put hi=xi+1−xi and H=max⁡ihi. Let s be the natural cubic interpolant with data yi and nodal second derivatives Mi, with M1=Mr=0. Let M^1=M^r=0 and let s^ be the piecewise cubic formed from the same values yi and the second derivatives M^i using the natural cubic piece formula of Natural cubic interpolation at distinct knots. On the knot hull [x1,xr], if E=max⁡1≤i≤r∣M^i−Mi∣, then ∥s^−s∥L∞([x1,xr])≤H28E.

Facts & Assumptions

Given: Strictly increasing knots x1<⋯<xr, data yi, the natural interpolant s, and arbitrary replacement nodal second derivatives M^i with the same zero endpoint values.

[F1]

Natural cubic interpolation at distinct knots: on [xi,xi+1] the spline is the cubic with endpoint values yi,yi+1 and endpoint second derivatives Mi,Mi+1.

[A1]

M^1=M1=0 and M^r=Mr=0.

Proof

1.1givenF1A1algebra

Fix i and write h=hi, t=(x−xi)/h∈[0,1], and Δj=M^j−Mj. The cubic difference q=s^−s vanishes at both endpoints. Its second derivative is affine with endpoint values Δi,Δi+1, so q′′(x)=(1−t)Δi+tΔi+1. Integrating this polynomial twice and imposing the zero endpoint values gives s^(x)−s(x)=h26(Δi((1−t)3−(1−t))+Δi+1(t3−t)).

2.1givenstep 1.1algebra∎

On 0≤t≤1, (1−t)−(1−t)3=t(1−t)(2−t)≥0 and t−t3=t(1−t)(1+t)≥0. Their sum is 3t(1−t)≤3/4. Therefore the absolute value in step 1.1 is at most h2E(3/4)/6=h2E/8≤H2E/8. Taking the maximum over the finitely many knot intervals proves the claim on [x1,xr].

AlgorithmAlgorithm: AI-adaptedProof: Not applicablejudge pass (gpt-6-luna)Open item page →

Natural-cubic tridiagonal Cholesky solve with a residual certificate

Definition

Use one binary floating-point format from Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add with round-to-nearest, ties-to-even, a known rational unit roundoff 0<u≤1/4, and the model's normal-or-zero success rule. Inputs are r≥2 finite stored real knots x1<⋯<xr and finite stored real values y1,…,yr. These stored numbers are the exact interpolation data; no unrecorded perturbation of the data is included. Write hi=xi+1−xi for their exact rational differences. If a constant 2 or 6 needed by the selected branch is not representable as a finite normal number, return input-format-failure. Arithmetic statuses below report the first failing operation in the specified order. This algorithm makes no claim that floating-point success is automatic.

If r=2, return success with endpoint second derivatives M^1=M^2=0 and error certificate B=0. The corresponding piece is the exact straight line. For r≥3, put n=r−2 and return certificate-parameter-failure unless (n−1)u<1.

For r≥3, assemble stored widths and secant slopes in increasing i=1,…,r−1: compute h^i=fl⁡(xi+1−xi), ai=fl⁡(yi+1−yi), and qi=fl⁡(ai/h^i), in that order. At the first failed operation return assembly-range-failure(i,operation). Successful width subtraction gives h^i>0. In increasing k=1,…,n, for the row corresponding to knot xk+1 compute

sk=fl⁡(h^k+h^k+1),dk=fl⁡(2sk),tk=fl⁡(qk+1−qk),fk=fl⁡(6tk)

in that order. Copy ck=h^k+1 for k<n. On failure return assembly-range-failure(k,operation). Let T∈Rn×n have diagonal dk, adjacent off-diagonal entries ck, and zero entries elsewhere; represent it by these three diagonals, not a dense array. Let the stored right-hand side be f=(f1,…,fn)T.

Factor T with a real lower bidiagonal factor, stored as diagonal ℓ1,…,ℓn and subdiagonal e1,…,en−1. For k=1,…,n in order, set p1=d1 by exact copy; for k>1 compute ζk=fl⁡(ek−1ek−1) and pk=fl⁡(dk−ζk). If either operation fails, return factor-range-failure(k,operation). If the resulting pk fails the published positive-normal pivot test of Failure-aware rounded Cholesky factorization, return invalid-pivot(k,p_k). Otherwise compute ℓk=fl⁡(pk); on failure or a nonpositive or nonnormal result return factor-range-failure(k,operation). For k<n compute ek=fl⁡(ck/ℓk) and return the same indexed factor status on failure.

Solve Lz=f by forward substitution in increasing index order: set z1=fl⁡(f1/ℓ1); for k>1, compute a=fl⁡(ek−1zk−1), b=fl⁡(fk−a), and zk=fl⁡(b/ℓk). Solve LTm^=z in decreasing order: set m^n=fl⁡(zn/ℓn); for k<n, compute a=fl⁡(ekm^k+1), b=fl⁡(zk−a), and m^k=fl⁡(b/ℓk). At the first failed operation return solve-range-failure(direction,k,operation). These are separate multiply, subtract, and divide operations; no fused multiply-add is used. Set M^1=M^r=0 and copy the interior vector M^k+1=m^k.

Compute the rounded residual in increasing row order. Within row k, form the products Tkjm^j for existing columns j in increasing column order, and add them sequentially from an exact zero accumulator to obtain v^k. Then compute w^k=fl⁡(v^k−fk). Return the first residual-range-failure(k,j,operation) if any operation fails. Structural zero entries are omitted; all included products, additions, and the final subtraction use the operationwise model.

The certificate calculations that follow are exact rational arithmetic on the finite binary values and the rational u; they are not rounded floating-point calculations. Define

F1=∑k=1n∣dk∣+2∑k=1n−1∣ck∣,X1=∑k=1n∣m^k∣,Y1=∑k=1n∣fk∣,V1=∑k=1n∣v^k∣,W1=∑k=1n∣w^k∣

and

gn=1+6u1−(n−1)u−1,C=W1+gnF1X1+u(V1+Y1).

Form the exact natural-cubic matrix A and right-hand side b for the original stored data as in Natural cubic interpolation at distinct knots: Akk=2(hk+hk+1), Ak,k+1=Ak+1,k=hk+1, and bk=6((yk+2−yk+1)/hk+1−(yk+1−yk)/hk), with only existing interior entries included; represent A by its three diagonals and compute the following row quantities as a stream, without allocating dense matrices. Compute

α=max⁡k∑j∣Akj−Tkj∣,β=max⁡k∣bk−fk∣,Q=max⁡k∣m^k∣,δ=min⁡1≤k≤n(hk+hk+1),H=max⁡1≤i<rhi,

and

B=H28δ(C+αQ+β).

All denominators are positive: hi>0, δ>0, and 1−(n−1)u>0. Return success(\widehat M,C,\alpha,\beta,B). If a resource-limited implementation cannot complete the exact rational certificate, it may return certificate-resource-failure, which carries no certified B.

For r≥3, associate to the returned vector M^ the piecewise cubic reconstruction on each [xi,xi+1] given by

s^i(x)=M^i(xi+1−x)3+M^i+1(x−xi)36hi+(yi−M^ihi26)xi+1−xhi+(yi+1−M^i+1hi26)x−xihi.

This reconstruction interpolates the stored data and need not be C1 at an interior knot; it is a piecewise cubic reconstruction, not necessarily a natural spline. The certificate concerns exact evaluation of these pieces. Any floating-point evaluation of them needs a separate piece-evaluation error allowance.

Remarks

This local procedure specializes the published rounded Cholesky and substitution methods to the natural-cubic tridiagonal system; it does not redefine natural interpolation. Its termination and linear arithmetic and storage bounds are proved in A successful natural-cubic tridiagonal Cholesky solve has a certified residual ↗.

LemmaStatement: Literature-sourcedProof: AI-adaptedprecheck passjudge pass (gpt-6-luna)Open item page →

A single new knot refines the B-spline basis

Statement

Let t0≤⋯≤tn+p be a clamped degree-p knot vector as in B-spline spaces and knot conventions, with endpoints a=t0 and b=tn+p. For a zero-based knot vector v, write ξ(v)j=vj−1 and Bi,q,v=Bi+1,q,ξ(v). Let k satisfy tk<tk+1, let tk<u<tk+1, and obtain t′ by inserting u between tk and tk+1. For 0≤q≤p, define λi(q)={1,i≤k−q,u−titi+q−ti,k−q+1≤i≤k,0,i≥k+1. Then for every degree q∈{0,…,p}, every old basis index 0≤i≤n+p−q−1, and every x∈[a,b], Bi,q,t(x)=λi(q)Bi,q,t′(x)+(1−λi+1(q))Bi+1,q,t′(x).

Facts & Assumptions

Given: A clamped degree-p knot vector, a nonempty span [tk,tk+1), and a new knot u with tk<u<tk+1.

[F1]

B-spline spaces and knot conventions defines degree-zero B-splines as half-open interval indicators, higher degrees by the Cox–de Boor recurrence, and zero-denominator terms as zero; at b each basis function is assigned its left limit.

[F2]

Single new-knot insertion for a B-spline curve inserts u between tk and tk+1 in the zero-based knot vector, producing t′.

[A1]

The knot vector is clamped, tk<tk+1, and u is not already a knot.

Proof

1.1A1F1F2algebra

Since the knot vector is clamped, a nonempty span index satisfies p≤k≤n−1. The insertion map is tj′=tj for j≤k, tk+1′=u, and tj′=tj−1 for j≥k+2. For q=0, λi(0)=1 when i≤k and 0 when i≥k+1. Every old half-open degree-zero cell other than [tk,tk+1) is unchanged or shifts by one index; the affected cell splits as [tk,u)∪[u,tk+1). Thus the indicator identity holds for all degree-zero indices, including zero-length repeated-knot cells; at u the right cell supplies the value. The value at b follows by the stipulated left limit.

2.1A1F1F2step 1.1induction

Fix 1≤q≤p and assume the identity holds in degree q−1. For x∈[a,b), write Ai=(x−ti)/(ti+q−ti) and Di=(ti+q+1−x)/(ti+q+1−ti+1), with any zero-denominator term defined as zero as in [F1]; define Ai′,Di′ using t′. Expanding the old recurrence and applying the degree-(q−1) identity gives the coefficient triple (Aiλi(q−1), Ai(1−λi+1(q−1))+Diλi+1(q−1), Di(1−λi+2(q−1))) on Bi,q−1′,Bi+1,q−1′,Bi+2,q−1′. Expanding the proposed refined expression gives (λi(q)Ai′, λi(q)Di′+(1−λi+1(q))Ai+1′, (1−λi+1(q))Di+1′). It remains to prove these three coefficient equalities for k−q≤i≤k.

3.1A1F1step 2.1algebra

For the first coefficient, at i=k−q both λi(q−1) and λi(q) are 1, and the insertion map gives ti′=ti and ti+q′=ti+q=tk. Hence Ai′=Ai; if this common denominator is zero, both terms are zero by [F1]. For k−q+1≤i≤k, put a=ti, b=ti+q and v=ti+q′. Then a≤tk<u<b. At the lower index i=k−q+1, v=u and λi(q−1)=1=(u−a)/(v−a). At higher indices in this range, the definition gives the same ratio because v=ti+q−1. All denominators here are positive, and Aiλi(q−1)=((x−a)/(b−a))((u−a)/(v−a))=((u−a)/(b−a))((x−a)/(v−a))=λi(q)Ai′. This also covers q=1, where the lower-degree weight is the degree-zero value 1.

3.2A1F1step 2.1algebra

For the last coefficient, first take k−q≤i≤k−1 and put c=ti+1, d=ti+q+1, and w=ti+2′. Then c≤tk<u<d and w≤tk for i≤k−2, while w=u for i=k−1. In both cases d−c>0, d−w>0, and λi+2(q−1)=(u−w)/(d−w) (zero in the case w=u). Consequently 1−λi+2(q−1)=(d−u)/(d−w), 1−λi+1(q)=(d−u)/(d−c), and Di+1′=(d−x)/(d−w), while Di=(d−x)/(d−c). Multiplying proves Di(1−λi+2(q−1))=(1−λi+1(q))Di+1′. At i=k, both λk+2(q−1) and λk+1(q) are zero, and the insertion map gives Dk+1′=Dk. If their common denominator is zero, both terms are zero by [F1]; otherwise equality follows from the identical numerator and denominator.

3.3A1F1step 2.1algebra

For the middle coefficient at the lower boundary i=k−q, put c=ti+1 and d=tk+1. Here λi(q)=1 and λi+1(q−1)=1, so the old middle coefficient is Di=(d−x)/(d−c). Also 1−λi+1(q)=(d−u)/(d−c), Di′=(u−x)/(u−c), and Ai+1′=(x−c)/(u−c). All displayed denominators are positive, and the new middle coefficient is λi(q)Di′+(1−λi+1(q))Ai+1′=(u−x)/(u−c)+(d−u)(x−c)/((d−c)(u−c))=(d−x)/(d−c)=Di. The omitted old term Ai(1−λi+1(q−1)) is zero even if Ai has zero denominator, because [F1] defines that term as zero and its multiplier is zero. At the upper boundary i=k, λi+1(q−1)=λi+1(q)=0, so the old middle coefficient is Ai. Put a=tk and b=tk+q; then a<u<b. The insertion map gives λi(q)=(u−a)/(b−a), Di′=(b−x)/(b−u), and Ai+1′=(x−u)/(b−u). Therefore the new middle coefficient is λi(q)Di′+(1−λi+1(q))Ai+1′=((u−a)(b−x)+(b−a)(x−u))/((b−a)(b−u))=(x−a)/(b−a)=Ai. The old term Diλi+1(q−1) is zero without division by its denominator. For the strict interior k−q+1≤i≤k−1, which is empty if q=1, put a=ti, c=ti+1, b=ti+q, and d=ti+q+1. The insertion span gives a≤c≤tk<u<tk+1≤b≤d, so every denominator below is positive. The old and refined middle coefficients are respectively ((x−a)(b−u)/(b−a)+(d−x)(u−c)/(d−c))/(b−c) and ((u−a)(b−x)/(b−a)+(d−u)(x−c)/(d−c))/(b−c). Their first numerator terms differ by x−u, since (x−a)(b−u)−(u−a)(b−x)=(b−a)(x−u). Their second numerator terms differ by u−x, since (d−x)(u−c)−(d−u)(x−c)=(d−c)(u−x). Thus their sum is equal. These lower, strict-interior, and upper cases prove the middle coefficient identity.

4.1A1F1step 1.1step 2.1step 3.1step 3.2step 3.3algebrainduction∎

For i<k−q, both weights in the refinement formula are 1, and the complete local knot list used by Bi,q,t is unchanged in t′, so the recursively defined basis function is unchanged. For i≥k+1, both weights are 0, and the local knot list shifts by one, giving Bi,q,t=Bi+1,q,t′. For the transition range, steps 3.1, 3.2 and 3.3 establish all three coefficients in step 2.1, so the Cox–de Boor expansions agree. Induction from the degree-zero base in step 1.1 proves the formula for every q≤p. The argument is pointwise on [a,b) under the right-cell convention, including repeated knots; taking left limits gives the equality at b. No continuity at knots is assumed.

TheoremStatement: Literature-sourcedProof: AI-adaptedprecheck passjudge pass (gpt-6-luna)Open item page →

de Boor evaluation equals the B-spline coefficient expansion

Statement

Let p∈N0, let t0≤⋯≤tn+p be the zero-based reindexing of a clamped knot vector, and let S(x)=∑i=0n−1ciBi,p(x) be its degree-p B-spline expansion, with Bi,p=Bi+1,p,ξ under B-spline spaces and knot conventions. If k is a nonempty span index and x∈[tk,tk+1), then the exact-arithmetic mode of de Boor coefficient evaluation on a specified knot span returns S(x). For x=b it returns the corresponding left limit when the last nonempty span is supplied.

Facts & Assumptions

Given: A clamped degree-p knot vector, coefficients ci, a nonempty span [tk,tk+1), and a query in that half-open span, or the specified left limit at b.

[F1]

de Boor coefficient evaluation on a specified knot span initializes the active list by dj(0)=ck−p+j and, in exact mode, updates dj(r)=(1−αj,r)dj−1(r−1)+αj,rdj(r−1) with αj,r=(x−tk−p+j)/(tk+1+j−r−tk−p+j).

[F2]

B-spline spaces and knot conventions defines degree-zero B-splines as half-open interval indicators and gives the Cox–de Boor recurrence; a zero-denominator term is zero.

[F3]

B-spline basis properties and polynomial reproduction states that on a nonempty span only Bk−p,p,…,Bk,p can be active.

[A1]

The algorithm is run in exact arithmetic and the supplied span is nonempty.

Proof

1.1givenA1F1F3

By [F3], on the supplied span the spline value is the sum over its active indices only. With dj(0)=ck−p+j, this is S(x)=∑j=0pdj(0)Bk−p+j,p(x). If p=0, the sole active degree-zero indicator equals one on the half-open span, so the algorithm's copy ck is exactly S(x).

1.2A1F2algebra

Suppose a current degree-q local expansion has active coefficients ak−q,…,ak. Expand each basis function by [F2]. For every i=k−q+1,…,k, the coefficient of Bi,q−1(x) after collecting the two contributing terms is (x−ti)ai+(ti+q−x)ai−1ti+q−ti=(1−x−titi+q−ti)ai−1+x−titi+q−tiai. The two boundary terms are zero on [tk,tk+1): the left one is supported only up to tk, and the right one starts at tk+1. A zero denominator contributes zero by [F2]. Thus this degree reduction preserves the value at x.

2.1A1F1F2step 1.2induction∎

Starting at q=p, repeat step 1.2. After r−1 reductions the active degree is q=p−r+1, and the coefficient indexed by i=k−p+j has the weight (x−tk−p+j)/(tk+1+j−r−tk−p+j), exactly αj,r in [F1]. Hence each algorithmic update is the coefficient collection in step 1.2 and preserves the spline value. After p reductions the sole degree-zero indicator on the span is one, so the remaining coefficient dp(p) equals S(x). At b equality on the last open span extends to the prescribed left limit.

TheoremStatement: Literature-sourcedProof: AI-adaptedprecheck passjudge pass (gpt-6-luna)Open item page →

de Boor evaluation uses quadratic work in the degree

Statement

For a supplied nonempty knot span and degree p, a successful call to the loop in de Boor coefficient evaluation on a specified knot span performs exactly p(p+1)/2 coefficient updates when p≥1 and none when p=0. A call that returns a range failure performs no more than this many updates. Each update uses at most a constant number of scalar arithmetic operations, so the arithmetic work is O(p2) and the coefficient storage is O(p); the caller's span search is excluded.

Facts & Assumptions

Given: The finite degree-p loop and one already identified nonempty knot span.

[F1]

de Boor coefficient evaluation on a specified knot span runs, for each r=1,…,p, one update for each j=p,p−1,…,r and retains only p+1 local coefficients.

[A1]

A supplied span index is used; finding the index is not charged to the coefficient evaluation.

Proof

1.1A1F1algebra

At loop level r, there are p−r+1 values of j. Therefore a completed loop performs ∑r=1p(p−r+1)=∑s=1ps=p(p+1)/2 updates; for p=0 the loop is empty. A range failure stops the loop early, so every call performs at most this many updates.

2.1A1F1step 1.1algebra∎

Each full update computes a fixed number of subtractions, one division, two multiplications and one addition, independent of p; an exact-zero numerator branch or a range failure can only reduce that count. Initializing and returning the local list takes at most a constant times p+1 copies. Thus the scalar arithmetic count is bounded by a constant times p2+1, while the list contains at most p+1 entries. The excluded span search cannot change either bound.

TheoremStatement: Literature-sourcedProof: AI-adaptedprecheck passjudge pass (gpt-6-luna)Open item page →

Clamped cubic spline interpolation exists uniquely

Statement

Let a=x0<x1<⋯<xm=b, m≥1, let y0,…,ym∈R, and let σa,σb∈R. Put hi=xi+1−xi>0 and di=(yi+1−yi)/hi. There is exactly one clamped cubic spline interpolant in the sense of Clamped cubic spline interpolant. Its nodal second derivatives Mi=s′′(xi) are the unique solution of 2h0M0+h0M1=6(d0−σa),hi−1Mi−1+2(hi−1+hi)Mi+hiMi+1=6(di−di−1),1≤i<m,hm−1Mm−1+2hm−1Mm=6(σb−dm−1). On [xi,xi+1] the interpolant is si(x)=Mi(xi+1−x)3+Mi+1(x−xi)36hi+(yi−Mihi26)xi+1−xhi+(yi+1−Mi+1hi26)x−xihi.

Facts & Assumptions

Given: The partition, arbitrary nodal values, and prescribed endpoint slopes in the Statement.

[F1]

Clamped cubic spline interpolant requires a C2 function, cubic pieces, interpolation at every node, and the two prescribed endpoint slopes.

[A1]

m≥1, x0<⋯<xm, yi∈R, and σa,σb∈R.

Proof

1.1A1algebrachoose

Let A be the (m+1)×(m+1) matrix of the displayed system. Its first row has diagonal 2h0 and off-diagonal sum h0; an interior row i has diagonal 2(hi−1+hi) and off-diagonal sum hi−1+hi; the last row has diagonal 2hm−1 and off-diagonal sum hm−1. Every diagonal entry therefore strictly exceeds the sum of the other absolute entries in its row. If Av=0 for a nonzero v, choose i with ∣vi∣=max⁡j∣vj∣>0. The ith row gives ∣Aii∣∣vi∣≤∑j≠i∣Aij∣∣vj∣≤(∑j≠i∣Aij∣)∣vi∣, contradicting strict row diagonal dominance. Thus A has zero kernel and, being square, is invertible.

2.1A1F1step 1.1constructalgebra

Let M0,…,Mm be the unique solution. Define si by the displayed piece formula. Substitution at xi and xi+1 gives the values yi,yi+1, and differentiating twice gives endpoint second derivatives Mi,Mi+1. Differentiating once gives si′(xi)=di−hi(2Mi+Mi+1)/6 and si′(xi+1)=di+hi(Mi+2Mi+1)/6. The interior system rows make the adjacent endpoint slopes agree. Since the adjacent second derivatives both equal the shared Mi, the pieces join with continuous first and second derivatives. The first and last rows give s0′(a)=σa and sm−1′(b)=σb. Hence the constructed function satisfies [F1].

3.1A1F1step 1.1step 2.1algebra∎

For any clamped interpolant, its nodal second derivatives must satisfy the displayed system by the same endpoint-slope formulas, so invertibility from step 1.1 forces them to equal the constructed Mi. On each interval, the difference from si is a cubic with zero endpoint values and zero endpoint second derivatives. Its second derivative is affine and vanishes at both endpoints, hence is identically zero; the difference is then affine and vanishes at both endpoint values, hence is zero. Every piece is therefore unique, proving uniqueness of the interpolant.

TheoremStatement: AI-adaptedProof: AI-adaptedprecheck passjudge pass (gpt-6-luna)Open item page →

A natural-spline tridiagonal residual bounds the spline value error

Statement

Let x1<⋯<xr, r≥3, and let s be the natural cubic interpolant of nodal values yi. Write hi=xi+1−xi and H=max⁡ihi. Let A be the (r−2)×(r−2) interior coefficient matrix in the system of Natural cubic interpolation at distinct knots, and let b be its right-hand side. Put δ=min⁡2≤i≤r−1(hi−1+hi)>0. For any proposed nodal second derivatives M^1=M^r=0, let m^ be their interior vector, let ρ=Am^−b be the exact residual, and let s^ be the piecewise cubic given by the natural piece formula with these second derivatives and the same values yi. Then, on the knot hull, ∥s^−s∥L∞([x1,xr])≤H28δ∥ρ∥∞. This is a residual-to-function transfer statement; it does not assert that a particular floating-point solver returns a residual certificate.

Facts & Assumptions

Given: The distinct knots and data, the natural interpolant, and an arbitrary proposed interior second-derivative vector with zero endpoint values.

[F1]

Natural cubic interpolation at distinct knots: the exact interior vector m solves Am=b, where row i has diagonal 2(hi−1+hi) and adjacent entries hi−1,hi; its spline pieces use the stated cubic formula.

[F2]

Nodal second-derivative perturbations bound the natural spline error: if the endpoint second derivatives agree, a nodal second-derivative discrepancy bounded by E changes the natural cubic pieces on the knot hull by at most H2E/8 in the maximum norm.

[A1]

r≥3, all hi>0, and ρ is the exact algebraic residual Am^−b.

Proof

1.1A1F1algebrachoose

Let e=m^−m, so Ae=ρ by [F1] and the definition of ρ. Choose an index i at which ∣ei∣=∥e∥∞, and put Si=hi−1+hi. The diagonal entry in row i is 2Si, while the sum Ri of the absolute off-diagonal entries is at most Si because an endpoint row omits the coefficient multiplying the fixed zero endpoint second derivative (and when r=3 there are no off-diagonal entries). The reverse triangle inequality and ∣ej∣≤∥e∥∞ give ∣ρi∣≥(2Si−Ri)∥e∥∞≥Si∥e∥∞≥δ∥e∥∞. Hence ∥e∥∞≤∥ρ∥∞/δ.

2.1A1F2step 1.1algebra∎

Apply [F2] with E=max⁡i∣M^i−Mi∣=∥e∥∞, since both endpoint perturbations are zero. Step 1.1 then yields ∥s^−s∥∞≤H2∥e∥∞/8≤H2∥ρ∥∞/(8δ), as claimed.

TheoremStatement: AI-adaptedProof: AI-generatedprecheck passjudge pass (gpt-6-luna)Open item page →

A successful natural-cubic tridiagonal Cholesky solve has a certified residual

Statement

Let r≥3, n=r−2, and use the stored input data, arithmetic model and algorithm of Natural-cubic tridiagonal Cholesky solve with a residual certificate. If assembly succeeds, its stored symmetric tridiagonal matrix T is positive definite. On every full successful call, the algorithm returns success⁡(M^,C,α,β,B). Let m^=(M^2,…,M^r−1) be the interior subvector, let f be the stored right-hand side, and let w^ be the computed rounded residual vector from the algorithm's residual-evaluation step. Then

∥Tm^−f∥∞≤C.

For v∈Rn, the notation here is ∥v∥∞:=max⁡1≤k≤n∣vk∣. Thus e=Tm^−f is an exact right-hand-side perturbation satisfying Tm^=f+e and ∥e∥∞≤C. This absolute residual certificate remains valid when m^=0 or f=0.

The algorithm's factorization and two substitutions are the successful executions of the published dense rounded Cholesky and triangular-substitution procedures on the same stored T and f, after omitting only exact-zero operations. Their failure tests retain the published positive-normal pivot and operationwise range rules. Exact positive definiteness does not guarantee rounded success.

Write L^ and z for the factor and forward-solve vector computed in this execution. There are additional conditional backward-error statements. If (n+3)u<1, lower bidiagonal D1 and upper bidiagonal D2 satisfy

(L^+D1)z=f,(L^T+D2)m^=z,∣D1∣≤τ∣L^∣,∣D2∣≤τ∣L^∣T,τ=(n+3)u1−(n+3)u.

If (20n+20)u<1/5, put g=(20n+20)u/(1−(20n+20)u). For the symmetric factor residual E=L^L^T−T,

∣E∣≤100g∣L^∣∣L^∣T.

With

J=E+D1L^T+L^D2+D1D2,

we have (T+J)m^=f and

∣J∣≤(100g+2τ+τ2)∣L^∣∣L^∣T.

The matrix J need not be symmetric. If also 100n g≤1/2, then ∥E∥F≤200n g∥T∥F. The residual certificate above requires only the algorithm's (n−1)u<1 check; it does not require these stronger factor and triangular-solve conditions.

The finite procedure terminates and uses O(r) floating-point operations, O(r) stored scalars, O(r) exact rational operations and O(r) stored rationals. No rational bit-complexity bound is asserted.

Facts & Assumptions

Given: r≥3, strictly increasing finite stored knots, finite stored data, 0<u≤1/4, and a full successful call of the local algorithm with its exact rational certificate completed.

[F1]

Natural-cubic tridiagonal Cholesky solve with a residual certificate specifies the stored tridiagonal assembly, bidiagonal factor and solves, sparse rounded residual, exact rational quantities F1,X1,Y1,V1,W1, and the returned value C=W1+gnF1X1+u(V1+Y1).

[F2]

Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add: each successful real operation has relative error at most u when its exact result is nonzero, exact zeros are preserved, and operations whose exact nonzero result is outside the normal range fail.

[F3]

Failure-aware rounded Cholesky factorization specifies the dense rounded Cholesky recurrence, its operation order, and its positive-normal pivot test.

[F4]

Rounded triangular substitution has a componentwise matrix backward error: for a successful rounded triangular solve in dimension n with (n+3)u<1, a componentwise matrix perturbation bounded by γn+3∣R∣ converts the computed solution into an exact solution.

[F5]

A successful rounded Cholesky factorization has componentwise and normwise backward error bounds: for a successful Cholesky factorization of an SPD matrix, if (20n+20)u<1/5, then ∣L^L^T−T∣≤100g∣L^∣∣L^∣T; under its further stated norm condition it gives ∥E∥F≤200n g∥T∥F.

[F6]

Rounded matrix products give certified linear and normal-equation residual allowances: for a successful sequential rounded matrix-vector product and subtraction, the exact linear residual differs from the computed one in Euclidean norm by at most gn∥T∥F∥m^∥2+u(∥v^∥2+∥f∥2).

[F7]

Finite arithmetic schedules terminate, with early failure counted separately: a finite initialized instruction list with finite-return instructions terminates at its first failure or its completion return.

[F8]

The Frobenius norm ∥A∥F=(∑i,j∣aij∣2)1/2 on real or complex matrices: ∥M∥F is the Euclidean norm of the finite list of matrix entries, equivalently (∑i,j∣Mij∣2)1/2.

[F9]

The norm ∥v∥=⟨v,v⟩ induced by a real or complex inner product: on a real or complex inner-product space, ∥v∥=⟨v,v⟩.

[F10]

The standard formulas ⟨x,y⟩=∑k<nxkyk on Rn and ∑k<nxkyk‾ on Cn are inner products: on Rn, ⟨v,w⟩=∑k=1nvkwk, so the induced Euclidean norm is ∥v∥2=(∑k=1nvk2)1/2.

[A1]

The local algorithm completes assembly, factorization, both substitutions, residual evaluation and its exact rational certificate without any range or resource failure.

Proof

1.1A1F1F2algebra

Each successful width subtraction has exact positive input difference, so by [F2] its stored result h^i is positive. Write Sk=h^k+h^k+1. The successful rounding of its sum and multiplication by 2 gives dk≥2(1−u)2Sk≥(9/8)Sk>Sk. Row k's off-diagonal absolute sum is at most Sk: it contains only some of the positive entries h^k,h^k+1, and for n=1 it is zero. For any real nonzero vector v, applying 2ckvkvk+1≥−∣ck∣(vk2+vk+12) to each adjacent term yields vTTv≥∑k(dk−∑j≠k∣Tkj∣)vk2>0. Hence every successfully assembled T is real SPD.

1.2A1F1F2F3induction

In the dense Cholesky recurrence of [F3], induction over columns shows that L^ij=0 for i>j+1: the input matrix is tridiagonal, and in each such row the prior-column products and input entry are zero. At k=1 the diagonal square-sum is empty, so its pivot is copied as p1=d1, exactly as in the local algorithm. For k>1, the only possible nonzero term in the dense diagonal square-sum is ek−12; the remaining zero products, additions and subtractions are exact and cannot fail under [F2]. Thus the dense pivot is exactly the specialized pk, followed by the same square root and positive-normal test. For the first subdiagonal, the dense dot product has only the input ck after its exact zero terms, so the update is exactly fl⁡(ck/ℓk). Every lower entry beyond that subdiagonal is exactly zero. This induction proves equality of all stored factor entries and all potentially failing operations. The forward and backward dense triangular recurrences likewise have only the single adjacent product; all other terms are exact zeros. Therefore the specialized solve outputs equal the published substitutions.

1.3A1F1F2F6F8F9F10algebra

Let r∗=Tm^−f be the exact residual. The algorithm computes the same sparse sequential products and subtraction as the dense dot product in [F6], with only exact-zero products and additions omitted. By [F2], a zero product is exact and adding zero to a stored normal value or zero is also exact, so the sparse accumulation is identical to the dense one. Thus [F6] gives ∥w^−r∗∥2≤gn∥T∥F∥m^∥2+u(∥v^∥2+∥f∥2). By [F9] and [F10], the Euclidean norm is the square root of the sum of squared coordinates, so each coordinate magnitude is at most that norm and ∥v∥2≤∑k∣vk∣; the latter follows by squaring, since all cross terms are nonnegative. By [F8], the same argument on the finite entry list gives ∥T∥F≤∑i,j∣Tij∣=F1. The definitions in [F1] therefore imply ∥w^∥2≤W1, ∥m^∥2≤X1, ∥v^∥2≤V1, and ∥f∥2≤Y1. The coordinate bound also gives ∥r∗∥∞≤∥r∗∥2, whence ∥r∗∥∞≤∥r∗−w^∥2+∥w^∥2≤C. Setting e=r∗ gives the stated exact right-hand-side perturbation without division by a solution or residual norm.

2.1A1F1F4F5F8step 1.1step 1.2algebra

If (n+3)u<1, apply [F4] to each successful triangular substitution from step 1.2. It gives D1,D2 with (L^+D1)z=f and (L^T+D2)m^=z and the stated entrywise bounds; since L^ is bidiagonal, those bounds force D1,D2 to be bidiagonal as well. Under the distinct condition (20n+20)u<1/5, step 1.1 and [F5] give E=L^L^T−T and the stated factor bound. Substituting the second triangular equation into the first gives (L^+D1)(L^T+D2)m^=f. Expanding the product and using L^L^T=T+E yields (T+J)m^=f. Entrywise submultiplicativity and the bounds on D1,D2,E give the displayed bound for J. The conditional Frobenius estimate is exactly the further norm consequence in [F5], with the norm convention in [F8].

3.1A1F1F7algebra∎

Put n=r−2. Assembly makes a fixed number of floating-point operations per each of the r−1 intervals and n rows. Factorization, each substitution and residual evaluation visit n rows, with at most a fixed number of operations per row because a tridiagonal row has at most three nonzero entries. The exact-certificate scan likewise visits r−1 intervals and n rows; each contributes a fixed number of rational operations and comparisons to the sums, row discrepancies, and extrema, followed by a fixed number to form B. Thus the floating-point and exact rational operation counts are O(r). The algorithm stores only input and output vectors, the bidiagonal factor, the three diagonals of T and A, and a fixed number of rational accumulators; row discrepancies can be computed as they are scanned, so storage is O(r) scalars and O(r) rationals. Every loop has a finite index range and every floating-point instruction returns or its first failure. The certificate denominators hi, δ, and 1−(n−1)u are positive, so each exact rational operation has finite inputs and is defined. [F7] therefore gives termination; if a resource limit prevents completion of the exact certificate, the algorithm returns its separate failure status and no B. No rational bit-complexity bound follows.

TheoremStatement: AI-adaptedProof: AI-adaptedprecheck passjudge pass (gpt-6-luna)Open item page →

A successful rounded de Boor evaluation has a degree-dependent forward bound

Statement

Use the operationwise model in Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add with unit roundoff 0<u<1. Suppose the floating-point mode of de Boor coefficient evaluation on a specified knot span completes successfully on stored coefficients ck−p,…,ck and every exact intermediate is zero or normal. Put η=(1+u)21−u−1,e=η+u(2+η),W=1+e,E=e+u(2+u)W. If S(x)=∑iciBi,p(x) is the exact B-spline value on the supplied span and S^(x) is the returned value, then ∣S^(x)−S(x)∣≤((1+2E)p−1)max⁡k−p≤i≤k∣ci∣. For p=0 the error is zero. The conclusion is conditional on success and does not certify that the intermediate range conditions will hold.

Facts & Assumptions

Given: A successful operationwise floating-point evaluation of the de Boor recurrence on a nonempty span, with 0<u<1.

[F1]

Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add states that every successful real addition, subtraction, multiplication, and division has relative error at most u for a nonzero normal exact result, while exact zeros are returned exactly; other nonzero range cases return failure.

[F2]

de Boor coefficient evaluation on a specified knot span first computes the rounded numerator subtraction. If it is zero, the algorithm copies the left coefficient; otherwise it computes the denominator subtraction and division, complement subtraction, two multiplications, and addition in that order.

[F3]

de Boor evaluation equals the B-spline coefficient expansion identifies the exact recurrence output with S(x).

[A1]

Every operation in the floating-point run succeeds, as required in the Statement.

Proof

1.1A1F1F2algebra

At one blend let α∈[0,1] be the exact ratio. If its numerator is zero, the algorithm's exact-zero branch returns the left coefficient copy. Otherwise the two subtractions and division in [F2] give α^=α(1+δ1)(1+δ3)/(1+δ2), with ∣δi∣≤u by [F1]. Hence ∣α^−α∣≤η. The complement subtraction gives ∣β^−(1−α)∣≤η+u(2+η)=e, because ∣1−α^∣≤2+η. Also ∣α^∣,∣β^∣≤1+e=W.

1.2A1F1F2algebra

Write the two rounded products and final rounded sum as y^=fl⁡(fl⁡(β^a)+fl⁡(α^b)). Subtract the exact convex blend (1−α)a+αb. The coefficient differences contribute at most e(∣a∣+∣b∣); the two product roundings contribute at most uW(∣a∣+∣b∣); and the final addition contributes at most u(1+u)W(∣a∣+∣b∣). Thus ∣y^−((1−α)a+αb)∣≤E(∣a∣+∣b∣). If M is the maximum magnitude in the preceding computed column, this is at most 2EM. Since the exact blend is a convex combination, its magnitude is at most M, so the next computed column has maximum at most (1+2E)M.

2.1step 1.2algebrainduction

Let Mr be the maximum magnitude of the computed column after r stages and let εr be the maximum difference from the exact column. Step 1.2 gives Mr≤(1+2E)rM0. Since the exact weights are nonnegative and sum to one, the previous-column discrepancy contributes at most εr−1, while the local rounding contributes at most 2EMr−1. Therefore εr≤εr−1+2E(1+2E)r−1M0. Starting with ε0=0 and summing this geometric series gives εp≤((1+2E)p−1)M0.

3.1F3step 2.1algebra∎

By [F3], the final exact column is S(x); the final computed column is S^(x), and M0=max⁡k−p≤i≤k∣ci∣. Substitution in step 2.1 proves the bound.

TheoremStatement: Literature-sourcedProof: AI-adaptedprecheck passjudge pass (gpt-6-luna)Open item page →

Single new-knot insertion preserves the B-spline curve

Statement

Let t0≤⋯≤tn+p be a clamped knot vector of degree p as in B-spline spaces and knot conventions, with a=t0 and b=tn+p, and let ξ(v)j=vj−1 be the one-based version of any zero-based knot vector v. Write Bi,q,v=Bi+1,q,ξ(v) for the basis in B-spline spaces and knot conventions. Let a B-spline curve be C(x)=∑i=0n−1PiBi,p,t(x) with d∈N and Pi∈Rd. Insert one new knot u strictly inside a nonempty span by Single new-knot insertion for a B-spline curve, obtaining knots t′ and controls Qi. Write Bi,q′=Bi,q,t′. Then, for every x∈[a,b], C(x)=∑i=0nQiBi,p,t′(x).

Facts & Assumptions

Given: A clamped degree-p knot vector, controls Pi, and a new knot u strictly inside a nonempty span [tk,tk+1].

[F1]

B-spline spaces and knot conventions defines degree-zero B-splines as half-open interval indicators and defines higher degrees by the Cox–de Boor recurrence with zero-denominator terms set to zero.

[F2]

Single new-knot insertion for a B-spline curve uses Qi=Pi for i≤k−p, Qi=λiPi+(1−λi)Pi−1 for k−p+1≤i≤k, and Qi=Pi−1 for i≥k+1, where λi=(u−ti)/(ti+p−ti) in the middle range.

[F3]

A single new knot refines the B-spline basis gives Bi,p,t=λi(p)Bi,p,t′+(1−λi+1(p))Bi+1,p,t′ for every old degree-p basis index.

[A1]

u is strictly inside the nonempty span, so it is not already a knot and every denominator in the middle blend range is strictly positive.

Proof

1.1A1F1F2F3algebraconstruct

Since the knot vector is clamped and the insertion span is nonempty, p≤k≤n−1. For bookkeeping only, set P−1=Pn=0 and write λj=λj(p). The copy, blend, and shift ranges in [F2] give Qj=λjPj+(1−λj)Pj−1 for every 0≤j≤n: in the copy range λj=1, in the blend range the algorithm's αj is λj, and in the shift range λj=0. This also covers p=0, when the blend range is empty. Therefore the finite refined sum is ∑j=0nQjBj,p′=∑i=0n−1Pi[λiBi,p′+(1−λi+1)Bi+1,p′]: the first control sum uses Pn=0, and in the second the change of index i=j−1 drops the P−1=0 term.

2.1A1F1F3step 1.1algebra∎

By [F3], each bracketed basis combination in step 1.1 equals Bi,p,t. Substitution in that finite sum gives ∑j=0nQjBj,p,t′=∑i=0n−1PiBi,p,t=C(x). The recurrence and control algebra hold at interior knots under the right-cell convention, and at b they hold by the prescribed left limits. Hence the refined expansion equals the original curve for every x∈[a,b].

TheoremStatement: Literature-sourcedProof: AI-adaptedprecheck passjudge pass (gpt-6-luna)Open item page →

Boundary-compatible clamped cubic interpolation is fourth order in the maximum norm

Statement

Let a=x0<⋯<xm=b, m≥1, with hi=xi+1−xi and H=max⁡ihi. Suppose f has continuous derivatives through order four on an open interval containing [a,b], and let M≥0 satisfy ∣f(4)(x)∣≤M there. Let s be the clamped cubic interpolant at yi=f(xi) with the boundary-compatible slopes s′(a)=f′(a) and s′(b)=f′(b). Then

∥s−f∥L∞([a,b])≤83324MH4≤MH4.

The conclusion uses the exact endpoint derivatives; it is not a rate claim for the natural boundary condition or for estimated endpoint slopes.

Facts & Assumptions

Given: A strictly increasing partition, f with continuous derivatives through order four near [a,b], a bound M on ∣f(4)∣, and the clamped interpolant with endpoint slopes equal to those of f.

[F1]

Clamped cubic spline interpolation exists uniquely gives the second-derivative system, the cubic piece formula, and the endpoint-slope formulae for the clamped interpolant.

[F2]

A uniform derivative bound gives a uniform Taylor remainder bound: if a function has derivatives through order q+1 on the closed segment between c and x, with endpoint continuity, and its (q+1)st derivative is bounded by M, its degree-q Taylor remainder is at most M∣x−c∣q+1/(q+1)!. Here the proof uses q=1 for f′′, q=2 for f′, and q=3 for f; the resulting factorials are 2, 6, and 24.

[A1]

hi>0, H=max⁡ihi, and ∣f(4)∣≤M on a neighborhood of the partition.

Proof

1.1A1F1F2algebra

Put gi=f′′(xi) and qi=f′′′(xi). By [F2], on each adjacent interval of length h, Taylor expansion gives f′′(xi+h)=gi+hqi+Rg+ and f′′(xi−h)=gi−hqi+Rg− with ∣Rg±∣≤Mh2/2; the corresponding secant slopes satisfy di=f′(xi)+higi/2+hi2qi/6+Ri+ and di−1=f′(xi)−hi−1gi/2+hi−12qi/6+Ri−, with ∣Ri±∣≤Mhi or i−13/24. Substitution in an interior row of [F1] shows that the residual obtained by inserting gi in place of Mi has magnitude at most (3/4)MH2(hi−1+hi): the first-derivative terms cancel, and the remaining terms are bounded by (1/2+1/4)M(hi−13+hi3). The same expansions in the first row give residual at most (3/4)MH2h0; expansion backward from b gives at most (3/4)MH2hm−1 in the last row.

1.2A1F2constructalgebra

Fix an interval [xi,xi+1] of length hi and let Hi be the cubic Hermite interpolant matching f and f′ at both endpoints. Let T3 be the Taylor polynomial of degree three for f at xi, and put g=f−T3. By [F2], g(xi)=g′(xi)=0, ∣g(x)∣≤Mhi4/24, ∣g(xi+1)∣≤Mhi4/24, and ∣g′(xi+1)∣≤Mhi3/6. With t=(x−xi)/hi, the Hermite basis functions for the right value and right slope are 3t2−2t3 and t3−t2; their absolute values on [0,1] are at most 1 and 4/27. Therefore ∣Hig(x)∣≤(43/648)Mhi4, and ∣f(x)−Hi(x)∣=∣g(x)−Hig(x)∣≤(35/324)Mhi4.

2.1A1F1step 1.1algebrachoose

In the clamped system matrix, each diagonal exceeds the sum of the absolute off-diagonal entries by respectively h0, hi−1+hi, and hm−1. Let ei=Mi−gi and choose an index with maximal ∣ei∣. Since the residual equation is Ae=b−Ag, its row at that index has magnitude at least the row's diagonal-dominance margin times max⁡j∣ej∣. Step 1.1 bounds that same row by (3/4)MH2 times the margin. Hence max⁡i∣Mi−gi∣≤(3/4)MH2.

3.1A1F1step 1.1step 2.1algebra

At an interior node xi, [F1] gives s′(xi)=di−1+hi−1(Mi−1+2Mi)/6. Substituting the backward Taylor expansions in step 1.1 and Mj=gj+ej cancels the terms in gi and qi. The remaining Taylor terms are bounded by (1/24+1/12)Mhi−13=MH3/8, and the e terms by hi−1(3/4)MH2/2≤3MH3/8. Thus ∣s′(xi)−f′(xi)∣≤MH3/2. At a and b this difference is zero by the boundary conditions.

4.1A1step 3.1step 1.2algebra

The difference s−Hi is a cubic with zero endpoint values and with endpoint slope differences ϵi=s′(xi)−f′(xi) and ϵi+1=s′(xi+1)−f′(xi+1). Its Hermite form is hi(ϵit(1−t)2+ϵi+1t2(t−1)). Each displayed shape function has absolute value at most 4/27 on [0,1]. Step 3.1 therefore gives ∣s−Hi∣≤(4/27)MH4. Combining with step 1.2 yields ∣s−f∣≤(35/324+4/27)MH4=(83/324)MH4 on this interval.

5.1step 4.1algebra∎

The intervals cover [a,b], and 83/324<1. Taking the supremum over all intervals proves the stated maximum-norm estimate.

TheoremStatement: AI-adaptedProof: AI-generatedprecheck passjudge pass (gpt-6-luna)Open item page →

A computed natural-cubic reconstruction has a forward-error certificate

Statement

Let r≥2 and use the stored knots and values and the algorithm of Natural-cubic tridiagonal Cholesky solve with a residual certificate. Let s be the exact natural cubic interpolant of those data, supplied by Natural cubic interpolation at distinct knots. On a successful call, let M^ be the returned second-derivative vector, put m^=(M^2,…,M^r−1), and let s^ be the piecewise cubic reconstruction defined by the algorithm from M^, evaluated exactly. For r≥3, the success output is success⁡(M^,C,α,β,B). The algorithm computes H, δ, and Q=∥m^∥∞ internally when forming B; these are not separate returned fields. The returned certificate fields satisfy

∥s^−s∥L∞([x1,xr])≤B=H28δ(C+α∥m^∥∞+β).

Here α and β account for the differences between the exact natural-cubic system assembled from the stored input data and the rounded matrix and right-hand side used by the factorization. If those systems are exactly the same, then α=β=0 and B=H2C/(8δ). For r=2, both the natural interpolant and the algorithm-defined reconstruction are the straight line, and B=0.

The algorithm-defined reconstruction interpolates the stored data, but for r≥3 it need not be C1 at its knots and is not asserted to be an exact natural spline. The bound excludes floating-point error from evaluating the cubic pieces and makes no unconditional arithmetic-success or general natural-spline fourth-order claim.

Facts & Assumptions

Given: Strictly increasing stored knots and finite stored values, r≥2, and a successful algorithm call including its exact rational certificate.

[F1]

Natural-cubic tridiagonal Cholesky solve with a residual certificate defines the exact canonical system Am=b, the stored matrix T and right-hand side f used by the rounded solve, and the discrepancies α=max⁡k∑j∣Akj−Tkj∣ and β=max⁡k∣bk−fk∣. On a successful r≥3 call it returns M^,C,α,β,B and computes H, δ, and Q=∥m^∥∞ internally to form B=H2(C+αQ+β)/(8δ).

[F2]

A successful natural-cubic tridiagonal Cholesky solve has a certified residual gives ∥Tm^−f∥∞≤C on a full successful call.

[F3]

Natural cubic interpolation at distinct knots: for r≥3, the exact natural interpolant's interior second derivatives solve Am=b; for r=2 it is the straight line.

[F4]

A natural-spline tridiagonal residual bounds the spline value error: if ρ=Am^−b is the exact residual for the interior natural-cubic system and the endpoint second derivatives agree at zero, then the piecewise cubic reconstruction differs from the exact natural interpolant on the knot hull by at most H2∥ρ∥∞/(8δ).

[A1]

The data knots are exact stored real numbers with x1<⋯<xr; for r≥3, each hi>0 and δ>0.

Proof

1.1A1F1F2algebra

Suppose r≥3. Let M^ be the returned vector and m^=(M^2,…,M^r−1) its interior subvector. By [F2] and the exact identity Am^−b=(Tm^−f)+(A−T)m^+(f−b), each row satisfies ∣(Am^−b)k∣≤∣(Tm^−f)k∣+∑j∣Akj−Tkj∣ ∣m^j∣+∣fk−bk∣≤C+α∥m^∥∞+β. Taking the maximum proves ∥Am^−b∥∞≤C+α∥m^∥∞+β; these exact discrepancies account for all rounded system assembly.

2.1A1F1F4step 1.1algebra

The returned endpoint second derivatives and those of s are both zero. Apply [F4] to the exact residual from step 1.1 and the original widths. It gives ∥s^−s∥L∞([x1,xr])≤(H2/(8δ))∥Am^−b∥∞≤(H2/(8δ))(C+α∥m^∥∞+β)=B. The transfer theorem applies to any proposed interior derivatives with zero endpoint values; it does not require the algorithm-defined pieces to join with matching first derivatives.

3.1A1F1F3algebra∎

If r=2, the algorithm returns zero endpoint second derivatives and its associated reconstruction is the exact straight-line piece. By [F3] this is also s, and the algorithm defines B=0, so the stated bound holds with equality.

5 · Examples, counterexamples and false statements

None yet.

Sources