:- module quantification. :- interface. :- import_module hlds_goal, hlds_pred, prog_data. :- import_module list, set, term, varset. :- pred quantification:implicitly_quantify_clause_body((list:list((term:var))), (hlds_goal:hlds_goal), (varset:varset), (map:map((term:var), (prog_data:(type)))), (hlds_goal:hlds_goal), (varset:varset), (map:map((term:var), (prog_data:(type)))), (list:list((quantification:quant_warning)))). :- mode quantification:implicitly_quantify_clause_body(mercury_builtin:in, mercury_builtin:in, mercury_builtin:in, mercury_builtin:in, mercury_builtin:out, mercury_builtin:out, mercury_builtin:out, mercury_builtin:out) is det. :- pred quantification:implicitly_quantify_goal((hlds_goal:hlds_goal), (varset:varset), (map:map((term:var), (prog_data:(type)))), (set:set((term:var))), (hlds_goal:hlds_goal), (varset:varset), (map:map((term:var), (prog_data:(type)))), (list:list((quantification:quant_warning)))). :- mode quantification:implicitly_quantify_goal(mercury_builtin:in, mercury_builtin:in, mercury_builtin:in, mercury_builtin:in, mercury_builtin:out, mercury_builtin:out, mercury_builtin:out, mercury_builtin:out) is det. :- pred quantification:requantify_proc((hlds_pred:proc_info), (hlds_pred:proc_info)). :- mode quantification:requantify_proc(mercury_builtin:in, mercury_builtin:out) is det. :- type (quantification:quant_warning) ---> quantification:warn_overlap((list:list((term:var))), (term:context)). :- pred quantification:goal_vars((hlds_goal:hlds_goal), (set:set((term:var)))). :- mode quantification:goal_vars(mercury_builtin:in, mercury_builtin:out) is det.