pub fn solve(program: &Program, lock: Option<&Lock>) -> Solution
Solve the placement of every definition and signal in a checked program.