:- module assoc_list. :- use_module builtin, list, private_builtin, require, set, std_util, string. assoc_list:reverse_members(AL1_3) = AL2_4 :- assoc_list:reverse_members(AL1_3, AL2_4). assoc_list:from_corresponding_lists(Ks_4, Vs_5) = AL_6 :- assoc_list:from_corresponding_lists(Ks_4, Vs_5, AL_6). assoc_list:keys(AL_3) = Ks_4 :- assoc_list:keys(AL_3, Ks_4). assoc_list:values(AL_3) = Vs_4 :- assoc_list:values(AL_3, Vs_4). assoc_list:map_values(_F_4, (list:[])) = (list:[]). assoc_list:map_values(F_5, (list:[V_11 | KVs0_8])) = (list:[V_12 | KVs_10]) :- V_11 = std_util:(K_6 - V0_7), V_12 = std_util:(K_6 - V_9), V_9 = apply(F_5, K_6, V0_7), KVs_10 = assoc_list:map_values(F_5, KVs0_8). :- pragma termination_info(assoc_list:reverse_members((builtin:in), (builtin:out)), finite(0, [no, no, yes, no]), cannot_loop). :- pragma termination_info(assoc_list:reverse_members((builtin:in)) = (builtin:out), finite(0, [no, no, yes, no]), cannot_loop). :- pragma termination_info(assoc_list:from_corresponding_lists((builtin:in), (builtin:in), (builtin:out)), finite(0, [no, no, yes, yes, no]), can_loop). :- pragma termination_info(assoc_list:from_corresponding_lists((builtin:in), (builtin:in)) = (builtin:out), finite(0, [no, no, yes, yes, no]), can_loop). :- pragma termination_info(assoc_list:keys((builtin:in), (builtin:out)), finite(0, [no, no, yes, no]), cannot_loop). :- pragma termination_info(assoc_list:keys((builtin:in)) = (builtin:out), finite(0, [no, no, yes, no]), cannot_loop). :- pragma termination_info(assoc_list:values((builtin:in), (builtin:out)), finite(0, [no, no, yes, no]), cannot_loop). :- pragma termination_info(assoc_list:values((builtin:in)) = (builtin:out), finite(0, [no, no, yes, no]), cannot_loop). :- pragma termination_info(assoc_list:keys_and_values((builtin:in), (builtin:out), (builtin:out)), finite(0, [no, no, yes, no, no]), cannot_loop). :- pragma termination_info(assoc_list:search((builtin:in), (builtin:in), (builtin:out)), finite(-4, [no, no, yes, no, no]), cannot_loop). :- pragma termination_info(assoc_list:remove((builtin:in), (builtin:in), (builtin:out), (builtin:out)), finite(-4, [no, no, yes, no, no, no]), cannot_loop). :- pragma termination_info(assoc_list:map_values((builtin:in), (builtin:in)) = (builtin:out), infinite, can_loop).