sig val search : ?invariants:Node.t list -> ?candidates:Node.t list -> Ast.t_system -> Bwd.result end