`sig val resolve : ?verbose:bool -> OpamState.state -> OpamTypes.user_action -> orphans:OpamTypes.package_set -> OpamTypes.atom OpamTypes.request -> (OpamSolver.solution, OpamCudf.conflict) OpamTypes.result val apply : ?ask:bool -> OpamState.state -> OpamTypes.user_action -> requested:OpamPackage.Name.Set.t -> OpamSolver.solution -> OpamTypes.solver_result val resolve_and_apply : ?ask:bool -> OpamState.state -> OpamTypes.user_action -> requested:OpamPackage.Name.Set.t -> orphans:OpamTypes.package_set -> OpamTypes.atom OpamTypes.request -> OpamTypes.solver_result val check_solution : OpamState.state -> OpamTypes.solver_result -> unit val eq_atom : OpamTypes.name -> OpamTypes.version -> OpamTypes.atom val atom_of_package : OpamTypes.package -> OpamTypes.atom val eq_atom_of_package : OpamTypes.package -> OpamTypes.atom val atoms_of_packages : OpamTypes.package_set -> OpamTypes.atom list val eq_atoms_of_packages : OpamTypes.package_set -> OpamTypes.atom list val check_availability : ?permissive:bool -> OpamState.state -> OpamPackage.Set.t -> OpamTypes.atom list -> unit val sanitize_atom_list : ?permissive:bool -> OpamState.state -> OpamTypes.atom list -> OpamTypes.atom list val sum : OpamTypes.stats -> int end`