1. A method for editing curves in a variational system, the method performed by a data processing system and comprising: receiving a geometric model including plurality of entities by the data processing system; receiving existing conditions corresponding to the geometric model by the data processing system; receiving an operation to be performed on a selected entity of the geometric model by the data processing system; propagating through the geometric model from the selected entity to other entities of the geometric model, by the data processing system, according to the existing conditions, and adding the selected entities and the other entities to a variational system; and performing a variational solve of the variational system by the data processing system according to the operation to produce modified entities; applying the modified entities to the geometric model, by the data processing system, to produce an edited geometric model.