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.
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 , where , with , and write the real degree- coefficients as . The input includes , a nonempty span index with and , a real query, and the active coefficients . The query is either or, for the left limit at the right endpoint , 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.
- If the indices, coefficient count, span, or query do not satisfy the
input conditions, return
invalid-input. - If , return by copy.
- Initialize for .
- For , and then , put
and . In exact mode set
and
. In
floating-point mode first compute . On
failure return
range-failurefor the numerator subtraction. If , copy to and skip the denominator subtraction, division, complement subtraction, products, and addition. Otherwise compute and then ; on the first failure return its operation and indices. Next compute , followed by , , and , in that order, returning the firstrange-failure. Keep the old until the update is complete. - Return
success(d_p^{(p)}).
For every loop entry, , so and the denominator is positive. The exact weight therefore lies in . 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.
Depends on
Used by
Dependency tree · two levels
3 results within two dependency steps 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
- Carl de Boor, A Practical Guide to Splines, revised edition, Chapter X, pp. 123–126 (standard reference, not scraped)
- Tom Lyche, Carla Manni, and Hendrik Speleers, B-Splines and Spline Approximation, §1.1 (standard reference, not scraped)