91 signe = (debut) ?
' ' :
'+';
97 (void)
fprintf(fp,
"%c", signe);
141 (void)
fprintf(fp,
" %s ", is_inegalite?
"<=":
"==");
197 for( ; eg != NULL; eg = eg->
succ)
216 for( ; ineg != NULL; ineg = ineg->
succ)
226 (void) sprintf(s,
"%s",(is_inegalite? (a_la_fortran?
".LE.":
"<="):
227 (a_la_fortran?
".EQ.":
"==")));
249 signe = (debut) ?
' ' :
'+';
255 (void) sprintf(s+strlen(s),
"%c", signe);
283 short int debut =
true;
284 int positive_terms = 0;
285 int negative_terms = 0;
286 Value const_coeff = 0;
287 bool const_coeff_p =
false;
299 if(negative_terms > positive_terms) {
316 (void) sprintf(s+strlen(s),
"%s",
318 else if(!
term_cst(coord) || is_inegalite){
330 else if(!
term_cst(coord) || is_inegalite) {
331 (void) sprintf(s+strlen(s),
"+");
340 if(positive_terms == 0)
341 (void) sprintf(s+strlen(s),
"0");
350 if(
term_cst(coord) && !is_inegalite) {
352 const_coeff_p =
true;
372 (void) sprintf(s+strlen(s),
"+");
379 if(negative_terms == 0)
380 (void) sprintf(s+strlen(s),
"0");
381 else if(const_coeff_p) {
385 (void) sprintf(s+strlen(s),
"+");
452 switch(heuristique) {
#define value_mone_p(val)
#define value_notzero_p(val)
#define value_uminus(val)
unary operators on values
#define value_notone_p(val)
#define value_addto(ref, val)
#define CONTRAINTE_UNDEFINED_P(c)
#define contrainte_vecteur(c)
passage au champ vecteur d'une contrainte "a la Newgen"
void contrainte_error(char *, char *,...)
error.c
void sprint_Value(char *s, Value v)
void fprint_Value(FILE *f, Value v)
void egalite_fprint(FILE *fp, Pcontrainte eg, char *(*variable_name)(Variable))
void egalite_fprint(FILE * fp, Pcontrainte eg, char * (*variable_name)()): impression d'une egalite e...
void inegalites_fprint(FILE *fp, Pcontrainte ineg, char *(*variable_name)(Variable))
void inegalites_fprint(FILE * fp, Pcontrainte ineg, char * (*variable_name)()): impression d'une list...
char * inegalite_sprint_format(char *s, Pcontrainte ineg, char *(*variable_name)(Variable), bool a_la_fortran)
void egalite_dump(Pcontrainte c)
void egalite_dump(Pcontrainte c): impression "physique" d'une egalite; utilise en debugging
static char * heuristique_1(char *s, Pvecteur v, bool is_inegalite, char *(*variable_name)(Variable), bool a_la_fortran)
void inegalite_fprint(FILE *fp, Pcontrainte ineg, char *(*variable_name)(Variable))
void inegalite_fprint(FILE * fp, Pcontrainte ineg, char * (*variable_name)()): impression d'une inega...
char * egalite_sprint_format(char *s, Pcontrainte eg, char *(*variable_name)(Variable), bool a_la_fortran)
static char * heuristique_3(char *s, Pvecteur v, bool is_inegalite, char *(*variable_name)(Variable), bool a_la_fortran)
void egalites_fprint(FILE *fp, Pcontrainte eg, char *(*variable_name)(Variable))
void egalites_fprint(FILE * fp, Pcontrainte eg, char * (*variable_name)()): impression d'une liste d'...
void inegalites_dump(Pcontrainte eg)
char * inegalite_sprint(char *s, Pcontrainte ineg, char *(*variable_name)(Variable))
void sprint_operator(char *s, bool is_inegalite, bool a_la_fortran)
void contrainte_fprint(FILE *fp, Pcontrainte c, bool is_inegalite, char *(*variable_name)(Variable))
void egalites_dump(Pcontrainte eg)
char * contrainte_sprint(char *s, Pcontrainte c, bool is_inegalite, char *(*variable_name)(Variable))
char * contrainte_sprint(char * s, Pcontrainte c, bool is_inegalite, char * (*variable_name)()): Trad...
char * egalite_sprint(char *s, Pcontrainte eg, char *(*variable_name)(Variable))
void egalite_fprint(FILE * fp, Pcontrainte eg, char * (*variable_name)()): impression d'une egalite e...
void inegalite_dump(Pcontrainte c)
void inegalite_dump(Pcontrainte c): impression "physique" d'une inegalite; utilise en debugging
static Value fprint_contrainte_vecteur(FILE *fp, Pvecteur v, char *(*variable_name)(Variable))
package contrainte - operations d'entree-sortie
char * contrainte_sprint_format(char *s, Pcontrainte c, bool is_inegalite, char *(*variable_name)(Variable), bool a_la_fortran)
bool vect_check(Pvecteur cv)
bool vect_check(Pvecteur v): renvoie true si le vecteur v est coherent avec les specifications du pac...
char *(* variable_debug_name)(Variable)
Debug support: pointer to the function used by debug print outs.
int fprintf()
test sc_min : ce test s'appelle par : programme fichier1.data fichier2.data ...
char * variable_name(Variable v)
polynome_ri.c
void vect_chg_sgn(Pvecteur v)
void vect_chg_sgn(Pvecteur v): multiplie v par -1
struct Scontrainte * succ
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique
#define TCST
VARIABLE REPRESENTANT LE TERME CONSTANT.
#define VECTEUR_NUL
DEFINITION DU VECTEUR NUL.
void * Variable
arithmetique is a requirement for vecteur, but I do not want to inforce it in all pips files....