pub fn solve(
run: Run<'_>,
state: &StateValues,
problem: &Problem<'_>,
prove: bool,
) -> GeopResult<Solved>Expand description
Where the values problem frees have to be — from where state has
them — for every constraint the program run runs defines to hold, as
near where they are as the constraints allow, pulled as its preferences
ask (see System::solve), and an enclosure of a true solution near
there. The part is left as the program builds it at its own state.
The state is moved even where the constraints cannot all hold, to where they come closest; the report says which do not.
Only where prove asks is the solution enclosed: a solve shown and
solved again at once — an event of a drag — need not be, and proving
every group it moved costs several times the solve (see
System::solve_unproven).