:- module hash_table. :- pragma termination_info(hash_table:new(builtin:in((hash_table:hash_pred)), (builtin:in), (builtin:in)) = (hash_table:hash_table_uo), infinite, can_loop). :- pragma termination_info(hash_table:new_default(builtin:in((hash_table:hash_pred))) = (hash_table:hash_table_uo), infinite, can_loop). :- pragma termination_info(hash_table:hash_pred((hash_table:hash_table_ui)) = builtin:out((hash_table:hash_pred)), finite(-7, [no, no, yes, no]), cannot_loop). :- pragma termination_info(hash_table:int_double_hash((builtin:in), (builtin:out), (builtin:out)), finite(0, [no, no, no]), cannot_loop). :- pragma termination_info(hash_table:string_double_hash((builtin:in), (builtin:out), (builtin:out)), infinite, can_loop). :- pragma termination_info(hash_table:char_double_hash((builtin:in), (builtin:out), (builtin:out)), finite(0, [no, no, no]), cannot_loop). :- pragma termination_info(hash_table:float_double_hash((builtin:in), (builtin:out), (builtin:out)), infinite, cannot_loop). :- pragma termination_info(hash_table:generic_double_hash((builtin:in), (builtin:out), (builtin:out)), infinite, can_loop). :- pragma termination_info(hash_table:num_buckets((hash_table:hash_table_ui)) = (builtin:out), finite(-7, [no, no, yes, no]), cannot_loop). :- pragma termination_info(hash_table:num_occupants((hash_table:hash_table_ui)) = (builtin:out), finite(-7, [no, no, yes, no]), cannot_loop). :- pragma termination_info(hash_table:set((hash_table:hash_table_di), (builtin:in), (builtin:in)) = (hash_table:hash_table_uo), infinite, can_loop). :- pragma termination_info(hash_table:'elem :='((builtin:in), (hash_table:hash_table_di), (builtin:in)) = (hash_table:hash_table_uo), infinite, can_loop). :- pragma termination_info(hash_table:det_insert((hash_table:hash_table_di), (builtin:in), (builtin:in)) = (hash_table:hash_table_uo), infinite, can_loop). :- pragma termination_info(hash_table:det_update((hash_table:hash_table_di), (builtin:in), (builtin:in)) = (hash_table:hash_table_uo), infinite, can_loop). :- pragma termination_info(hash_table:delete((hash_table:hash_table_di), (builtin:in)) = (hash_table:hash_table_uo), infinite, can_loop). :- pragma termination_info(hash_table:lookup((hash_table:hash_table_ui), (builtin:in)) = (builtin:out), infinite, can_loop). :- pragma termination_info(hash_table:elem((builtin:in), (hash_table:hash_table_ui)) = (builtin:out), infinite, can_loop). :- pragma termination_info(hash_table:search((hash_table:hash_table_ui), (builtin:in), (builtin:out)), infinite, can_loop). :- pragma termination_info(hash_table:to_assoc_list((hash_table:hash_table_ui)) = (builtin:out), infinite, can_loop). :- pragma termination_info(hash_table:fold((func((builtin:in), (builtin:in), (builtin:in)) = (builtin:out) is det), (hash_table:hash_table_ui), (builtin:in)) = (builtin:out), infinite, can_loop). :- pragma termination_info(hash_table:fold((func((builtin:in), (builtin:in), (builtin:di)) = (builtin:uo) is det), (hash_table:hash_table_ui), (builtin:di)) = (builtin:uo), infinite, can_loop). :- pragma termination_info(hash_table:find_slot((hash_table:hash_table_ui), (builtin:in)) = (builtin:out), infinite, can_loop). :- pragma termination_info(hash_table:to_assoc_list_2((builtin:in), (hash_table:hash_table_ui), (builtin:in)) = (builtin:out), infinite, can_loop). :- pragma termination_info(hash_table:fold_0((builtin:in), (func((builtin:in), (builtin:in), (builtin:in)) = (builtin:out) is det), (hash_table:hash_table_ui), (builtin:in)) = (builtin:out), infinite, can_loop). :- pragma termination_info(hash_table:fold_0((builtin:in), (func((builtin:in), (builtin:in), (builtin:di)) = (builtin:uo) is det), (hash_table:hash_table_ui), (builtin:di)) = (builtin:uo), infinite, can_loop).