/*
** Automatically generated from `eqvclass.m'
** by the Mercury compiler,
** version 14.01.1, configured for x86_64--netbsd.
** Do not edit.
**
** The autoconfigured grade settings governing
** the generation of this C file were
**
** TAG_BITS=3
** UNBOXED_FLOAT=yes
** PREGENERATED_DIST=no
** HIGHLEVEL_CODE=yes
**
** END_OF_C_GRADE_INFO
*/


/* :- module eqvclass. */
/* :- interface. */

#ifndef MR_HEADER_GUARD_eqvclass
#define MR_HEADER_GUARD_eqvclass

#ifdef __cplusplus
extern "C" {
#endif

#include "mercury.h"


#ifndef EQVCLASS_DECL_GUARD
#define EQVCLASS_DECL_GUARD

#endif




#line 41 "eqvclass.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__eqvclass__eqvclass__type_ctor_info_eqvclass_1;

#line 44 "eqvclass.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__eqvclass__eqvclass__type_ctor_info_partition_id_0;

#line 410 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__LCMCpr_partitions_1_3_p_0(
#line 410 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 410 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 410 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 410 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_4);

#line 173 "eqvclass.m"
void MR_CALL 
mercury__eqvclass____Compare____partition_id_0_0(
#line 173 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_1,
#line 173 "eqvclass.m"
  MR_Integer mercury__eqvclass__param_2,
#line 173 "eqvclass.m"
  MR_Integer mercury__eqvclass__param_3);

#line 173 "eqvclass.m"
MR_bool MR_CALL 
mercury__eqvclass____Unify____partition_id_0_0(
#line 173 "eqvclass.m"
  MR_Integer mercury__eqvclass__param_1,
#line 173 "eqvclass.m"
  MR_Integer mercury__eqvclass__param_2);

#line 166 "eqvclass.m"
void MR_CALL 
mercury__eqvclass____Compare____eqvclass_1_0(
#line 166 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 166 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_2,
#line 166 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 166 "eqvclass.m"
  MR_Word mercury__eqvclass__param_4);

#line 166 "eqvclass.m"
MR_bool MR_CALL 
mercury__eqvclass____Unify____eqvclass_1_0(
#line 166 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 166 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 166 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3);

#line 527 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__divide_equivalence_classes_3_11_p_0(
#line 527 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 527 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 527 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 527 "eqvclass.m"
  MR_Integer mercury__eqvclass__param_4,
#line 527 "eqvclass.m"
  MR_Box mercury__eqvclass__param_5,
#line 527 "eqvclass.m"
  MR_Word mercury__eqvclass__param_6,
#line 527 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_7,
#line 527 "eqvclass.m"
  MR_Word mercury__eqvclass__param_8,
#line 527 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_9,
#line 527 "eqvclass.m"
  MR_Word mercury__eqvclass__param_10,
#line 527 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_11,
#line 527 "eqvclass.m"
  MR_Word mercury__eqvclass__param_12,
#line 527 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_13);

#line 507 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__divide_equivalence_classes_2_9_p_0(
#line 507 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 507 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 507 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 507 "eqvclass.m"
  MR_Integer mercury__eqvclass__param_4,
#line 507 "eqvclass.m"
  MR_Word mercury__eqvclass__param_5,
#line 507 "eqvclass.m"
  MR_Word mercury__eqvclass__param_6,
#line 507 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_7,
#line 507 "eqvclass.m"
  MR_Word mercury__eqvclass__param_8,
#line 507 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_9,
#line 507 "eqvclass.m"
  MR_Word mercury__eqvclass__param_10,
#line 507 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_11);

#line 420 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__partition_ids_2_p_0(
#line 420 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 420 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 420 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_3);

#line 410 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__partitions_3_p_0(
#line 410 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 410 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 410 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 410 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_4);

#line 216 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__add_element_4_p_0(
#line 216 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 216 "eqvclass.m"
  MR_Box mercury__eqvclass__param_2,
#line 216 "eqvclass.m"
  MR_Integer * mercury__eqvclass__param_3,
#line 216 "eqvclass.m"
  MR_Word mercury__eqvclass__param_4,
#line 216 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_5);

#line 151 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__divide_equivalence_classes_2_f_0(
#line 151 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 151 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 151 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 151 "eqvclass.m"
  MR_Word mercury__eqvclass__param_4);

#line 143 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__remove_equivalent_elements_3_p_0(
#line 143 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 143 "eqvclass.m"
  MR_Box mercury__eqvclass__param_2,
#line 143 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 143 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_4);

#line 142 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__remove_equivalent_elements_2_f_0(
#line 142 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 142 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 142 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3);

#line 137 "eqvclass.m"
MR_Box MR_CALL 
mercury__eqvclass__get_minimum_element_2_f_0(
#line 137 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 137 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 137 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3);

#line 132 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__get_equivalent_elements_2_f_0(
#line 132 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 132 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 132 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3);

#line 126 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__partition_list_to_eqvclass_2_p_0(
#line 126 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 126 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 126 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_3);

#line 125 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__partition_list_to_eqvclass_1_f_0(
#line 125 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 125 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2);

#line 119 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__partition_set_to_eqvclass_2_p_0(
#line 119 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 119 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 119 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_3);

#line 118 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__partition_set_to_eqvclass_1_f_0(
#line 118 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 118 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2);

#line 113 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__partition_list_2_p_0(
#line 113 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 113 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 113 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_3);

#line 112 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__partition_list_1_f_0(
#line 112 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 112 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2);

#line 108 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__partition_set_2_p_0(
#line 108 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 108 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 108 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_3);

#line 107 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__partition_set_1_f_0(
#line 107 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 107 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2);

#line 103 "eqvclass.m"
MR_bool MR_CALL 
mercury__eqvclass__same_eqvclass_list_2_p_0(
#line 103 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 103 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 103 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3);

#line 99 "eqvclass.m"
MR_bool MR_CALL 
mercury__eqvclass__same_eqvclass_3_p_0(
#line 99 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 99 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 99 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3,
#line 99 "eqvclass.m"
  MR_Box mercury__eqvclass__param_4);

#line 94 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__new_equivalence_4_p_0(
#line 94 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 94 "eqvclass.m"
  MR_Box mercury__eqvclass__param_2,
#line 94 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3,
#line 94 "eqvclass.m"
  MR_Word mercury__eqvclass__param_4,
#line 94 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_5);

#line 93 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__new_equivalence_3_f_0(
#line 93 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 93 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 93 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3,
#line 93 "eqvclass.m"
  MR_Box mercury__eqvclass__param_4);

#line 87 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__ensure_corresponding_equivalences_4_p_0(
#line 87 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 87 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 87 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 87 "eqvclass.m"
  MR_Word mercury__eqvclass__param_4,
#line 87 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_5);

#line 85 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__ensure_corresponding_equivalences_3_f_0(
#line 85 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 85 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 85 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 85 "eqvclass.m"
  MR_Word mercury__eqvclass__param_4);

#line 82 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__ensure_equivalence_4_p_0(
#line 82 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 82 "eqvclass.m"
  MR_Box mercury__eqvclass__param_2,
#line 82 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3,
#line 82 "eqvclass.m"
  MR_Word mercury__eqvclass__param_4,
#line 82 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_5);

#line 81 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__ensure_equivalence_3_f_0(
#line 81 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 81 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 81 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3,
#line 81 "eqvclass.m"
  MR_Box mercury__eqvclass__param_4);

