I set out to write a tangram solving program. Continuous optimization was hopeless. SAT solving was awesome but ultimately not useful. I ended up inventing a new number system to enable exact equality comparison of tangram coordinates. I wrote a C++ library for 2D geometry using my coordinates and a depth-first search algorithm to solve tangram puzzles instantly.
Interpolating splines are a great way to represent smooth curves on a computer, but every time a control point is added, moved, or removed, your computer has to solve a system of equations to find the new shape of the spline. For REALLY BIG splines, it might be faster to repair the existing solution rather than solve the new system from scratch. The question is, can you repair the solution faster than you can solve from scratch? In this case, the answer appears to be a resounding NO.