Go to the source code of this file.
#define FM_SYSTEM_REDREC_DESCENDANT 32 |
#define FM_SYSTEM_REDREC_IRIGOIN 64 |
#define FM_SYSTEM_ALLOC_BUFFER_SIZE 64 |
typedef struct s_fm_system s_fm_system_t |
s_fm_system_t* fm_system_alloc | ( | size_t | nb_lines, | |
size_t | nb_cols | |||
) |
s_fm_system_t* fm_system_dup | ( | s_fm_system_t * | s | ) |
void fm_system_free | ( | s_fm_system_t * | s | ) |
void fm_system_normalize_ineq | ( | s_fm_system_t * | s | ) |
s_fm_system_t* fm_system_read | ( | FILE * | stream | ) |
int fm_system_print | ( | FILE * | stream, | |
s_fm_system_t * | s | |||
) |
int fm_system_sort | ( | s_fm_system_t * | s, | |
unsigned | idx, | |||
unsigned * | n1, | |||
unsigned * | n2 | |||
) |
int fm_system_remove_line | ( | s_fm_system_t * | s, | |
unsigned | idx | |||
) |
int fm_system_add_line_at | ( | s_fm_system_t * | s, | |
s_fm_vector_t * | v, | |||
unsigned | idx | |||
) |
int fm_system_add_line | ( | s_fm_system_t * | s, | |
s_fm_vector_t * | v | |||
) |
int fm_system_add_column | ( | s_fm_system_t * | s, | |
int | pos | |||
) |
s_fm_system_t* fm_system_to_z | ( | s_fm_system_t * | s | ) |
s_fm_system_t* fm_system_swap_column | ( | s_fm_system_t * | s, | |
unsigned | col_src, | |||
unsigned | col_dst | |||
) |
s_fm_system_t* fm_system_split | ( | s_fm_system_t * | s, | |
unsigned | col | |||
) |
int fm_system_remove_duplicate | ( | s_fm_system_t * | s | ) |
void fm_system_equalities_sort | ( | s_fm_system_t * | s | ) |
int fm_system_equalities_find | ( | s_fm_system_t * | s | ) |
int fm_system_point_included | ( | s_fm_system_t * | s, | |
s_fm_vector_t * | v | |||
) |
Check if a point is in a polyhedron.
int** fm_system_getconnected | ( | s_fm_system_t * | system | ) |
Compute the connected indices.
Result is outputted as an int matrix. Its line indice represent the class index (there is at most size_sys classes, when the graph is not connected), and for each class there is at most size_sys elements (when the graph is fully connected). A class is represented by a set of variable indices (in basis 0), and is terminated by '-1'.
int fm_piptools_check_int | ( | s_fm_system_t * | sys | ) |
Check if the system has an integer solution (using PIP).
s_fm_system_t* fm_system_simplify | ( | s_fm_system_t * | system, | |
int | simplify_mode | |||
) |
Remove redundant constraints from a polyhedron defined by a set of hyperplanes..
See M. Le Fur Irisa research report.