#line 76 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__new_element_3_p_0(
#line 76 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 76 "eqvclass.m"
  MR_Box mercury__eqvclass__param_2,
#line 76 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 76 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_4);

#line 75 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__new_element_2_f_0(
#line 75 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 75 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 75 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3);

#line 68 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__ensure_element_3_p_0(
#line 68 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 68 "eqvclass.m"
  MR_Box mercury__eqvclass__param_2,
#line 68 "eqvclass.m"
  MR_Word mercury__eqvclass__param_3,
#line 68 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_4);

#line 67 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__ensure_element_2_f_0(
#line 67 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 67 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 67 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3);

#line 60 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__ensure_element_partition_id_4_p_0(
#line 60 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 60 "eqvclass.m"
  MR_Box mercury__eqvclass__param_2,
#line 60 "eqvclass.m"
  MR_Integer * mercury__eqvclass__param_3,
#line 60 "eqvclass.m"
  MR_Word mercury__eqvclass__param_4,
#line 60 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_5);

#line 53 "eqvclass.m"
MR_bool MR_CALL 
mercury__eqvclass__partition_id_3_p_0(
#line 53 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 53 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 53 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3,
#line 53 "eqvclass.m"
  MR_Integer * mercury__eqvclass__param_4);

#line 36 "eqvclass.m"
MR_bool MR_CALL 
mercury__eqvclass__is_member_2_p_0(
#line 36 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 36 "eqvclass.m"
  MR_Word mercury__eqvclass__param_2,
#line 36 "eqvclass.m"
  MR_Box mercury__eqvclass__param_3);

#line 32 "eqvclass.m"
void MR_CALL 
mercury__eqvclass__init_1_p_0(
#line 32 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1,
#line 32 "eqvclass.m"
  MR_Word * mercury__eqvclass__param_2);

#line 31 "eqvclass.m"
MR_Word MR_CALL 
mercury__eqvclass__init_0_f_0(
#line 31 "eqvclass.m"
  MR_Word mercury__eqvclass__param_1);

void mercury__eqvclass__init(void);
void mercury__eqvclass__init_type_tables(void);
void mercury__eqvclass__init_debugger(void);

#ifdef __cplusplus
}
#endif

#endif /* MR_HEADER_GUARD_eqvclass */

/* :- end_interface eqvclass. */
