52 for (; v != NULL; v=v->succ)
70 for (el=v; el != NULL; el=el->
succ)
87 if(v2==NULL)
return result;
89 for(; v1!=NULL; v1 = v1->succ)
137 if ((v!= NULL) && (
var_of(v) == var))
169 for(; v!= NULL; v= v->succ)
191 for(; v!= NULL; v= v->succ)
213 for (v=v->succ; v!= NULL; v= v->succ)
219 vect_error(
"vect_min",
"ill. null vector as argument\n");
245 for (v=v->succ; v!= NULL; v= v->succ)
250 vect_error(
"vect_max",
"ill. null vector as argument\n");
265 for (; v!=NULL; v=v->
succ)
331 if(v1==NULL && v2==NULL)
336 result = v1->succ==NULL &&
var_of(v1)==var;
340 for (pv = v1; pv != NULL && result ==
true; pv = pv->
succ)
344 for (pv = v2; pv != NULL && result ==
true; pv = pv->
succ)
371 if(v1==NULL && v2==NULL)
373 else if(v1==NULL || v2 == NULL)
378 for (pv = v1; pv != NULL && result ==
true; pv = pv->
succ)
382 for (pv = v2; pv != NULL && result ==
true; pv = pv->
succ)
411 if(v1==NULL && v2==NULL)
416 result = v1->succ==NULL &&
var_of(v1)==var;
420 for (pv = v1; pv != NULL && result ==
true; pv = pv->
succ)
425 for (pv = v2; pv != NULL && result ==
true; pv = pv->
succ)
459 if (v1==NULL && v2==NULL)
460 vect_error(
"vect_proport",
"ill. NULL v1 and v2 args\n");
462 if (v1!=NULL && v2!=NULL) {
471 for (t1 = v1->
succ; (t1!=NULL) && (prop); t1=t1->
succ)
480 for (t2 = v2; (t2!=NULL) && (prop != 0);t2=t2->
succ)
512 return(vec==NULL || (vec->succ==NULL &&
var_of(vec)==var));
537 for(; v!=NULL && consistent; v=v->
succ)
547 if (tcst_seen) consistent =
false;
568 for (; v!=NULL; v=v->
succ)
static hash_table seen
static function to store whether a module has been seen during the recursive generation of the daVinc...
#define pgcd(a, b)
Pour la recherche de performance, selection d'une implementation particuliere des fonctions.
#define value_min(v1, v2)
#define value_notzero_p(val)
#define value_uminus(val)
unary operators on values
#define value_notone_p(val)
#define value_zero_p(val)
#define value_max(v1, v2)
#define value_addto(ref, val)
#define value_eq(v1, v2)
bool operators on values
#define value_product(v, w)
#define value_mult(v, w)
whether the default is protected or not this define makes no sense any more...
#define value_posz_p(val)
bool linear_hashtable_isin(linear_hashtable_pt h, void *k)
void linear_hashtable_put(linear_hashtable_pt h, void *k, void *v)
linear_hashtable_pt linear_hashtable_make(void)
constructor.
void linear_hashtable_free(linear_hashtable_pt h)
destructor
bool vect_consistent_p(Pvecteur v)
To ease retrieval of vect_check()
bool vect_opposite_except(Pvecteur v1, Pvecteur v2, Variable var)
bool vect_opposite_except(Pvecteur v1, Pvecteur v2, Variable var): test a egalite des projections sel...
Value vect_sum(Pvecteur v)
Value vect_sum(Pvecteur v): somme des coefficients d'un vecteur (i.e.
Value vect_pgcd_all(Pvecteur v)
Value vect_pgcd(Pvecteur v): calcul du pgcd de tous les coefficients non nul d'un vecteur v.
Value vect_prod_scal(Pvecteur v1, Pvecteur v2)
Value vect_prod_scal(v1,v2): produit scalaire de v1 et de v2.
Value vect_min0(Pvecteur v)
Value vect_min0(Pvecteur v): recherche du coefficient minimum d'un vecteur v; ce coefficient est touj...
int vect_proport(Pvecteur v1, Pvecteur v2)
int vect_proport(Pvecteur v1, Pvecteur v2): test de la colinearite de deux vecteurs et de leur direct...
int vect_dimension(Pvecteur v)
int vect_dimension(Pvecteur v): calcul du nombre de composantes non nulles et non constantes d'un vec...
bool vect_colin_base(Pvecteur vec, Variable var)
bool vect_colin_base(Pvecteur vec, Variable var): renvoie true si --> --> vec = k var
bool vect_equal(Pvecteur v1, Pvecteur v2)
bool vect_equal(Pvecteur v1, Pvecteur v2): test a egalite de deux vecteurs
bool vect_oppos(Pvecteur v1, Pvecteur v2)
bool vect_oppos(Pvecteur v1, Pvecteur v2): test de l'opposition de deux vecteurs
Value vect_pgcd_except(Pvecteur v, Variable var)
Value vect_pgcd_except(Pvecteur v, Variable var): calcul du pgcd de tous les coefficients non nul d'u...
bool vect_larger_coef_p(Pvecteur v, Value val)
bool vect_equal_except(Pvecteur v1, Pvecteur v2, Variable var)
bool vect_equal_except(Pvecteur v1, Pvecteur v2, Variable var): test a egalite des projections selon ...
Value vect_max(Pvecteur v)
Value vect_max(Pvecteur v): recherche du coefficient non nul maximum d'un vecteur v; aborte sur le ve...
bool vect_check(Pvecteur cv)
bool vect_check(Pvecteur v): renvoie true si le vecteur v est coherent avec les specifications du pac...
Value vect_max0(Pvecteur v)
Value vect_max0(Pvecteur v): recherche du coefficient maximum d'un vecteur v; ce coefficient est touj...
int vect_size(Pvecteur v)
package vecteur - reductions
Value vect_min(Pvecteur v)
Value vect_min(Pvecteur v): recherche du coefficient non nul minimum d'un vecteur v; aborte sur le ve...
#define linear_assert(msg, ex)
t_real sum(int n1, int n2, int n3, t_real u[n1][n2][n3])
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique
hidden structure to store the hashtable.
void * Variable
arithmetique is a requirement for vecteur, but I do not want to inforce it in all pips files....
void vect_error(char *name, char *fmt,...)
package vecteur
Value vect_coeff(Variable var, Pvecteur vect)
Variable vect_coeff(Variable var, Pvecteur vect): coefficient de coordonnee var du vecteur vect —> So...