Alphabeta Math
LemmaStatement: Literature-sourcedProof: AI-adaptedPipeline-generatedprecheck passjudge pass (gpt-6-luna)
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.

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.

Depends on

Used by

Dependency tree · one level

2 results within one dependency step of this one, each drawn at its shortest distance from it. An arrow runs from a result to what uses it, so the chart reads left to right and ends at this result, which carries a heavier outline. Every node is a link to that result. Click elsewhere on the chart to enlarge it.

Sources