149 #define get_sc_debug_level() sc_debug_level
150 #define ifscdebug(l) if (get_sc_debug_level()>=l)
154 #define sc_nbre_egalites(psc) ((psc)->nb_eq)
155 #define sc_nbre_inegalites(psc) ((psc)->nb_ineq)
156 #define sc_egalites(psc) ((psc)->egalites)
157 #define sc_inegalites(psc) ((psc)->inegalites)
158 #define sc_base(psc) ((psc)->base)
159 #define sc_dimension(psc) ((psc)->dimension)
167 extern void syst_restart(FILE * input_file );
171 #define sc_add_eg(p,c) sc_add_egalite(p, c)
172 #define sc_add_ineg(p,c) sc_add_inegalite(p, c)
179 #define SC_EMPTY ((Psysteme) NULL)
180 #define SC_EMPTY_P(sc) ((sc)==SC_EMPTY)
189 #define SC_RN ((Psysteme) NULL)
190 #define SC_RN_P(sc) ((sc)==(Psysteme) NULL)
194 #define SC_UNDEFINED ((Psysteme) NULL)
195 #define SC_UNDEFINED_P(sc) ((sc)==(Psysteme) NULL)
200 #define NB_INEQ_MAX1 100
205 #define NB_INEQ_MAX2 50
210 #define sc_faisabilite(sc) sc_rational_feasibility_ofl_ctrl((sc), NO_OFL_CTRL,true)
211 #define sc_faisabilite_ofl(sc) \
212 sc_rational_feasibility_ofl_ctrl((sc), FWD_OFL_CTRL, true)
213 #define sc_feasible_ofl(sc, b) sc_rational_feasibility_ofl_ctrl((sc), OFL_CTRL, (b))
214 #define sc_elim_redond(ps) sc_elim_redund((ps))
215 #define sc_triang_elim_redond(x,y) sc_triang_elim_redund(x,y)
216 #define sc_rm_empty_constraints( ps,b) sc_elim_empty_constraints((ps),(b))
217 #define sc_kill_db_eg( ps) sc_elim_db_constraints((ps))
218 #define sc_safe_kill_db_eg( ps) sc_safe_elim_db_constraints((ps))
219 #define non_redundent_subsystem( s1, s2) extract_nredund_subsystem((s1), (s2))
220 #define sc_nredund_ofl( psc) build_sc_nredund_2pass_ofl_ctrl((psc),FWD_OFL_CTRL)
221 #define sc_nredund_optim( psc) build_sc_nredund_2pass((psc))
222 #define sc_nredund( psc) build_sc_nredund_2pass((psc))
223 #define sc_projection_on_list_of_variables(sc,ib,pv) \
224 sc_projection_on_variables((sc),(ib),(pv))
225 #define combiner(sc, v) \
226 sc_fourier_motzkin_variable_elimination_ofl_ctrl((sc),(v),false,false,NO_OFL_CTRL)
227 #define combiner_ofl(sc, v) \
228 sc_fourier_motzkin_variable_elimination_ofl_ctrl((sc),(v),false,false,FWD_OFL_CTRL)
229 #define exact_combiner_ofl(sc, v, b) \
230 sc_fourier_motzkin_variable_elimination_ofl_ctrl((sc),(v),true, (b), FWD_OFL_CTRL)
231 #define eq_v_min_coeff(c, v, cf) contrainte_var_min_coeff((c), (v), (cf), false)
232 #define sc_projection_ofl_with_eq(sc, eq, v) \
233 sc_variable_substitution_with_eq_ofl_ctrl((sc), (eq), (v), FWD_OFL_CTRL)
234 #define cond_suff_comb_integer(sc,pos,neg, v) \
235 cond_suff_comb_integer_ofl_ctrl((sc),(pos),(neg), (v), NO_OFL_CTRL)
236 #define cond_suff_comb_integer_ofl(sc,pos,neg, v) \
237 cond_suff_comb_integer_ofl_ctrl((sc),(pos),(neg), (v), FWD_OFL_CTRL)
238 #define sc_projection_int_along_vecteur(fsc,sc,ib,pv,ti,dim,n) \
239 sc_integer_projection_along_variables((fsc),(sc),(ib),(pv),(ti),(dim),(n))
240 #define integer_projection(sci,sc,v) \
241 sc_integer_projection_along_variable((sci),(sc),(v))
243 typedef int two_int_info[2];
244 typedef two_int_info *two_int_infop;
246 typedef int (* constraint_cmp_func_t)
void const char const char const int
struct Ssysteme * Psysteme
void sc_add_egalite(Psysteme p, Pcontrainte e)
void sc_add_egalite(Psysteme p, Pcontrainte e): macro ajoutant une egalite e a un systeme p; la base ...
void sc_add_inegalite(Psysteme p, Pcontrainte i)
void sc_add_inegalite(Psysteme p, Pcontrainte i): macro ajoutant une inegalite i a un systeme p; la b...
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique