66 for (pc = sc->inegalites, i=1; pc != NULL; pc = pc->
succ, i++)
67 for(pv = base_index, j=1; pv != NULL; pv = pv->
succ, j++)
94 for (pc = sc->inegalites, i=1; i<=m; pc = pc->succ, i++)
95 for (pb = base_index, j=1; j<=n; pb = pb->
succ, j++)
108 for (pc = sc->inegalites, i=1; i<=m; pc = pc->succ, i++)
146 for (
eq = ps->inegalites,i=1;
149 for(pv = base_index, j=1; pv != NULL; pv = pv->
succ, j++){
195 Value cst,coeff,dena,denb;
211 for (b = ps->base,i =2; i<= m; i++,b=b->succ)
232 for (vect = ps->base,j=1;j<=m;vect=vect->succ,j++) {
280 Pbase index_base,const_base;
293 for (
eq = ps->inegalites,i=1;
296 for(pv = index_base, j=1; pv != NULL; pv = pv->
succ, j++){
299 for(pv = const_base, j=1; pv != NULL; pv = pv->
succ, j++){
340 Pbase index_base,const_base;
348 Value cst,coeff,dena,denb;
367 for (b = ps->base,i =2; i<= m1; i++,b=b->succ)
378 for (b = ps->base,i =2; i<= m1+m2-1; i++,b=b->succ)
401 for (vect = ps->base,j=1;j<=m1;vect=vect->succ,j++) {
415 for (j=1;j<=m2-1;vect=vect->
succ,j++) {
477 for(pv = b, j=1; pv != NULL; pv = pv->
succ, j++){
508 Value cst, coeff, dena, denb;
515 for (i=n;i>=1; i--) {
529 for (vect = b,j=1;j<=m;vect=vect->
succ,j++) {
574 Pbase index_base,const_base;
587 for(pv = index_base, j=1; pv != NULL; pv = pv->
succ, j++){
590 for(pv = const_base, j=1; pv != NULL; pv = pv->
succ, j++){
623 Pbase index_base,const_base;
629 Value cst,coeff,dena,denb;
637 for (i=n;i>=1; i--) {
649 for (j=1;j<=m1;vect=vect->
succ,j++) {
664 for (j=1;j<=m2-1;vect=vect->
succ,j++) {
#define value_notzero_p(val)
#define value_product(v, w)
#define value_mult(v, w)
whether the default is protected or not this define makes no sense any more...
Variable base_find_variable(Pbase b, Variable v)
Variable base_find_variable(Pbase b, Variable v): returns variable v if variable v is one of b's elem...
Pbase base_reversal(Pbase b_in)
Pbase base_reversal(Pbase b_in): produces a basis b_out, having the same basis vectors as b_in,...
Pbase base_union(Pbase b1, Pbase b2)
Pbase base_union(Pbase b1, Pbase b2): compute a new basis containing all elements of b1 and all eleme...
#define A(i, j)
comp_matrice.c
#define CONTRAINTE_UNDEFINED_P(c)
Pcontrainte contrainte_new(void)
package contrainte - allocations et desallocations
int vect_size(Pvecteur v)
package vecteur - reductions
#define DENOMINATOR(matrix)
int DENOMINATEUR(matrix): acces au denominateur global d'une matrice matrix La combinaison *(&()) est...
#define ACCESS(matrix, column, i, j)
Macros d'acces aux elements d'une matrice.
Value * matrice
package matrice
void matrice_nulle(matrice Z, int n, int m)
void matrice_nulle(matrice Z, int n, int m): Initialisation de la matrice Z a la valeur matrice nulle
#define MATRIX_NB_LINES(matrix)
#define MATRIX_NB_COLUMNS(matrix)
#define MATRIX_DENOMINATOR(matrix)
int MATRIX_DENONIMATOR(matrix): acces au denominateur global d'une matrice matrix
#define MATRIX_ELEM(matrix, i, j)
Macros d'acces aux elements d'une matrice.
void matrix_nulle(Pmatrix Z)
void matrix_nulle(Pmatrix Z): Initialisation de la matrice Z a la valeur matrice nulle
Pcontrainte eq
element du vecteur colonne du systeme donne par l'analyse
Pvecteur cp
pointeur sur l'egalite ou l'inegalite courante
Variable creat_new_var(Psysteme ps)
char * noms_var(int i): cette fonction convertit un numero de variable en chaine de caracteres
struct Scontrainte * succ
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique
void matrice_index_sys(Psysteme sc, Pbase base_index, matrice AG, int n, int m)
void matrice_index_sys(Psysteme sc, Pbase base_index, matrice AG, int n, int m) replace the coefficie...
void loop_sc_to_matrices(Psysteme ps, Pbase index_base, Pbase const_base, matrice A, matrice B, int n, int m1, int m2)
Creation de la matrice A correspondant au systeme lineaire et de la matrice correspondant a la partie...
void matrices_to_constraints(Pcontrainte *pc, Pbase b, Pmatrix A, Pmatrix B)
=======================================================================
void matrices_to_loop_sc(Psysteme ps, Pbase index_base, Pbase const_base, matrice A, matrice B, int n, int m1, int m2)
void constraints_to_matrices(Pcontrainte pc, Pbase b, Pmatrix A, Pmatrix B)
=======================================================================
void sc_to_matrices(Psysteme ps, Pbase base_index, matrice A, matrice B, int n, int m)
Creation de la matrice A correspondant au systeme lineaire et de la matrice correspondant a la partie...
void matrices_to_constraints_with_sym_cst(Pcontrainte *pc, Pbase index_base, Pbase const_base, Pmatrix A, Pmatrix B)
=======================================================================
void matrices_to_sc(Psysteme ps, Pbase base_index, matrice A, matrice B, int n, int m)
void sys_matrice_index(Psysteme sc, Pbase base_index, matrice A, int n, int m)
package sparse_sc: conversion de systemes representes par des matrices pleines en systemes represente...
void constraints_with_sym_cst_to_matrices(Pcontrainte pc, Pbase index_base, Pbase const_base, Pmatrix A, Pmatrix B)
=======================================================================
#define TCST
VARIABLE REPRESENTANT LE TERME CONSTANT.
#define VECTEUR_UNDEFINED
void * Variable
arithmetique is a requirement for vecteur, but I do not want to inforce it in all pips files....
#define VARIABLE_UNDEFINED
#define BASE_NULLE
MACROS SUR LES BASES.
#define VECTEUR_UNDEFINED_P(v)
Pvecteur vect_dup(Pvecteur v_in)
Pvecteur vect_dup(Pvecteur v_in): duplication du vecteur v_in; allocation de et copie dans v_out;.
Pvecteur vect_new(Variable var, Value coeff)
Pvecteur vect_new(Variable var,Value coeff): allocation d'un vecteur colineaire au vecteur de base va...
Pvecteur vect_add(Pvecteur v1, Pvecteur v2)
package vecteur - operations binaires
Value vect_coeff(Variable var, Pvecteur vect)
Variable vect_coeff(Variable var, Pvecteur vect): coefficient de coordonnee var du vecteur vect —> So...
void vect_chg_coeff(Pvecteur *ppv, Variable var, Value val)
void vect_chg_coeff(Pvecteur *ppv, Variable var, Value val): mise de la coordonnee var du vecteur *pp...