Admissible heuristic combination 2026-10-25
If , their pointwise minimum, pointwise maximum and each convex combination with are admissible heuristics. Each inequality follows directly by comparison with . The maximum has heuristic dominance over the minimum and every such convex combination.
A sum need not be an admissible heuristic: two exact estimates of the same cost-one remaining action sum to two. A sufficient condition for a valid additive construction is separate nonnegative action-cost allocations with , and estimates bounded by the corresponding optimal allocated costs. Every goal-reaching graph path then costs at least under its original costs. Taking the minimum proves admissibility without counting the same work twice.
If are consistent heuristics, their maximum, minimum and fixed convex combinations are also consistent heuristics. For the maximum, choose an index attaining it at the source and bound its successor by the successor maximum. For the minimum, choose an index attaining it at the successor and bound the source minimum by that component. For a convex combination, multiply the two consistency inequalities by their nonnegative weights and add them. All these combinations vanish at goals when the inputs do.
Affine combination Created 2026-10-14 Updated 2026-10-14
An affine combination is a weighted point with . The coefficients can be negative. The sum is meaningful in an affine space without selecting a preferred origin: relative to any point , it means . Affine maps preserve these weighted points. [ref]
For an original example in the Euclidean plane, take , and . Then lies inside their triangle. Its coefficients are nonnegative, making it a convex combination. In contrast, is beyond : it is an affine combination but not a convex combination of these three points. Negative weights allow extrapolation, rather than only interpolation inside the convex hull.
For the affine map , the same weights produce from , and produce from . Thus one can compute a weighted point before transforming the vertices or afterwards, obtaining exactly the same point.
This is useful whenever an object is built from weighted control points: its construction commutes with an affine map, so transforming the control points transforms the constructed object as well. The sum of the weights is the essential condition; no assumption about lengths or angles is needed.
Axis-aligned bounding box 2026-10-14
An axis-aligned bounding box is a Cartesian product of closed intervals aligned with a chosen Cartesian coordinate system:Only the two opposite corners and need to be stored. In two dimensions it is a rectangle. Changing the Cartesian coordinate system can change how tightly the axis-aligned bounding box fits the same object.[ref]
For a nonempty finite set of points , the smallest such axis-aligned bounding box hasThese minimum and maximum values also enclose the convex hull of : each coordinate of a convex combination lies between the smallest and largest input coordinates. In particular, three vertices of a polygon determine the axis-aligned bounding box of a filled triangle. For a general nonempty compact set, the same formulas use all its points; inspecting only an arbitrary finite sample is insufficient.
Given nonempty boxes and , the closed interval convention givesEquivalently, reject as soon as or in any coordinate. The surviving set intersection has endpoints and . This is an exact box test, while its conclusion about enclosed objects remains a conservative enclosure test.[ref]
3.7 Bounding Boxes. §3.7, Intersect() and Overlaps(): coordinate-wise intersection and inclusive comparisons
Equality counts as touching: and share an edge, so their set intersection is nonempty. Replacing every in the overlap formula by tests intersection of the interiors of full-dimensional boxes and excludes this contact. A zero-width closed interval can represent a point or a lower-dimensional enclosure, and must not automatically be discarded when touching counts. A box with some is empty; test emptiness before applying rules intended for nonempty boxes. The broad phase must retain touching candidates whenever the narrow phase counts touching as a hit.
For nonempty boxes, the smallest enclosing axis-aligned bounding box of their set union isThis operation supplies the parent boxes in a bounding volume hierarchy. It is an enclosure of the set union, rather than generally the set union itself. In floating-point arithmetic, comparisons are conclusive only for endpoints that still enclose the intended exact objects; use certified bounds such as interval arithmetic with outward rounding when that guarantee is required.
// Target: analysis.bigb
Bézier curve 2026-10-14
A Bézier curve is a parametric curve specified by control points in a Euclidean space and the Bernstein basis:Here is a binomial coefficient. Each coordinate is a polynomial of polynomial degree at most ; special choices of control points can lower the polynomial degree. The ordered control points form the control polygon. A cubic Bézier curve uses four control points and has the explicit formThe curve passes through and ; the interior control points steer its shape and need not lie on it.[ref]
https://ocw.mit.edu/courses/6-837-computer-graphics-fall-2012/aba8735cf2cf7c71ca5d29b46873309a_MIT6_837F12_Lec01.pdf. MIT 6.837, Bézier Curves and Splines, slides 23–31 and 45–47, 2012
For a worked example, chooseSubstituting these control points givesHere , so neither interior control point, both at height , lies on the curve. De Casteljau's algorithm computes the same point using only successive linear interpolations.
The endpoint tangent vectors follow from the Bézier derivative control polygon:Thus the curve leaves toward and arrives at from . These nonzero derivatives determine the endpoint tangent lines; if an endpoint derivative vanishes, that formula alone does not determine its tangent direction. Endpoint handles are useful when arranging a parametric first-derivative join of Bézier curves.
The parameter is usually not arc length. For this example,Equal steps in therefore do not generally travel equal distances. Distance along the curve is instead the arc length, given by the integral ; its derivative is the norm of the tangent vector and measures the rate of travel.
Two geometric facts make Bézier curves especially convenient for design. First, the Bernstein basis weights are nonnegative and form a partition of unity, since the binomial theorem gives . Hence is a convex combination of the control points and lies in their convex hull.[ref]
https://groups.csail.mit.edu/graphics/classes/6.838/S98/meetings/m15/. MIT 6.838, Bézier Curve and B-Spline Curve, §1.4.1, 1998
The convex hull is the smallest convex set containing the control points, not their axis-aligned bounding box. Here it is a trapezoid, strictly smaller than : the box corner is outside the convex hull. The curve need not fill or touch every edge of either enclosure. The convex hull guarantee concerns ; outside that interval weights can be negative.Second, applying an affine map to every control point gives exactly the same result as applying it to the entire curve. For ,This is affine equivariance of a geometric basis: a translation, rotation or shear mapping can be performed on a handful of control points. For example, transforms the four control points to and transforms the midpoint to , also obtained from the same weights .
These editable handles explain the usefulness of Bézier curves in computer aided geometric design, vector graphics paths and outline fonts: a small collection of points controls an entire smooth stroke, and resizing the design preserves its mathematical shape. Cambridge's computer-graphics notes describe their use in graphic design, typography and PostScript outlines. The industrial context includes Pierre Bézier's work at Renault and Paul de Casteljau's work at Citroën.[ref]
https://www.cl.cam.ac.uk/teaching/1415/CompGraph/cgip.pdf. Neil A. Dodgson and Peter Robinson, Cambridge Computer Graphics and Image Processing, slides 183 and 226–228, 2014
// Target: analysis.bigb
Birkhoff decomposition by support matchings 2026-10-06
For a doubly stochastic matrix, the Hall marriage theorem supplies a perfect matching in its positive-entry support. Subtract the smallest matched entry times the corresponding permutation matrix. The residual has equal row and column sums and smaller support unless it vanishes. Repeating gives a convex combination of permutation matrices. With initially positive entries, there are at most terms, since a positive-mass residual has at least positive entries. Elementary augmenting-path matching gives arithmetic operations.
Birkhoff-von Neumann theorem Created 2026-10-06 Updated 2026-10-14
Every doubly stochastic matrix is a convex combination of permutation matrices. Equivalently, the extreme points of the doubly stochastic convex polytope are exactly the permutation matrices. The extreme-point assertion follows from an alternating-cycle perturbation of a doubly stochastic matrix; the convex-hull assertion follows because a bounded finite-dimensional polytope is the convex hull of its vertices. Permutation matrices are extreme since their zero entries force the same zeros in every convex decomposition.
Capped simplex Created 2026-09-28 Updated 2026-10-05
For an integer , the capped simplexis the convex hull of the zero-one vectors having exactly entries equal to one. It is a convex polytope whose extreme points are precisely these vectors.
If a feasible vector has a fractional coordinate, the integer coordinate sum forces at least two fractional coordinates. Perturbing one upward and the other downward by a sufficiently small amount gives two distinct feasible vectors whose midpoint is the original vector. It is therefore not an extreme point. Conversely, a zero-one vector cannot be a nontrivial convex combination of points of , since each coordinate is already at a bound.
Carathéodory's theorem (convex hull) Created 2026-10-14 Updated 2026-10-18
Every point in the convex hull of a subset of is a convex combination of at most points of that subset. Thus in the plane three ingredients always suffice, however many samples were supplied. The representation of in convex hull illustrates this bound. Two ingredients need not suffice: the centroid of a triangle with only its three vertices as input is on none of their three pairwise line segments.
A short proof outline removes redundant ingredients. With more than points, the augmented vectors are linearly dependent. A dependence lets the weights vary while preserving both their sum and the represented point. Move along it until one positive weight first becomes zero; all weights stay nonnegative. Repeating leaves at most positive weights.
In his 1911 paper, Constantin Carathéodory used convex geometry to investigate the possible Fourier coefficients of positive harmonic functions. Its introduction interprets convex mixtures through the center of mass, connecting finite-dimensional geometry to constraints on a function's coefficients.[ref]
Über den Variabilitätsbereich der Fourier’schen Konstanten von positiven harmonischen Funktionen by Constantin Carathéodory. English translation by Nicholas J. Williams, Introduction §4, original printed p. 195; §I concerns the smallest containing convex domain
Chaikin subdivision 2026-10-14
Chaikin subdivision generates a rounded subdivision curve by repeatedly cutting the corners off a control polygon. Each edge contributes two new control points, one a quarter of the way along the edge and the other three quarters of the way along it. Connecting these new control points in edge order replaces the old corners by shorter line segments. This makes Chaikin subdivision a useful way to draw a smooth outline from a small, editable set of control points, without evaluating B-spline basis functions at each drawing step. Joy presents both the corner-cutting rule and its closed version.[ref]
https://www.cs.unc.edu/~dm/UNC/COMP258/LECTURES/Chaikins-Algorithm.pdf. Kenneth I. Joy, Chaikin's Algorithms for Curves, §§Chaikin's Method and Example — A Closed Curve, UC Davis authored notes
For a closed control polygon with control points , set and interpret indices cyclically. One refinement givesand the new control polygon is the ordered sequenceClose it by joining back to . Use the old control points for every average in the same refinement; updating them in place would define a different algorithm. One refinement produces stored control points, and refinements produce , counting entries even if some coordinates coincide. Open control polygons need an explicit endpoint convention: applying only the interior edge rule discards the original endpoints, whereas retaining endpoints changes the boundary rule. The closed analysis below uses cyclic indices throughout.
For a worked example, start with the rectangular control polygonThe first edge gives and . Applying Chaikin subdivision to all four edges, including the closing edge, gives exactly eight control points in this order:Thus the rectangle becomes an octagonal control polygon. Two refinements have control points, and five have . The illustration shows finite control polygons at stages ; the last is already visually rounded but still consists of line segments.
The convex hull property follows directly from the weights. Each new control point is a convex combination of the endpoints of one old edge, because the weights are nonnegative and sum to one. Consequently, if is the convex hull of the stage- control points, then . Every later line segment, and every limit point, stays in the original convex hull. This gives a useful geometric enclosure. It also explains why Chaikin subdivision is approximating rather than an interpolation rule: the rectangle's four original corners are outside the first octagon's convex hull, so the limiting curve cannot pass through them. A refinement control polygon generally lies off the limiting curve as well.
For the cyclic uniform rule, the closed limit is the periodic quadratic uniform B-spline curve determined by the original control points. Uniform refers to equal spacing in the spline knot sequence, not equal physical lengths of edges of the control polygon. An infinite uniform control sequence has the corresponding local description; arbitrary open endpoint conventions need separate treatment. Joy derives the quarter-point refinement by splitting quadratic uniform B-spline spans.[ref]
https://www.cs.unc.edu/~dm/UNC/COMP258/LECTURES/Quadratic-B-Spline-Curve-Refinement.pdf. Kenneth I. Joy, Quadratic Uniform B-Spline Curve Refinement, §§Splitting and Refinement and The General Refinement Procedure, UC Davis authored notes
Here is an explicit description of that closed limit, with cyclic indices and a unit parameter span for each original control point:Each coordinate is a quadratic polynomial, and the three coefficients form a nonnegative partition of unity. The span runs from to . Differentiating gives and , so adjacent spans have matching values and matching first derivatives. Their second derivatives generally differ. Thus the parameterized curve is , generally not ; degenerate control points can still make its tangent vector vanish. For the rectangle, the span around iswhich rounds the original corner between edge midpoints and . For equally spaced abscissae, the centered Chaikin basis function gives the scalar graph version of this quadratic B-spline representation and has support of width three original grid intervals.
Another useful property is affine equivariance of a geometric basis: refining and applying an affine map commute. For ,and the same calculation holds for . The sum-to-one weights account for the translation. Therefore at every refinement, and also for the limit. A designer can apply a shear mapping, translation, or other affine map to the original control polygon and obtain exactly the transformed outline.
For example, compose the shear mapping with the translation to obtain . The rectangle's control points become . On its right edge, cutting first gives and then . Transforming first and cutting instead gives , the same control point.
Shearing and translating a control polygon commutes with one Chaikin refinement
. Left: the rectangle and its first refinement. Right: the transformed control polygon, with blue dots from cutting after the affine map and orange rings from applying the affine map after cutting. All eight pairs coincide. Details.Historically, George M. Chaikin published “An algorithm for high-speed curve generation” in Computer Graphics and Image Processing 3(4), December 1974, pages 346–349. Its emphasis was practical curve generation through a recursive algorithm using simple arithmetic, with applications including machine control and three-dimensional curves. The lasting appeal of Chaikin subdivision is how an elementary local average creates an entire smooth B-spline curve.[ref]
https://doi.org/10.1016/0146-664X(74)90028-8. G. M. Chaikin, An algorithm for high-speed curve generation, Computer Graphics and Image Processing 3(4), 346–349, 1974; publisher metadata and abstract
Closed convex hull Created 2026-10-06 Updated 2026-10-18
The smallest closed convex set containing a set , equivalently the closure of its convex hull in the specified topology. The topology must be stated: the norm topology, weak topology and weak-star topology need not give the same closure for an arbitrary set.
Even a bounded infinite input need not have a closed convex hull. In the real line, let . Every finite convex combination of these positive points is positive, so zero is absent. Conversely, any lies between some and , and is their convex combination. HenceThe closed convex hull adds the missing limit point zero. For the finite eight-point example in convex hull, the convex hull is already closed, so taking the closed convex hull adds nothing.
Closed convex hull of a compact set Created 2026-10-25 Updated 2026-10-31
In a Banach space, the closed convex hull of a compact set is compact in the norm topology. Given , choose a finite -net for . Every convex combination of points of is within in norm of , by replacing its terms by their approximating . This finite-dimensional compact convex set has a finite -net, giving a finite -net for . Its closure is therefore totally bounded and complete, hence compact. Completeness of the ambient space is used at this last step.
Conic combination Created 2026-10-06 Updated 2026-10-07
A finite sum with . Unlike a convex combination, the coefficients need not sum to one. Zero coefficients and the empty sum are allowed.
Control-point influence on a curve 2026-10-14
For a parametric curve represented by fixed scalar functions and control points in Euclidean space, writeThe influence function of this handle is : the resulting displacement vector is , and its norm is . These are exact finite changes, not only a first-order estimate. Where is negative the displacement points opposite to . Where , the curve is unchanged at that parameter.
The influence coefficient 3t(1-t)^2 equals the vertical displacement for a unit upward move of P1, reaches 4/9 at t=1/3, and vanishes at both endpoints
. Details. For the cubic Bézier curve above, the Bernstein basis influence function is . Its derivative isIt increases up to and decreases thereafter on . Consequently the largest displacement at corresponding parameters isFor it is . This is a comparison at the same parameter. A geometric closest-distance comparison, as in a closest-point search on a subdivision curve, instead minimizes over another parameter:The closest parameter can differ from , so is not automatically a maximum closest-distance separation of the two curves. Neither parameter is assumed to be arc length.
The support of a function is the closure of the parameter values where . It bounds where a nonzero handle move can act, but may include boundary points where the actual displacement is zero. Here the support of a function is all of relative to the parameter domain, while the endpoints are unaffected. In contrast, a B-spline of order has support within in its spline knot sequence, so its handle affects only that parameter range; the support and Gram bandwidth of B-splines describes the same locality in another application. Changing the spline knots or the basis along with the handle requires a different comparison.
When the basis functions form a partition of unity, , each evaluation is an affine combination of the control points. Applying an affine map to all handles givesThis is affine equivariance of a geometric basis, also called affine covariance: affine maps preserve affine combinations. In particular, translating every handle by translates the whole curve by , whereas moving just one handle produces . The Bernstein basis has this partition of unity property.[ref]
Curves and Surfaces in Geometric Modeling: Theory and Algorithms by Jean Gallier. §4.3, pp. 132–133: Bernstein weights sum to one
Nonnegative weights further make evaluations convex combinations, giving the convex hull bound illustrated by the control polygon; nonnegativity is not needed for affine covariance.For a proof outline of the influence formula, subtract the two basis representations: every unchanged coefficient cancels, leaving . The same subtraction with several moved handles gives . No claim about interpolation, closest-point search on a subdivision curve or endpoint motion follows until the actual basis values are examined.
Convex block 2026-10-06
A convex block of a sequence in a Banach space is a sequence of convex combinations supported on successively disjoint finite intervals, with , , and . Zero coefficients can fill gaps and ensure strict endpoint inequalities. By the Mazur theorem, every weakly null sequence has convex blocks tending to zero in norm.
Convex envelope Created 2026-10-20 Updated 2026-10-25
The greatest convex function lying below a given function, when such an envelope is considered in the specified domain. A convex combination of phase compositions and their Gibbs free energies constructs candidate mixtures; the equilibrium free energy is their lower convex envelope. For two differentiable coexisting branches, the supporting line is a common tangent.
Convex feasible region for a resource budget 2026-10-14
Consider a stipulated continuous-allocation problem. Amounts of two activities use units of a common resource, with budget six. The feasible regionis a triangle with extreme points , and . It is the intersection of three closed half-spaces, hence a closed convex set. The general intersection argument is short: a line segment between two points in every constraint set belongs to every constraint set, so it belongs to their intersection.[ref]
Convex Optimization by Stephen Boyd and Lieven Vandenberghe. §2.2.1, p. 27: half-spaces; §2.3.1, p. 36: intersections preserve convexity
For an original numerical check, take and . Their resource totals are and . Every convex combination is nonnegative and has resource totalIn particular the midpoint is , using units. This verifies the full line segment, rather than just a plotted sample of it.
This is useful whenever divisible quantities share linear limits: the feasible choices remain compatible under averaging. A new linear equation also preserves this property, because averaging two identical constraint values gives the same value. The affine subspace and closed half-space viewpoints explain this without requiring a separate argument for every budget.
Convex hull Created 2026-09-24 Updated 2026-10-18
The convex hull of a set consists of every finite convex combination of its points. It collects all choices obtainable by mixing the original choices with nonnegative weights summing to one. For in a real vector space,Equivalently this is the smallest convex set containing . Mixing two already mixed points produces another finite convex combination, so the displayed set is convex; every convex set containing must contain all these mixtures.[ref]
Convex Optimization by Stephen Boyd and Lieven Vandenberghe. §2.1.4, printed p. 24: convex hull and smallest containing convex set
In an original planar example, take four points , , , and four additional samples , , , . Their convex hull is the filled convex polygon , including its boundary. None of the samples is , butThe coefficients are nonnegative and sum to one, providing an explicit membership certificate. Geometrically, first form on the line segment , then mix . The additional interior samples do not enlarge the convex hull.
For a finite nonempty , the convex hull is the image of a probability simplex of weights under the linear map . The probability simplex is a compact set, and the map is continuous, so this convex hull is compact and closed. A one-point input stays one point; a collinear input stays in a line segment. Filling the convex hull does not necessarily produce a full-dimensional region.
The construction is useful whenever mixtures preserve the intended meaning of a choice. Mixing resource-allocation vectors, for example, interpolates their coordinate requirements. The convex hull describes the resulting feasible region. A coordinate-wise box can admit combinations that no mixture produces, as the outside-point certificate in linear optimization on a convex hull shows.
Convex Optimization by Stephen Boyd and Lieven Vandenberghe Created 2026-10-13 Updated 2026-10-18
Publisher: Cambridge University Press.
Online text: www.seas.ucla.edu/~vandenbe/cvxbook/bv_cvxbook.pdf
Cited passages: Appendix A.5.2, pp. 646–647: symmetric eigenvalue decomposition and definiteness; §2.2.2, p. 30, equation (2.3): ellipsoids and semi-axis lengths; the book uses the inverse quadratic coefficient matrix; §3.1.4, Example 3.2, p. 71: a quadratic function is strictly convex exactly when its symmetric coefficient matrix is positive definite.
Online text: stanford.edu/~boyd/cvxbook/bv_cvxbook.pdf
Cited passages: Appendix A.5.5, printed p. 650: block inversion and minimized quadratic form; §C.4.1, printed pp. 672–675: block elimination, Algorithm C.4, factor-solve interpretation and dense complexity.
Online text: web.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdf
The front matter states first publication in 2004 and a seventh printing with corrections in 2009. The title page credits Stephen Boyd and Lieven Vandenberghe as whole-book coauthors; no separate appendix byline is supplied. Cambridge University Press publishes the book; the Stanford author website hosts this copy.
Additional cited passage: §2.1.4, printed p. 24 (PDF page index 37), convex combinations and the definition and minimality of the convex hull. The title-page whole-book credits and the separately recorded 2004 first publication and 2009 corrected seventh printing apply to this copy.
Additional cited passages: §5.6.3, printed pp. 251–253, especially equation (5.58), local sensitivity of the optimal value to equality-constraint perturbations. The sign of the Lagrange multiplier depends on the chosen sign for the equality term. The title page and front matter retain the whole-book authorship, 2004 first publication and 2009 corrected seventh printing recorded above.
For the two-dimensional heat equation with zero Dirichlet boundary conditions, the Crank-Nicolson diffusion scheme preserves the interval between the minimum and maximum of the initial nodal values and zero under the displayed restriction. The old-time coefficients form a convex combination, while the new-time matrix has positive diagonal, nonpositive off-diagonal entries and row diagonal-dominance margin one. A hypothetical new value above the old maximum makes the new-time row at least that value while its right side is at most the old maximum, a contradiction; apply the reversed inequality at a new minimum. In particular initial nonnegative or nonpositive values preserve their sign. The step restriction guarantees these value bounds even though scalar A-stability holds without it.
De Casteljau's algorithm 2026-10-14
De Casteljau's algorithm evaluates a Bézier curve by repeated linear interpolation between neighboring control points. Fix , start with , and computeEach new row has one fewer point. The final point is . Use the same at every stage: it describes the fraction of each line segment traversed from its first endpoint toward its second. A cubic Bézier curve needs three levels containing , , and linear interpolations, respectively.[ref]
https://graphics.stanford.edu/courses/cs164-10-spring/Handouts/handout19.pdf. Stanford CS348a, Handout 19, §2.3, pp. 10–11
For the Bézier curve with control points , , , , evaluation at takes the midpoint of every neighboring pair. The first level givesThe second level givesand the third level givesThe intermediate control polygons shrink toward the evaluated point. Each step is a convex combination, giving a geometric explanation of the convex hull property; every step also commutes with an affine map.
Cubic Bézier curve, its convex hull and bounding box, and the three levels of De Casteljau's algorithm at t = 1/2
. Details. The same construction splits the Bézier curve exactly, with no approximation. The outer edges of the triangular array give the new control points: for a cubic, specify the left piece and specify the right piece.[ref]
https://graphics.stanford.edu/courses/cs164-10-spring/Handouts/handout19.pdf. Stanford CS348a, Handout 19, §2.3, p. 11, subsegment control points
At these two lists areWrite and for the Bézier curves defined by these lists, each with its own parameter . ThenTheir images reproduce the original curve, while their derivatives account for the shorter parameter intervals. At the join,The chain rule gives ; in the original parameter, both pieces have derivative . This is the interval scaling in the parametric first-derivative join of Bézier curves.Exact midpoint subdivision with two smaller control polygons, endpoint tangent directions, and equally spaced parameter samples
. Details. Repeated midpoint splitting is useful for drawing vector graphics paths: each piece has a smaller control polygon and its own convex hull enclosure. A renderer can refine pieces until they are sufficiently close to line segments at the chosen display scale. Evaluating and splitting it are thus two results of the same short algorithm.
For a proof outline, expanding the recursion givesPascal's identity proves this by induction; at , it is precisely the Bernstein basis formula for the Bézier curve. The geometric construction remains useful even when expanding the polynomial by hand would be cumbersome.
// Target: analysis.bigb







