1 // 2 /* -*- Compile-command: "swig -c++ -java -package javagiac -outdir javagiac giac.i ; g++ -c -fpic giac_wrap.cxx -I/usr/lib/jvm/default-java/include -I/usr/lib/jvm/default-java/include/linux && g++ -shared giac_wrap.o -lgiac -o libjavagiac.so" -*- */ 3 // Mac commands: swig -c++ -java -package javagiac -outdir javagiac giac.i 4 // 32 bits dynamic g++ -m32 -fPIC -c giac_wrap.cxx -I/System/Library/Frameworks/JavaVM.framework/Headers -I/System/Library/Frameworks/JavaVM.framework/Headers && g++ -m32 -shared giac_wrap.o -L.libs -lgiac -dynamiclib -framework JavaVM -o libjavagiac.jnilib 5 // 64 bits static 6 // g++ -m64 -fPIC -c giac_wrap.cxx -I/System/Library/Frameworks/JavaVM.framework/Headers -I/System/Library/Frameworks/JavaVM.framework/Headers && g++ -m64 -shared giac_wrap.o first.o input_lexer.o unary.o gen.o identificateur.o usual.o pari.o cocoa.o TmpLESystemSolver.o TmpFGLM.o prog.o rpn.o plot.o plot3d.o help.o isom.o gauss.o alg_ext.o ifactor.o global.o tex.o vecteur.o csturm.o subst.o series.o lin.o intg.o intgab.o risch.o solve.o derive.o ezgcd.o modpoly.o modfactor.o index.o symbolic.o input_parser.o desolve.o quater.o permu.o misc.o moyal.o maple.o ti89.o mathml.o gausspol.o sym2poly.o threaded.o tinymt32.o gl2ps.o /usr/64/local/lib/libntl.a /usr/64/local/lib/libpari.a /usr/64/local/lib/libmpfr.a /usr/64/local/lib/libcocoa.a -lgmp /usr/64/local/lib/libfltk_images.a /usr/64/local/lib/libfltk.a /usr/64/local/lib/libfltk_gl.a /usr/64/local/lib/libfltk_forms.a /usr/64/local/lib/libfltk_png.a /usr/64/local/lib/libfltk_jpeg.a /usr/64/local/lib/libgsl.a /usr/64/local/lib/libgslcblas.a /usr/64/local/lib/libreadline.a /usr/64/local/lib/libhistory.a /usr/64/local/lib/libintl.a /usr/64/local/lib/libgettextpo.a -liconv -lncurses -lm -lz -L/usr/64/local/lib/ -dynamiclib -framework AGL -framework OpenGL -framework ApplicationServices -lpthread -framework Cocoa -framework Accelerate -o libjavagiac.jnilib 7 // 64 bits dynamic: g++ -m64 -fPIC -c giac_wrap.cxx -I/System/Library/Frameworks/JavaVM.framework/Headers -I/System/Library/Frameworks/JavaVM.framework/Headers && g++ -m64 -shared giac_wrap.o -L.libs -lgiac -dynamiclib -framework JavaVM -o libjavagiac.jnilib 8 // or link with .libs/libgiac.a -lmpfr -lntl -lgmp -lcocoa -lpari -llapack -lblas -lgsl -lgslcblas -lintl -lpng -lz 9 /* File : giac.i 10 Interface for giac using swig 11 Assumes gen are stored on 64 bits 12 */ 13 %module giac 14 15 %{ 16 #include "giac.h" 17 %} 18 19 %exception eval { catch(std::runtime_error & e)20 try { $action } catch (std::runtime_error &e) { 21 std::cout << "An exception occurred in eval: " << e.what() << "\n"; 22 } 23 } 24 %exception _eval { catch(std::runtime_error & e)25 try { $action } catch (std::runtime_error &e) { 26 std::cout << "An exception occurred in _eval: " << e.what() << "\n"; 27 } 28 } 29 30 31 %javaconst(1); 32 namespace giac { 33 enum gen_unary_types { 34 // immediate type (without mem allocation) should be < _ZINT 35 _INT_= 0, // int val 36 _DOUBLE_= 1, // double _DOUBLE_val 37 // all type below or equal to _DOUBLE_ must be non pointers 38 _ZINT= 2, // mpz_t * _ZINTptr 39 _REAL= 3, // mpf_t * _REALptr 40 // all type strictly below _CPLX must be real types 41 _CPLX= 4, // gen * _CPLXptr 42 _POLY= 5, // polynome * _POLYptr 43 _IDNT= 6, // identificateur * _IDNTptr 44 _VECT= 7, // vecteur * _VECTptr 45 _SYMB= 8, // symbolic * _SYMBptr 46 _SPOL1= 9, // sparse_poly1 * _SPOL1ptr 47 _FRAC= 10, // fraction * _FRACptr 48 _EXT= 11, // gen * _EXTptr 49 _STRNG= 12, // string * _STRNGptr 50 _FUNC= 13, // unary_fonction_ptr * _FUNCptr 51 _ROOT= 14, // real_complex_rootof *_ROOTptr 52 _MOD= 15, // gen * _MODptr 53 _USER= 16, // gen_user * _USERptr 54 _MAP=17, // map<gen.gen> * _MAPptr 55 _EQW=18, // eqwdata * _EQWptr 56 _GROB=19, // grob * _GROBptr 57 _POINTER_=20, // void * _POINTER_val 58 _FLOAT_=21 // immediate, _FLOAT_val 59 } ; 60 61 enum gen_comp_subtypes { 62 _SEQ__VECT=1, 63 _SET__VECT=2, 64 _RPN_FUNC__VECT=3, 65 _RPN_STACK__VECT=4, 66 _GROUP__VECT=5, 67 _LINE__VECT=6, 68 _VECTOR__VECT=7, 69 _PNT__VECT=8, 70 _CURVE__VECT=8, 71 _HALFLINE__VECT=9, 72 _POLY1__VECT=10, 73 _MATRIX__VECT=11, 74 _RUNFILE__VECT=12, 75 _ASSUME__VECT=13, 76 _SPREAD__VECT=14, 77 _CELL__VECT=15, 78 _EQW__VECT=16, 79 _HIST__VECT=17, 80 _TILIST__VECT=0, 81 _FOLDER__VECT=18, 82 _SORTED__VECT=19, 83 _POINT__VECT=20, 84 _POLYEDRE__VECT=21, 85 _RGBA__VECT=22, 86 _LIST__VECT=23, 87 _LOGO__VECT=24 88 } ; 89 90 } 91 %include "std_vector.i" 92 %include "std_string.i" 93 94 namespace std { 95 %template(vectori) vector<int>; 96 %template(vectord) vector<double>; 97 %template(vectorg) vector<giac::gen>; 98 %template(vectors) vector<std::string>; 99 }; 100 101 namespace giac { 102 103 class context { 104 public: 105 giac::sym_tab * tabptr ; 106 context * globalcontextptr ; 107 context * previous ; 108 giac::global * globalptr; 109 const context * parent; 110 giac::vecteur * quoted_global_vars; 111 giac::vecteur * history_in_ptr, * history_out_ptr; 112 context(); 113 context(const context & c); 114 #ifndef RTOS_THREADX 115 #ifndef BESTA_OS 116 context(const std::string & name); 117 #endif 118 #endif 119 ~context(); 120 context * clone() const; 121 }; 122 123 class gen { 124 public: 125 #ifdef GIAC_TYPE_ON_8BITS 126 unsigned char type; // see dispatch.h 127 #else 128 unsigned char type:5; // 32 types is enough, keep 3 bits more for double 129 unsigned char type_unused:3; 130 #endif 131 signed char subtype; 132 unsigned short reserved; // used if SMARTPTR is defined on 64 bit CPU (16 bits for pointer val) 133 int val; 134 ref_count()135 inline volatile int & ref_count() const { 136 #ifdef SMARTPTR64 137 return ((ref_mpz_t *) ((* (longlong *) (this))>>16))->ref_count; 138 #else 139 return __ZINTptr->ref_count; 140 #endif 141 } gen()142 gen(): type(_INT_),subtype(0),val(0) { 143 #ifdef COMPILE_FOR_STABILITY 144 control_c(); 145 #endif 146 }; 147 #ifdef SMARTPTR64 gen(void * ptr,short int subt)148 gen(void *ptr,short int subt) { 149 #ifdef COMPILE_FOR_STABILITY 150 control_c(); 151 #endif 152 longlong __POINTERptr = (longlong ) new ref_void_pointer(ptr); 153 #ifndef NO_STDEXCEPT 154 if (__POINTERptr & 0xffff000000000000) 155 setsizeerr(gettext("Pointer out of range")); 156 #endif 157 * ((longlong *) this) = __POINTERptr << 16; 158 subtype=subt; 159 type=_POINTER_; 160 }; 161 #else gen(void * ptr,short int subt)162 gen(void *ptr,short int subt): type(_POINTER_),subtype(char(subt)) { 163 #ifdef COMPILE_FOR_STABILITY 164 control_c(); 165 #endif 166 __POINTERptr=new ref_void_pointer(ptr); 167 }; 168 #endif gen(int i)169 gen(int i): type(_INT_),subtype(0),val(i) { 170 #ifdef COMPILE_FOR_STABILITY 171 control_c(); 172 #endif 173 }; gen(size_t i)174 gen(size_t i): type(_INT_),subtype(0),val((int)i) { 175 #ifdef COMPILE_FOR_STABILITY 176 control_c(); 177 #endif 178 }; 179 gen(longlong i); 180 #ifdef INT128 181 gen(int128_t i); 182 #endif 183 #ifdef DOUBLEVAL gen(double d)184 gen(double d): type(_DOUBLE_),_DOUBLE_val(d) {}; 185 #else 186 // Warning this does not work on ia64 with -O2 gen(double d)187 gen(double d) { *((double *) this) = d; type=_DOUBLE_; }; 188 #endif 189 gen(const giac_float & f); 190 #ifdef BCD 191 gen(accurate_bcd_float * b); 192 #endif 193 // inline 194 double DOUBLE_val() const ; 195 giac_float FLOAT_val() const ; 196 gen(int a,int b); 197 gen(double a,double b); 198 gen(const gen & a,const gen & b); 199 gen(const std::complex<double> & c); 200 gen(const gen & e); 201 gen (const giac::identificateur & s); 202 gen (giac::ref_identificateur * sptr); 203 gen (const giac::vecteur & v,short int s=0); 204 gen (giac::ref_vecteur * vptr,short int s=0); 205 // vptr must be a pointer allocated by new, do not delete it explicitly 206 gen (const giac::symbolic & s); 207 gen (giac::ref_symbolic * sptr); 208 gen (const giac::gen_user & g); 209 gen (const giac::real_object & g); 210 // Pls do not use this constructor unless you know exactly what you do 211 gen (giac::Tref_tensor<gen> * pptr); 212 gen (const giac::polynome & p); 213 gen (const giac::fraction & p); 214 gen (const std::string & s,giac::context * contextptr); 215 // gen (const wchar_t * s,giac::context * contextptr); 216 // gen (const char * s,giac::context * contextptr); 217 // gen (const giac::sparse_poly1 & p); 218 gen (const giac::unary_function_ptr & f,int nargs=1); 219 // gen (const giac::unary_function_ptr * f,int nargs=1); 220 gen (const giac::gen_map & m); 221 gen (const giac::eqwdata & ); 222 gen (const giac::grob & ); 223 #ifdef HAVE_GMPXX_H 224 gen (const giac::mpz_class &); 225 #endif 226 gen (const giac::my_mpz &); 227 ~gen(); 228 inline mpz_t * ref_ZINTptr() const ; 229 inline giac::real_object * ref_REALptr() const ; 230 inline giac::gen * ref_CPLXptr() const ; 231 inline giac::identificateur * ref_IDNTptr() const ; 232 inline giac::symbolic * ref_SYMBptr() const ; 233 inline giac::gen * ref_MODptr () const ; 234 inline giac::Tfraction<gen> * ref_FRACptr() const ; 235 inline giac::gen * ref_EXTptr () const ; 236 inline giac::polynome * ref_POLYptr() const ; 237 inline giac::vecteur * ref_VECTptr() const ; 238 inline giac::sparse_poly1 * ref_SPOL1ptr() const ; 239 inline std::string * ref_STRNGptr() const ; 240 inline giac::unary_function_ptr * ref_FUNCptr() const ; 241 inline giac::gen_user * ref_USERptr() const ; 242 inline giac::gen_map * ref_MAPptr() const ; 243 inline giac::eqwdata * ref_EQWptr() const ; 244 inline giac::grob * ref_GROBptr() const ; 245 inline void * ref_POINTER_val() const ; 246 247 bool in_eval(int level,gen & evaled,const giac::context * contextptr) const; 248 gen eval(int level,const giac::context * contextptr) const; 249 // inline gen eval() const { return eval(DEFAULT_EVAL_LEVEL,context0); } 250 bool in_evalf(int level,gen & evaled,const giac::context * contextptr) const; 251 gen evalf(int level,const giac::context * contextptr) const; 252 // inline gen evalf() const { return evalf(DEFAULT_EVAL_LEVEL,context0); } 253 gen evalf_double(int level,const giac::context * contextptr) const ; 254 gen evalf2double(int level,const giac::context * contextptr) const; 255 %rename(operator_equal) gen::operator =; 256 // gen & operator = (const gen & a); 257 int to_int() const ; 258 bool is_real(giac::context * contextptr) const ; 259 bool is_cinteger() const ; 260 bool is_integer() const ; 261 bool is_constant() const; 262 std::string print(giac::context * contextptr) const; 263 const char * printcharptr() const ; 264 // if sptr==0, return length required, otherwise print at end of *sptr 265 int sprint(std::string * sptr,giac::context * contextptr) const; 266 std::string print_universal(giac::context * contextptr) const; 267 std::string print() const; 268 wchar_t * wprint(giac::context * contextptr) const ; 269 // print then convert to a malloc-ated wchar_t * modify(int i)270 void modify(int i) { *this =gen(i); }; 271 void dbgprint() const; 272 void uncoerce() ; 273 gen conj(giac::context * contextptr) const; 274 gen re(giac::context * contextptr) const ; 275 gen im(giac::context * contextptr) const ; 276 gen inverse(giac::context * contextptr) const; 277 gen squarenorm(giac::context * contextptr) const; 278 int bindigits() const ; 279 // gen operator [] (int i) const ; 280 // gen operator [] (const gen & i) const; 281 gen operator_at(int i,giac::context * contextptr) const; 282 gen operator_at(const gen & i,giac::context * contextptr) const; 283 // gen & operator [] (int i) ; 284 // gen & operator [] (const gen & i) ; 285 %rename(operator_of) operator () (const gen &,giac::context *) const; 286 gen operator () (const gen & i,giac::context * contextptr) const; 287 // gen operator () (const gen & i,const gen & progname,giac::context * contextptr) const; 288 bool islesscomplexthan(const gen & other) const; 289 bool is_approx() const ; // true if double/real or cmplx with re/im 290 int symb_size() const; 291 gen change_subtype(int newsubtype); 292 bool is_symb_of_sommet(const giac::unary_function_ptr & u) const ; 293 // bool is_symb_of_sommet(const giac::unary_function_ptr * u) const ; 294 gen makegen(int i) const; // make a gen of same type as this with integer i 295 }; 296 giac::vecteur makevecteur(const gen & a); 297 giac::vecteur makevecteur(const gen & a,const gen & b); 298 giac::vecteur makevecteur(const gen & a,const gen & b,const gen & c); 299 giac::vecteur makevecteur(const gen & a,const gen & b,const gen & c,const gen & d); 300 giac::vecteur makevecteur(const gen & a,const gen & b,const gen & c,const gen & d,const gen & e); 301 giac::vecteur makevecteur(const gen & a,const gen & b,const gen & c,const gen & d,const gen & e,const gen & f); 302 giac::vecteur makevecteur(const gen & a,const gen & b,const gen & c,const gen & d,const gen & e,const gen & f,const gen & g); 303 giac::vecteur makevecteur(const gen & a,const gen & b,const gen & c,const gen & d,const gen & e,const gen & f,const gen & g,const gen & h); 304 giac::vecteur makevecteur(const gen & a,const gen & b,const gen & c,const gen & d,const gen & e,const gen & f,const gen & g,const gen & h,const gen & i); 305 306 gen _factor(const gen & g,giac::context * contextptr); 307 gen _simplify(const gen & g,giac::context * contextptr); 308 gen _size(const gen & g,giac::context * contextptr); 309 %rename(add) operator + (const gen &,const gen &); 310 gen operator + (const gen & a,const gen & b); 311 %rename(sub) operator - (const gen &,const gen &); 312 gen operator - (const gen & a,const gen & b); 313 %rename(neg) operator - (const gen &); 314 gen operator - (const gen & a); 315 %rename(mul) operator * (const gen &,const gen &); 316 gen operator * (const gen & a,const gen & b); 317 gen rdiv(const gen & a,const gen & b); // rational division 318 %rename(mod) operator % (const gen &,const gen &); 319 gen operator %(const gen & a,const gen & b); // for int only 320 gen pow(const gen & base,const gen & exponent,giac::context *); 321 gen giac_pow(const gen & base,const gen & exponent,giac::context *); 322 gen iquo(const gen & a,const gen & b); // same 323 gen irem(const gen & a,const gen & b,gen & q); // same 324 gen smod(const gen & a,const gen & b); // same 325 void smod(const giac::vecteur & v,const gen & g,giac::vecteur & w); 326 giac::vecteur smod(const giac::vecteur & a,const gen & b); // same 327 // gen inv(const gen & a); 328 gen inv(const gen & a,giac::context *); 329 bool operator_equal(const gen & a,const gen & b,giac::context *); 330 gen equal(const gen & a,const gen &b,giac::context *); 331 int fastsign(const gen & a,giac::context *); // 0 if unknown, 1 if >0, -1 if <0 332 gen sign(const gen & a,giac::context *); 333 bool is_greater(const gen & a,const gen &b,giac::context *); 334 bool is_strictly_greater(const gen & a,const gen &b,giac::context *); 335 bool is_positive(const gen & a,giac::context *); 336 bool is_strictly_positive(const gen & a,giac::context *); 337 // Large tests if strictly not precised, if sign is unknown make an error 338 bool ck_is_greater(const gen & a,const gen &b,giac::context *); 339 bool ck_is_strictly_greater(const gen & a,const gen &b,giac::context *); 340 bool ck_is_positive(const gen & a,giac::context *); 341 bool ck_is_strictly_positive(const gen & a,giac::context *); 342 gen superieur_strict(const gen & a,const gen & b,giac::context *); 343 gen superieur_egal(const gen & a,const gen & b,giac::context *); 344 gen inferieur_strict(const gen & a,const gen & b,giac::context *); 345 gen inferieur_egal(const gen & a,const gen & b,giac::context *); 346 bool symb_size_less(const gen & a,const gen & b); 347 348 gen min(const gen & a, const gen & b,giac::context *); 349 gen max(const gen & a, const gen & b,giac::context *); 350 // default context0 is required for instantiation in poly.h 351 gen factorial(unsigned long int i); 352 gen comb(unsigned long int i,unsigned long j); 353 gen perm(unsigned long int i,unsigned long j); 354 gen pow(const gen & base, unsigned long int exponent); 355 gen pow(const gen & base, int exponent); 356 gen pow(unsigned long int base, unsigned long int exponent); 357 358 // more advanced arithmetic 359 gen gcd(const gen & A,const gen & B); 360 gen lcm(const gen & a,const gen & b); 361 gen simplify(gen & n, gen & d); 362 void egcd(const gen &a,const gen &b, gen & u,gen &v,gen &d ); 363 gen ichinrem(const gen & a,const gen &b,const gen & amod, const gen & bmod); 364 gen invmod(const gen & A,const gen & modulo); 365 gen fracmod(const gen & a_orig,const gen & modulo); // -> p/q=a mod modulo 366 bool fracmod(const gen & a_orig,const gen & modulo,gen & res); 367 gen powmod(const gen &base,const gen & expo,const gen & modulo); 368 gen isqrt(const gen & A); 369 gen re(const gen & a,giac::context *); 370 gen no_context_re(const gen & a); 371 gen im(const gen & a,giac::context *); 372 gen no_context_im(const gen & a); 373 void reim(const gen & g,gen & r,gen & i,giac::context *); 374 gen conj(const gen & a,giac::context *); 375 gen no_context_conj(const gen & a); 376 gen sq(const gen & a); 377 gen abs(const gen & a,const context * contextptr=context0); 378 // default context0 is required for instantiation in poly.h 379 gen linfnorm(const gen & a,const context * contextptr=context0); 380 // default context0 is required for instantiation in poly.h 381 gen arg(const gen & a,giac::context *); 382 gen arg_CPLX(const gen & a,giac::context *); 383 int is_perfect_square(const gen & A); 384 int is_probab_prime_p(const gen & A); 385 gen nextprime(const gen & a); // more precisely next probably prime 386 gen prevprime(const gen & a); // more precisely prev probably prime 387 int jacobi(const gen & A, const gen &B); 388 int legendre(const gen & A, const gen & B); 389 giac::vecteur pascal_next_line(const giac::vecteur & v); 390 giac::vecteur pascal_nth_line(int n); 391 // convert a __VECTOR__VECT vecteur to a normal vecteur 392 gen vector2vecteur(const giac::vecteur & v); 393 394 // if b is a _MOD, returns a as a b _MOD 395 gen chkmod(const gen& a,const gen & b); 396 // make a _MOD a%b 397 gen makemod(const gen & a,const gen & b); 398 // same without evaluating % 399 gen makemodquoted(const gen & a,const gen & b); 400 401 // from a sum in x returns a list of [coeff monomial] 402 // e.g. 5+2x+3*x*y -> [ [5 1] [2 x] [ 3 x*y] ] 403 giac::vecteur symbolique2liste(const gen & x,giac::context *); 404 // v should be sorted and shrinked 405 gen liste2symbolique(const giac::vecteur & v); 406 407 bool is_atomic(const gen & e); 408 gen string2gen(const std::string & ss,bool remove_ss_quotes=true); 409 // gen eval_VECT(const giac::vecteur & v,int subtype,int level,const context * context_ptr ); 410 gen no_context_evalf(const gen & e); 411 gen evalf(const gen & e,int level,const context * contextptr ); 412 gen evalf2bcd_nock(const gen & g0,int level,const context * contextptr); 413 gen evalf2bcd(const gen & g0,int level,const context * contextptr); 414 // return true if g can be converted to a double or real or complex 415 bool has_evalf(const gen & g,gen & res,int level,const context * contextptr); 416 double int2double(int i); 417 gen aplatir_fois_plus(const gen & g); 418 gen collect(const gen & g,giac::context *); 419 420 gen select_root(const giac::vecteur & v,giac::context * ); 421 bool is_known_rootof(const giac::vecteur & v,gen & symroot,giac::context * ); 422 gen alg_evalf(const gen & a,const gen &b,giac::context * ); 423 gen approx_rootof(const gen & e,giac::context * ); 424 gen common_EXT(gen & a,gen & b,const giac::vecteur * l,giac::context * ); 425 gen common_minimal_POLY(const gen & ga,const gen & gb, gen & a,gen & b,int &k,giac::context * ); 426 gen ext_add(const gen & a,const gen & b,giac::context * ); 427 gen ext_sub(const gen & a,const gen & b,giac::context * ); 428 gen ext_mul(const gen & a,const gen & b,giac::context * ); 429 gen symb_rootof(const gen & p,const gen &pmin,giac::context * ); 430 gen rootof(const gen & e,giac::context * ); 431 giac::vecteur sturm(const gen &g,const gen & x,giac::context * ); 432 int sturmab(const gen & g,const gen &x,const gen & a,const gen & b,giac::context * ); 433 gen _sturmab(const gen & g_orig,giac::context * ); 434 gen _sturm(const gen & g,giac::context * ); 435 gen _sturmseq(const gen & g,giac::context * ); 436 int sturmsign(const gen & a,bool strict,giac::context * ); 437 int find_range(const gen & g,giac::vecteur & a,giac::context * ); 438 gen fminmax(const gen & g,int minmax,giac::context * ); 439 gen _complexroot(const gen & g,giac::context * ); 440 gen _realroot(const gen & g,giac::context * ); 441 gen _crationalroot(const gen & g,giac::context * ); 442 gen _rationalroot(const gen & g,giac::context * ); 443 giac::vecteur symb2poly_num(const gen & g,giac::context * ); 444 gen eval_before_diff(const gen & expr,const gen & variable,giac::context * ); 445 gen derive(const gen & e,const giac::identificateur & i,giac::context * ); 446 gen derive(const gen & e,const gen & vars,giac::context * ); 447 gen derive(const gen & e,const gen & vars,const gen & nderiv,giac::context * ); 448 gen _derive(const gen & args,giac::context * ); 449 gen _function_diff(const gen & g,giac::context * ); 450 gen _grad(const gen & args,giac::context * ); 451 gen laplace(const gen & f,const gen & x,const gen & s,giac::context * ); 452 gen _laplace(const gen & args,giac::context * ); 453 gen diffeq_constante(int i,giac::context * ); 454 gen ilaplace(const gen & f,const gen & x,const gen & s,giac::context * ); 455 gen _ilaplace(const gen & args,giac::context * ); 456 gen _desolve(const gen & args,giac::context * ); 457 gen ztrans(const gen & f,const gen & x,const gen & s,giac::context * ); 458 gen _ztrans(const gen & args,giac::context * ); 459 gen invztrans(const gen & f,const gen & x,const gen & s,giac::context * ); 460 gen _invztrans(const gen & args,giac::context * ); 461 gen integrate_without_lnabs(const gen & e,const gen & x,giac::context * ); 462 gen _ezgcd(const gen & args,giac::context * ); 463 gen _modgcd(const gen & args,giac::context * ); 464 gen _heugcd(const gen & args,giac::context * ); 465 gen _psrgcd(const gen & args,giac::context * ); 466 giac::vecteur quad(int &b,const gen & q, const giac::vecteur & x,giac::context * ); 467 giac::vecteur qxa(const gen &q,const giac::vecteur & x,giac::context * ); 468 gen _q2a(const gen & args,giac::context * ); 469 giac::vecteur gauss(const gen & q,const giac::vecteur & x,giac::context * ); 470 gen _gauss(const gen & args,giac::context * ); 471 gen axq(const giac::vecteur &A,const giac::vecteur & x,giac::context * ); 472 gen _a2q(const gen & args,giac::context * ); 473 giac::vecteur qxac(const gen &q,const giac::vecteur & x,giac::context * ); 474 gen _conique_reduite(const gen & args,giac::context * ); 475 gen _quadrique_reduite(const gen & args,giac::context * ); 476 void settypeerr(giac::context * ); 477 void setsizeerr(giac::context * ); 478 void setdimerr(giac::context * ); 479 void divisionby0err(const gen &,giac::context * ); 480 void cksignerr(const gen &,giac::context * ); 481 void invalidserieserr(const std::string &,giac::context * ); 482 void toofewargs(const std::string & s,giac::context * ); 483 void toomanyargs(const std::string & s,giac::context * ); 484 void maxordererr(giac::context * ); 485 void setstabilityerr(giac::context * ); 486 gen gentypeerr(giac::context * ); 487 void gentypeerr(gen & g,giac::context * ); 488 gen gensizeerr(giac::context * ); 489 void gensizeerr(gen & g,giac::context * ); 490 gen gendimerr(giac::context * ); 491 void gendimerr(gen & g,giac::context * ); 492 gen gendivisionby0err(const gen &,giac::context * ); 493 gen gencksignerr(const gen &,giac::context * ); 494 gen geninvalidserieserr(const std::string &,giac::context * ); 495 gen gentoofewargs(const std::string & s,giac::context * ); 496 gen gentoomanyargs(const std::string & s,giac::context * ); 497 gen genmaxordererr(giac::context * ); 498 gen genstabilityerr(giac::context * ); 499 std::string print_the_type(int val,giac::context * ); 500 std::string printinner_VECT(const giac::vecteur & v, int subtype,giac::context * ); 501 std::string & add_printinner_VECT(std::string & s,const giac::vecteur &v,int subtype,giac::context * ); 502 std::string begin_VECT_string(int subtype,bool tex,giac::context * ); 503 std::string end_VECT_string(int subtype,bool tex,giac::context * ); 504 std::string print_VECT(const giac::vecteur & v,int subtype,giac::context * ); // subtype was 0 by default 505 // std::string print_SPOL1(const giac::sparse_poly1 & p,giac::context * ); 506 std::string printint32(int val,int subtype,giac::context * ); 507 std::string print_FLOAT_(const giac_float & f,giac::context * ); 508 gen parsed_gen(giac::context * ); 509 void parsed_gen(const gen & g,giac::context * ); 510 unsigned archive_count(const gen & g,giac::context * ); 511 bool archive_save(void * f,const gen & g,giac::context * ); 512 gen archive_restore(FILE * f,giac::context * ); 513 gen _ithprime(const gen & args,giac::context * ); 514 gen _ifactors(const gen & args,giac::context * ); 515 gen _maple_ifactors(const gen & args,giac::context * ); 516 giac::vecteur ifactors(const gen & n0,giac::context * ); 517 gen ifactors(const gen & args,int maplemode,giac::context * ); 518 giac::vecteur factors(const gen & g,const gen & x,giac::context * ); 519 gen _factors(const gen & args,giac::context * ); 520 gen _divis(const gen & args,giac::context * ); 521 gen idivis(const gen & n,giac::context * ); 522 gen _idivis(const gen & args,giac::context * ); 523 giac::vecteur pfacprem(gen & n,bool addlast,giac::context * ); 524 gen ifactor(const gen & n,giac::context * ); 525 gen _ifactor(const gen & args,giac::context * ); 526 gen euler(const gen & e,giac::context * ); 527 gen _euler(const gen & args,giac::context * ); 528 gen pa2b2(const gen & p,giac::context * ); 529 gen _pa2b2(const gen & args,giac::context * ); 530 gen _propfrac(const gen & args,giac::context * ); 531 gen _iabcuv(const gen & args,giac::context * ); 532 gen abcuv(const gen & a,const gen & b,const gen & c,const gen & x,giac::context * ); 533 gen _abcuv(const gen & args,giac::context * ); 534 gen simp2(const gen & a,const gen & b,giac::context * ); 535 gen _simp2(const gen & args,giac::context * ); 536 gen _fxnd(const gen & args,giac::context * ); 537 int is_meromorphic(const gen & g,const gen & x,gen &a,gen &b,gen & P,giac::context * ); 538 int is_even_odd(const gen & f,const gen & x,giac::context * ); 539 gen residue(const gen & g,const gen & x,const gen & a,giac::context * ); 540 gen _residue(const gen & args,giac::context * ); 541 bool intgab(const gen & g,const gen & x,const gen & a,const gen & b,gen & res,giac::context * ); 542 giac::vecteur singular(const gen & g,const gen & x,giac::context * ); 543 gen _singular(const gen & args,giac::context * ); 544 gen complex_subst(const gen & e,const giac::vecteur & substin,const giac::vecteur & substout,giac::context * ); 545 gen complex_subst(const gen & e,const gen & x,const gen & newx,giac::context * ); 546 giac::vecteur lvarxwithinv(const gen &e,const gen & x,giac::context * ); 547 bool is_constant_wrt(const gen & e,const gen & x,giac::context * ); 548 bool is_linear_wrt(const gen & e,const gen &x,gen & a,gen & b,giac::context * ); 549 bool is_quadratic_wrt(const gen & e,const gen &x,gen & a,gen & b,gen & c,giac::context * ); 550 gen lnabs(const gen & x,giac::context * ); 551 gen surd(const gen & c,int n,giac::context * ); 552 gen _surd(const gen & args,giac::context * ); 553 gen invexptoexpneg(const gen& g,giac::context * ); 554 bool is_rewritable_as_f_of(const gen & fu,const gen & u,gen & fx,const gen & gen_x,giac::context * ); 555 bool intgab_ratfrac(const gen & e,const gen & x,gen & value,giac::context * ); 556 gen integrate_gen_rem(const gen & e, const gen & x, gen & remains_to_integrate,giac::context * ); 557 gen integrate_id_rem(const gen & e, const gen & x, gen & remains_to_integrate,giac::context * ); 558 gen linear_integrate(const gen & e,const gen & x,gen & remains_to_integrate,giac::context * ); 559 gen integrate_id(const gen & e,const giac::identificateur & x,giac::context * ); 560 gen integrate_gen(const gen & e,const gen & f,giac::context * ); 561 gen _integrate(const gen & args,giac::context * ); 562 double rombergo(const gen & f,const gen & x, const gen & a, const gen & b, int n,giac::context * ); 563 double rombergt(const gen & f,const gen & x, const gen & a, const gen & b, int n,giac::context * ); 564 gen _romberg(const gen & args,giac::context * ); 565 gen sum(const gen & e,const gen & x,gen & remains_to_sum,giac::context * ); 566 gen sum_loop(const gen & e,const gen & x,int i,int j,giac::context * ); 567 gen sum(const gen & e,const gen & x,const gen & a,const gen &b,giac::context * ); 568 gen _sum(const gen & args,giac::context * ) ; 569 gen _Sum(const gen & args,giac::context * ) ; 570 gen _bernoulli(const gen & args,giac::context * ) ; 571 gen seqprod(const gen & g,int type,giac::context * ); 572 gen sum(const gen & e,const gen & x,gen & remains_to_sum,giac::context * ); 573 gen sum(const gen & e,const gen & x,const gen & a,const gen &b,giac::context * ); 574 gen _sum(const gen & args,giac::context * ); 575 gen sum_loop(const gen & e,const gen & x,int i,int j,giac::context * ); 576 gen _bernoulli(const gen & args,giac::context * ); 577 gen _odesolve(const gen & args,giac::context * ); 578 gen preval(const gen & f,const gen & x,const gen & a,const gen & b,giac::context * ); 579 gen _ibpdv(const gen & args,giac::context * ); 580 gen fourier_an(const gen & f,const gen & x,const gen & T,const gen & n,const gen & a,giac::context * ); 581 gen fourier_bn(const gen & f,const gen & x,const gen & T,const gen & n,const gen & a,giac::context * ); 582 gen fourier_cn(const gen & f,const gen & x,const gen & T,const gen & n,const gen & a,giac::context * ); 583 gen _fourier_an(const gen & args,giac::context * ); 584 gen _fourier_bn(const gen & args,giac::context * ); 585 gen _fourier_cn(const gen & args,giac::context * ); 586 gen _isom(const gen & args,giac::context * ); 587 gen _mkisom(const gen & args,giac::context * ); 588 giac::vecteur mkisom(const gen & n,int b,giac::context * ); 589 gen prod_expand(const gen & a,const gen & b,giac::context * ); 590 gen unlin(giac::vecteur & v,giac::context * ); 591 void convolution(const gen & coeff, const gen & arg,const giac::vecteur & w,giac::vecteur & res,giac::context * ); 592 void lin(const gen & e,giac::vecteur & v,giac::context * ); 593 gen _lin(const gen & e,giac::context * ); 594 gen lnexpand(const gen & e,giac::context * ); 595 gen tunlin(giac::vecteur & v,giac::context * ); 596 void tconvolution(const gen & coeff, const gen & arg,const giac::vecteur & w,giac::vecteur & res,giac::context * ); 597 void tlin(const gen & e,giac::vecteur & v,giac::context * ); 598 gen _tlin(const gen & e,giac::context * ); 599 gen _texpand(const gen & e,giac::context * ); 600 gen expand(const gen & e,giac::context * ); 601 gen ln_expand(const gen & e0,giac::context * ); 602 gen _texpand(const gen & args,giac::context * ); 603 gen expexpand(const gen & e,giac::context * ); 604 gen lnexpand(const gen & e,giac::context * ); 605 gen trigexpand(const gen & e,giac::context * ); 606 gen _about(const gen & g,giac::context * ); 607 gen _zip(const gen & args,giac::context * ); 608 gen _accumulate_head_tail(const gen & args,giac::context * ); 609 gen _divide(const gen & g,giac::context * ); 610 gen _ratnormal(const gen & g,giac::context * ); 611 gen _about(const gen & g,giac::context * ); 612 gen _inverse(const gen & a_orig,giac::context * ); 613 gen _Inverse(const gen & g,giac::context * ); 614 gen _igcdex(const gen & a_orig,giac::context * ); 615 gen _gcdex(const gen & a_orig,giac::context * ); 616 gen _revlist(const gen & a,giac::context * ); 617 gen _restart(const gen & args,giac::context * ); 618 gen _restart_modes(const gen & args,giac::context * ); 619 gen _time(const gen & a,giac::context * ); 620 gen _cat(const gen & a_orig,giac::context * ); 621 gen _pivot(const gen & a_orig,giac::context * ); 622 gen _rowspace(const gen & g,giac::context * ); 623 gen _colspace(const gen & g,giac::context * ); 624 gen _copy(const gen & g,giac::context * ); 625 gen _row(const gen & g,giac::context * ); 626 gen _col(const gen & g,giac::context * ); 627 gen _count_sup(const gen & args,giac::context * ); 628 gen _count_inf(const gen & args,giac::context * ); 629 gen _trunc(const gen & args,giac::context * ); 630 gen _evalc(const gen & g,giac::context * ); 631 gen _open(const gen & g,giac::context * ); 632 gen _fopen(const gen & g,giac::context * ); 633 gen _fprint(const gen & g,giac::context * ); 634 gen _close(const gen & g,giac::context * ); 635 gen _blockmatrix(const gen & g,giac::context * ); 636 gen _delcols(const gen & g,giac::context * ); 637 gen _delrows(const gen & g,giac::context * ); 638 gen _JordanBlock(const gen & g,giac::context * ); 639 gen _companion(const gen & g,giac::context * ); 640 gen _border(const gen & g,giac::context * ); 641 gen _pade(const gen & g,giac::context * ); 642 gen _lhs(const gen & g,giac::context * ); 643 gen _rhs(const gen & g,giac::context * ); 644 gen _reverse_rsolve(const gen & g,giac::context * ); 645 gen fft(const gen & g_orig,int direct,giac::context * ); 646 gen _fft(const gen & g,giac::context * ); 647 gen _ifft(const gen & g,giac::context * ); 648 gen _Resultant(const gen & g,giac::context * ); 649 gen _Nullspace(const gen & g,giac::context * ); 650 gen _assign(const gen & g,giac::context * ); 651 gen _implicitplot3d(const gen & g,giac::context * ); 652 gen _readwav(const gen & g,giac::context * ); 653 gen _writewav(const gen & g,giac::context * ); 654 gen _animate(const gen & g,giac::context * ); 655 gen _animate3d(const gen & g,giac::context * ); 656 gen _even(const gen & g,giac::context * ); 657 gen _odd(const gen & g,giac::context * ); 658 gen _writergb(const gen & g,giac::context * ); 659 gen _readrgb(const gen & g,giac::context * ); 660 gen product(const giac::polynome & P,const giac::vecteur & v,const gen & n,gen & remains,giac::context * ); 661 gen _seqsolve(const gen & args,giac::context * ); 662 gen _rsolve(const gen & args,giac::context * ); 663 gen _array(const gen & g,giac::context * ); 664 gen _makemod(const gen & args,giac::context * ); 665 gen _hexprint(const gen & g,giac::context * ); 666 gen _octprint(const gen & g,giac::context * ); 667 gen _binprint(const gen & g,giac::context * ); 668 std::string cprint(const gen & args,giac::context * ); 669 gen _mathml(const gen & g,giac::context * ); 670 gen _spread2mathml(const gen & g,giac::context * ); 671 std::string gen2mathml(const gen & e,giac::context * ); 672 std::string gen2mathml(const gen & e, std::string &svg,giac::context * ); 673 std::string gen2svg(const gen &e,giac::context * ); 674 gen _scalar_product(const gen & args,giac::context * ); 675 gen _compare(const gen & args,giac::context * ); 676 gen _preval(const gen & args,giac::context * ); 677 gen _lagrange(const gen & args,giac::context * ); 678 gen _reorder(const gen & args,giac::context * ); 679 gen _adjoint_matrix(const gen & args,giac::context * ); 680 gen _equal2diff(const gen & args,giac::context * ); 681 gen _equal2list(const gen & args,giac::context * ); 682 gen _rank(const gen & args,giac::context * ); 683 gen _csc(const gen & args,giac::context * ); 684 gen _cot(const gen & args,giac::context * ); 685 gen _acsc(const gen & args,giac::context * ); 686 gen _ibpu(const gen & args,giac::context * ) ; 687 gen _changebase(const gen & args,giac::context * ); 688 gen _epsilon2zero(const gen & args,giac::context * ); 689 gen _suppress(const gen & args,giac::context * ); 690 gen _valuation(const gen & args,giac::context * ); 691 gen _degree(const gen & args,giac::context * ); 692 gen _lcoeff(const gen & args,giac::context * ); 693 gen _tcoeff(const gen & args,giac::context * ); 694 gen _sqrfree(const gen & args,giac::context * ); 695 gen _truncate(const gen & args,giac::context * ); 696 gen _canonical_form(const gen & args,giac::context * ); 697 gen _fcoeff(const gen & args,giac::context * ); 698 gen _froot(const gen & args,giac::context * ); 699 gen _roots(const gen & g,giac::context * ); 700 gen _divpc(const gen & args,giac::context * ); 701 gen _ptayl(const gen & args,giac::context * ); 702 gen _dfc(const gen & g_orig,giac::context * ); 703 gen _dfc2f(const gen & g,giac::context * ); 704 gen _float2rational(const gen & g,giac::context * ); 705 gen _gramschmidt(const gen & g,giac::context * ); 706 gen _pmin(const gen & g,giac::context * ); 707 gen _potential(const gen & g,giac::context * ); 708 gen _vpotential(const gen & g,giac::context * ); 709 gen _poly2symb(const gen & g,giac::context * ); 710 gen _symb2poly(const gen & g,giac::context * ); 711 gen _exp2trig(const gen & g,giac::context * ); 712 gen _nrows(const gen & g,giac::context * ); 713 gen _ncols(const gen & g,giac::context * ); 714 gen _l2norm(const gen & g0,giac::context * ); 715 gen _normalize(const gen & a,giac::context * ); 716 gen _lgcd(const gen & g,giac::context * ); 717 gen _float(const gen & g,giac::context * ); 718 gen _hold(const gen & g,giac::context * ); 719 gen _eigenvals(const gen & g,giac::context * ); 720 gen _Gcd(const gen & g,giac::context * ); 721 gen _Gcdex(const gen & g,giac::context * ); 722 gen _Factor(const gen & g,giac::context * ); 723 gen _Rref(const gen & g,giac::context * ); 724 gen _Rank(const gen & g,giac::context * ); 725 gen _Det(const gen & g,giac::context * ); 726 gen _Quo(const gen & g,giac::context * ); 727 gen _Rem(const gen & g,giac::context * ); 728 gen _Int(const gen & g,giac::context * ); 729 gen _divisors(const gen & g,giac::context * ); 730 gen _maxnorm(const gen & g0,giac::context * ); 731 gen _l1norm(const gen & g0,giac::context * ); 732 gen _dotprod(const gen & g,giac::context * ); 733 gen _diag(const gen & g,giac::context * ); 734 gen _input(const gen & args,giac::context * ); 735 gen _textinput(const gen & args,giac::context * ); 736 gen _primpart(const gen & g,giac::context * ); 737 gen _content(const gen & g,giac::context * ); 738 gen _coeff(const gen & g,giac::context * ); 739 gen _chrem(const gen & g,giac::context * ); 740 gen _genpoly(const gen & g,giac::context * ); 741 gen _median(const gen & g,giac::context * ); 742 gen _quartile1(const gen & g,giac::context * ); 743 gen _quartile3(const gen & g,giac::context * ); 744 gen _quantile(const gen & g,giac::context * ); 745 gen _quartiles(const gen & g,giac::context * ); 746 gen _moustache(const gen & g_orig,giac::context * ); 747 gen _mean(const gen & g,giac::context * ); 748 gen _stdDev(const gen & g,giac::context * ); 749 gen _stddev(const gen & g,giac::context * ); 750 gen _variance(const gen & g,giac::context * ); 751 gen _covariance_correlation(const gen & g,giac::context * ); 752 gen _covariance(const gen & g,giac::context * ); 753 gen _correlation(const gen & g,giac::context * ); 754 gen _interval2center(const gen & g,giac::context * ); 755 gen _linear_regression(const gen & g,giac::context * ); 756 gen _exponential_regression(const gen & g,giac::context * ); 757 gen _power_regression(const gen & g,giac::context * ); 758 gen regression_plot_attributs(const gen & g,giac::vecteur & attributs,bool & eq,bool & r,giac::context * ); 759 gen _linear_regression_plot(const gen & g,giac::context * ); 760 gen _exponential_regression_plot(const gen & g,giac::context * ); 761 gen _logarithmic_regression_plot(const gen & g,giac::context * ); 762 gen _power_regression_plot(const gen & g,giac::context * ); 763 gen _polynomial_regression(const gen & g,giac::context * ); 764 gen _polynomial_regression_plot(const gen & g,giac::context * ); 765 gen _logistic_regression(const gen & g,giac::context * ); 766 gen _logistic_regression_plot(const gen & g,giac::context * ); 767 gen _linear_interpolate(const gen & g,giac::context * ); 768 gen _parabolic_interpolate(const gen & g,giac::context * ); 769 gen _center2interval(const gen & g,giac::context * ); 770 gen _histogram(const gen & g,giac::context * ); 771 gen _cumulated_frequencies(const gen & g,giac::context * ); 772 gen _classes(const gen & g,giac::context * ); 773 gen _listplot(const gen & g,giac::context * ); 774 gen _scatterplot(const gen & g,giac::context * ); 775 gen _polygonplot(const gen & g,giac::context * ); 776 gen _polygonscatterplot(const gen & g,giac::context * ); 777 gen _diagramme_batons(const gen & g,giac::context * ); 778 gen _camembert(const gen & g,giac::context * ); 779 gen cross_prod(const gen & a,const gen & b,const gen & c,giac::context * ); 780 gen _convexhull(const gen & g,giac::context * ); 781 gen _simplex_reduce(const gen & g,giac::context * ); 782 gen _spline(const gen & g,giac::context * ); 783 gen _bitand(const gen & g,giac::context * ); 784 gen _bitor(const gen & g,giac::context * ); 785 gen _bitxor(const gen & g,giac::context * ); 786 gen _hamdist(const gen & g,giac::context * ); 787 gen _plotarea(const gen & g,giac::context * ); 788 gen _add_language(const gen & args,giac::context * ); 789 gen _remove_language(const gen & args,giac::context * ); 790 gen _show_language(const gen & args,giac::context * ); 791 gen _os_version(const gen & args,giac::context * ); 792 giac::vecteur gen2continued_fraction(const gen & g,int n,giac::context * ); 793 gen float2rational(double d_orig,double eps,giac::context * ); 794 gen _sec(const gen & args,giac::context * ); 795 gen _asec(const gen & args,giac::context * ); 796 gen _acsc(const gen & args,giac::context * ); 797 gen _csc(const gen & args,giac::context * ); 798 gen _acot(const gen & args,giac::context * ); 799 gen _cot(const gen & args,giac::context * ); 800 gen _horner(const gen & args,giac::context * ); 801 gen _moyal(const gen & args,giac::context * ); 802 gen _Airy_Ai(const gen & args,giac::context * ); 803 gen _Airy_Bi(const gen & args,giac::context * ); 804 gen _randNorm(const gen & args,giac::context * ); 805 gen _randexp(const gen & args,giac::context * ); 806 gen _UTPN(const gen & args,giac::context * ); 807 gen UTPC(const gen & n_orig,const gen & x0,giac::context * ); 808 gen _UTPC(const gen & args,giac::context * ); 809 gen UTPT(const gen & n_orig,const gen & x0,giac::context * ); 810 gen _UTPT(const gen & args,giac::context * ); 811 gen UTPF(const gen & num,const gen & den,const gen & x0,giac::context * ); 812 gen _UTPF(const gen & args,giac::context * ); 813 gen binomial(const gen & n,const gen & k,const gen & p,giac::context * ); 814 gen _binomial(const gen & args,giac::context * ); 815 gen binomial_cdf(const gen & n,const gen &p,const gen & x0,const gen & x,giac::context * ); 816 gen _binomial_cdf(const gen & args,giac::context * ); 817 gen binomial_icdf(const gen & n,const gen &p,const gen & x_orig,giac::context * ); 818 gen _binomial_icdf(const gen & args,giac::context * ); 819 gen poisson(const gen & m,const gen & k,giac::context * ); 820 gen _poisson(const gen & args,giac::context * ); 821 gen poisson_cdf(const gen & n,const gen & x,giac::context * ); 822 gen _poisson_cdf(const gen & args,giac::context * ); 823 gen poisson_icdf(const gen & m,const gen & t_orig,giac::context * ); 824 gen _poisson_icdf(const gen & args,giac::context * ); 825 gen _normald(const gen & g,giac::context * ); 826 gen _normal_cdf(const gen & args,giac::context * ); 827 gen _normal_icdf(const gen & args,giac::context * ); 828 gen student(const gen & n,const gen & x,giac::context * ); 829 gen _student(const gen & args,giac::context * ); 830 gen student_cdf(const gen & dof,const gen & x1,const gen & x2,giac::context * ); 831 gen _student_cdf(const gen & args,giac::context * ); 832 gen student_icdf(const gen & m,const gen & t_orig,giac::context * ); 833 gen _student_icdf(const gen & args,giac::context * ); 834 gen chisquare(const gen & n,const gen & x,giac::context * ); 835 gen _chisquare(const gen & args,giac::context * ); 836 gen chisquare_cdf(const gen & dof,const gen & x1,const gen & x2,giac::context * ); 837 gen _chisquare_cdf(const gen & args,giac::context * ); 838 gen chisquare_icdf(const gen & m,const gen & t_orig,giac::context * ); 839 gen _chisquare_icdf(const gen & args,giac::context * ); 840 gen snedecor(const gen & a,const gen & b,const gen & x,giac::context * ); 841 gen _snedecor(const gen & args,giac::context * ); 842 gen snedecor_cdf(const gen & ndof,const gen & ddof,const gen & x,giac::context * ); 843 gen _snedecor_cdf(const gen & args,giac::context * ); 844 gen snedecor_icdf(const gen & num,const gen & den,const gen & t_orig,giac::context * ); 845 gen _snedecor_icdf(const gen & args,giac::context * ); 846 gen Beta(const gen & a,const gen& b,giac::context * ); 847 gen _Beta(const gen & args,giac::context * ); 848 gen Bessel(const gen & g,int kind,giac::context * ); 849 gen _BesselI(const gen & args,giac::context * ); 850 gen _BesselJ(const gen & args,giac::context * ); 851 gen _BesselK(const gen & args,giac::context * ); 852 gen _BesselY(const gen & args,giac::context * ); 853 gen _constants_catalog(const gen & g,giac::context * ); 854 // std::string pariprint(const gen & e,int varnum,giac::context * ); 855 // GEN gen2GEN(const gen & e,const giac::vecteur & vars,giac::context * ); 856 gen _pari(const gen & args,giac::context * ); 857 gen _trn(const gen & args,giac::context * ); 858 gen _sizes(const gen & args,giac::context * ); 859 gen _permuorder(const gen & args,giac::context * ); 860 gen _randperm(const gen & args,giac::context * ); 861 gen _is_permu(const gen & args,giac::context * ); 862 gen _is_cycle(const gen & args,giac::context * ); 863 gen _cycle2perm(const gen & args,giac::context * ); 864 gen _p1op2(const gen & args,giac::context * ); 865 gen _c1oc2(const gen & args,giac::context * ); 866 gen _c1op2(const gen & args,giac::context * ); 867 gen _p1oc2(const gen & args,giac::context * ); 868 gen _cycles2permu(const gen & args,giac::context * ); 869 gen _permu2cycles(const gen & args,giac::context * ); 870 gen _perminv(const gen & args,giac::context * ); 871 gen _cycleinv(const gen & args,giac::context * ); 872 gen _signature(const gen & args,giac::context * ); 873 gen _randperm(const gen & args,giac::context * ); 874 gen _hilbert(const gen & args,giac::context * ); 875 gen _hadamard(const gen & args,giac::context * ); 876 gen _trn(const gen & args,giac::context * ); 877 gen _syst2mat(const gen & args,giac::context * ); 878 gen _vandermonde(const gen & args,giac::context * ); 879 gen _laplacian(const gen & args,giac::context * ); 880 gen _hessian(const gen & args,giac::context * ); 881 gen _divergence(const gen & args,giac::context * ); 882 gen _curl(const gen & args,giac::context * ); 883 gen _groupermu(const gen & args,giac::context * ); 884 gen _nextperm(const gen & args,giac::context * ); 885 gen _prevperm(const gen & args,giac::context * ); 886 gen _split(const gen & args,giac::context * ); 887 gen _sum_riemann(const gen & args,giac::context * ); 888 gen _divergence(const gen &,giac::context * ); 889 gen _hermite(const gen & args,giac::context * ); 890 gen _laguerre(const gen & args,giac::context * ); 891 gen _tchebyshev1(const gen & args,giac::context * ); 892 gen _tchebyshev2(const gen & args,giac::context * ); 893 gen _legendre(const gen & args,giac::context * ); 894 gen _curl(const gen & args,giac::context * ); 895 gen _permu2mat(const gen & args,giac::context * ); // permutation vector -> matrix 896 giac::vecteur interpolyedre(const giac::vecteur & p,const gen & bb,giac::context * ); 897 giac::vecteur interdroitehyperplan(const gen & a,const gen &b,giac::context * ); 898 giac::vecteur interhyperplan(const gen & p1,const gen & p2,giac::context * ); 899 giac::vecteur interhypersurfacecurve(const gen & a,const gen &b,giac::context * ); 900 giac::vecteur inter2hypersurface(const gen & a,const gen &b,giac::context * ); 901 giac::vecteur interplansphere(const gen & a,const gen & b,giac::context * ); 902 gen hypersurface_equation(const gen & g,const giac::vecteur & xyz,giac::context * ); 903 gen _plot3d(const gen & args,giac::context * ); 904 gen _hypersurface(const gen & args,giac::context * ); 905 gen hypersurface_equation(const gen & g,const giac::vecteur & xyz,giac::context * ); 906 gen _hyperplan(const gen & args,giac::context * ); 907 gen _plan(const gen & args,giac::context * ); 908 gen _cone(const gen & args,giac::context * ); 909 gen _demi_cone(const gen & args,giac::context * ); 910 gen _cylindre(const gen & args,giac::context * ); 911 gen _perpendiculaire_commune(const gen & args,giac::context * ); 912 gen _polyedre(const gen & args,giac::context * ); 913 gen _prisme(const gen & args,giac::context * ); 914 gen _parallelepipede(const gen & args,giac::context * ); 915 gen _pyramide(const gen & args,giac::context * ); 916 gen _tetraedre_centre(const gen & args,giac::context * ); 917 gen _cube(const gen & args,giac::context * ); 918 gen _cube_centre(const gen & args,giac::context * ); 919 gen _octaedre(const gen & args,giac::context * ); 920 gen _icosaedre(const gen & args,giac::context * ); 921 gen _dodecaedre(const gen & args,giac::context * ); 922 gen _aretes(const gen & args,giac::context * ); 923 gen _faces(const gen & args,giac::context * ); 924 gen _hypersphere(const gen & args,giac::context * ); 925 gen _sphere(const gen & args,giac::context * ); 926 gen _quadrique(const gen & args,giac::context * ); 927 gen _est_cospherique(const gen & args,giac::context * ); 928 gen get_point(const gen & g,int n,giac::context * ); 929 gen _point3d(const gen & args,giac::context * ); 930 gen _point2d(const gen & args,giac::context * ); 931 gen mkrand2d3d(int dim,int nargs,gen (* f)(const gen &,const context *),giac::context * ); 932 gen droite_by_equation(const giac::vecteur & v,bool est_plan,giac::context * ); 933 bool point2abc(const gen & e,const gen & f,gen & a,gen & b,gen & c,giac::context * ); 934 gen abs_norm(const gen & g,giac::context * ); 935 gen abs_norm2(const gen & g,giac::context * ); 936 gen dotgiac::vecteur(const gen & a,const gen & b,giac::context * ); 937 giac::vecteur interpolygone(const giac::vecteur & p,const gen & bb,giac::context * ); 938 giac::vecteur interdroitecercle(const gen & a,const gen &b,giac::context * ); 939 giac::vecteur curveintercircle(const gen & curve,const gen &circle,bool iscircle,giac::context * ); 940 gen _avance(const gen & g,giac::context * ); 941 gen _recule(const gen & g,giac::context * ); 942 gen _position(const gen & g,giac::context * ); 943 gen _cap(const gen & g,giac::context * ); 944 gen _tourne_droite(const gen & g,giac::context * ); 945 gen _tourne_gauche(const gen & g,giac::context * ); 946 gen _leve_crayon(const gen & g,giac::context * ); 947 gen _baisse_crayon(const gen & g,giac::context * ); 948 gen _ecris(const gen & g,giac::context * ); 949 gen _signe(const gen & g,giac::context * ); 950 gen _saute(const gen & g,giac::context * ); 951 gen _pas_de_cote(const gen & g,giac::context * ); 952 gen _cache_tortue(const gen & g,giac::context * ); 953 gen _montre_tortue(const gen & g,giac::context * ); 954 gen _debut_enregistrement(const gen & g0,giac::context * ); 955 gen _fin_enregistrement(const gen & g0,giac::context * ); 956 gen _repete(const gen & g,giac::context * ); 957 gen _crayon(const gen & g,giac::context * ); 958 gen _efface(const gen & g,giac::context * ); 959 gen _vers(const gen & g,giac::context * ); 960 gen _rond(const gen & g,giac::context * ); 961 gen _disque(const gen & g,giac::context * ); 962 gen _disque_centre(const gen & g,giac::context * ); 963 gen _polygone_rempli(const gen & g,giac::context * ); 964 gen _rectangle_plein(const gen & g,giac::context * ); 965 gen _triangle_plein(const gen & g,giac::context * ); 966 gen _dessine_tortue(const gen & g,giac::context * ); 967 gen _arc(const gen & args,giac::context * ); 968 giac::vecteur plotpreprocess(const gen & args,giac::context * ); 969 bool chk_double_interval(const gen & g,double & inf,double & sup,giac::context * ); 970 void ck_parameter(const gen & ,giac::context * ); 971 gen _erase3d(const gen & args,giac::context * ); 972 void rewrite_with_t_real(gen & eq,const gen & t,giac::context * ); 973 bool on(const gen & e_orig,const gen & f,gen & t,giac::context * ); 974 gen plotcontour(const gen & f0,bool contour,giac::context * ); 975 gen _aire(const gen & args,giac::context * ); 976 gen _perimetre(const gen & args,giac::context * ); 977 gen _plotfunc(const gen &,giac::context * ); 978 gen _erase(const gen & args,giac::context * ); 979 gen _pixon(const gen & args,giac::context * ); 980 gen _pixoff(const gen & args,giac::context * ); 981 gen _droite(const gen & args,giac::context * ); 982 gen _slope(const gen & args,giac::context * ); 983 gen _demi_droite(const gen & args,giac::context * ); 984 gen _segment(const gen & args,giac::context * ); 985 gen symb_segment(const gen & x,const gen & y,const giac::vecteur & ,int ,giac::context * ); 986 gen symb_pnt_name(const gen & x,const gen & c,const gen & nom,giac::context * ); 987 gen symb_pnt(const gen & x,const gen & c,giac::context * ); 988 gen pnt_attrib(const gen & point,const giac::vecteur & attributs,giac::context * ); 989 gen symb_pnt(const gen & x,giac::context * ); 990 gen _pnt(const gen & args,giac::context * ); 991 gen _animation(const gen & args,giac::context * ); 992 gen _point(const gen & args,giac::context * ); 993 gen _affixe(const gen & args,giac::context * ); 994 gen _abscisse(const gen & args,giac::context * ); 995 gen _ordonnee(const gen & args,giac::context * ); 996 gen _cote(const gen & args,giac::context * ); 997 gen _coordonnees(const gen & args,giac::context * ); 998 gen _coordonnees_polaires(const gen & args,giac::context * ); 999 gen _coordonnees_rectangulaires(const gen & args,giac::context * ); 1000 gen _point_polaire(const gen & args,giac::context * ); 1001 gen _cercle(const gen & args,giac::context * ); 1002 bool centre_rayon(const gen & cercle,gen & centre,gen & rayon,bool absrayon, giac::context * ); 1003 gen _centre(const gen & args,giac::context * ); 1004 gen _rayon(const gen & args,giac::context * ); 1005 gen _milieu(const gen & args,giac::context * ); 1006 gen _mediatrice(const gen & args,giac::context * ); 1007 gen bissectrice(const gen & args,bool interieur,giac::context * ); 1008 gen _bissectrice(const gen & args,giac::context * ); 1009 gen _exbissectrice(const gen & args,giac::context * ); 1010 gen _mediane(const gen & args,giac::context * ); 1011 gen _circonscrit(const gen & args,giac::context * ); 1012 gen _orthocentre(const gen & arg_orig,giac::context * ); 1013 gen _inscrit(const gen & args,giac::context * ); 1014 gen _exinscrit(const gen & args,giac::context * ); 1015 gen _isobarycentre(const gen & args,giac::context * ); 1016 gen _barycentre(const gen & args,giac::context * ); 1017 gen perpendiculaire(const gen & args,bool suppl,giac::context * ); 1018 gen _perpendiculaire(const gen & args,giac::context * ); 1019 gen _orthogonal(const gen & args,giac::context * ); 1020 gen _mediatrice(const gen & args,giac::context * ); 1021 gen _parallele(const gen & args,giac::context * ); 1022 gen distance2pp(const gen & ee,const gen & ff,giac::context * ); 1023 gen distance2(const gen & f1,const gen & f2,giac::context * ); 1024 gen _longueur2(const gen & args,giac::context * ); 1025 // gen longueur(const gen & f1,const gen & f2,giac::context * ); 1026 gen _longueur(const gen & args,giac::context * ); 1027 // gen angle(const gen & f1,const gen & f2,giac::context * ); 1028 gen _angle(const gen & args,giac::context * ); 1029 gen scalar_product(const gen & a,const gen & b,giac::context * ); 1030 gen projection(const gen & a,const gen & b,const gen & c,giac::context * ); 1031 gen projection(const gen & e,const gen & p,giac::context * ); 1032 gen parameter2point(const giac::vecteur & v,giac::context * ); 1033 gen cercle2curve(const gen & f,giac::context * ); 1034 giac::vecteur inter(const gen & a,const gen & b,giac::context * ); 1035 gen _click(const gen & args,giac::context * ); 1036 gen _element(const gen & args,giac::context * ); 1037 gen _as_function_of(const gen & args,giac::context * ); 1038 gen _lieu(const gen & args,giac::context * ); 1039 gen _head(const gen & args,giac::context * ); 1040 gen _tail(const gen & args,giac::context * ); 1041 gen _sommets(const gen & args,giac::context * ); 1042 gen _sommets_abca(const gen & args,giac::context * ); 1043 gen _symetrie(const gen & args,giac::context * ); 1044 gen _rotation(const gen & args,giac::context * ); 1045 gen _projection(const gen & args,giac::context * ); 1046 gen _homothetie(const gen & args,giac::context * ); 1047 gen _est_coplanaire(const gen & args,giac::context * ); 1048 gen _est_aligne(const gen & args,giac::context * ); 1049 gen _est_cocyclique(const gen & args,giac::context * ); 1050 gen _est_parallele(const gen & args,giac::context * ); 1051 gen _est_perpendiculaire(const gen & args,giac::context * ); 1052 gen _est_element(const gen & args,giac::context * ); 1053 gen _inversion(const gen & args,giac::context * ); 1054 gen _similitude(const gen & args,giac::context * ); 1055 gen translation(const gen & a,const gen & bb,giac::context * ); 1056 gen _translation(const gen & args,giac::context * ); 1057 gen _curve(const gen & args,giac::context * ); 1058 gen _plotparam(const gen & args,giac::context * ); 1059 gen _plotpolar(const gen & args,giac::context * ); 1060 gen _parameq(const gen & args,giac::context * ); 1061 gen _equation(const gen & args,giac::context * ); 1062 gen equation_homogene(const gen & eq,giac::context * ); 1063 gen _tangent(const gen & args,giac::context * ); 1064 gen _ellipse(const gen & args,giac::context * ); 1065 gen _hyperbole(const gen & args,giac::context * ); 1066 gen _parabole(const gen & args,giac::context * ); 1067 gen _conique(const gen & args,giac::context * ); 1068 gen _legende(const gen & args,giac::context * ); 1069 gen _distanceat(const gen & args,giac::context * ); 1070 gen _distanceatraw(const gen & args,giac::context * ); 1071 gen _areaatraw(const gen & args,giac::context * ); 1072 gen _areaat(const gen & args,giac::context * ); 1073 gen _slopeatraw(const gen & args,giac::context * ); 1074 gen _slopeat(const gen & args,giac::context * ); 1075 gen _perimeterat(const gen & args,giac::context * ); 1076 gen _perimeteratraw(const gen & args,giac::context * ); 1077 gen _extract_measure(const gen & valeur,giac::context * ); 1078 gen _angleat(const gen & args,giac::context * ); 1079 gen _angleatraw(const gen & args,giac::context * ); 1080 gen _couleur(const gen & args,giac::context * ); 1081 gen _parameter(const gen & args,giac::context * ); 1082 gen _hauteur(const gen & args,giac::context * ); 1083 gen _triangle(const gen & args,giac::context * ); 1084 gen _triangle_rectangle(const gen & args,giac::context * ); 1085 gen _triangle_isocele(const gen & args,giac::context * ); 1086 gen _triangle_equilateral(const gen & args,giac::context * ); 1087 gen _parallelogramme(const gen & args,giac::context * ); 1088 gen _isopolygone(const gen & args,giac::context * ); 1089 gen _carre(const gen & args,giac::context * ); 1090 gen _hexagone(const gen & args,giac::context * ); 1091 gen _quadrilatere(const gen & args,giac::context * ); 1092 gen _rectangle(const gen & args,giac::context * ); 1093 gen _losange(const gen & args,giac::context * ); 1094 gen _polygone(const gen & args,giac::context * ); 1095 gen _polygone_ouvert(const gen & args,giac::context * ); 1096 gen _bissectrice(const gen & args,giac::context * ); 1097 gen _exbissectrice(const gen & args,giac::context * ); 1098 gen _plotfield(const gen & args,giac::context * ); 1099 gen _interactive_plotode(const gen & args,giac::context * ); 1100 gen _plotode(const gen & args,giac::context * ); 1101 gen archive_session(bool save_history,const std::string & s,giac::context * ); 1102 gen unarchive_session_string(const std::string & s,int level, const gen & replace,giac::context * ); 1103 // gen _archive(bool save_history,const gen & args,giac::context * ); 1104 gen _unarchive(const gen & args,giac::context * ); 1105 gen _xyztrange(const gen & args,giac::context * ); 1106 gen _switch_axes(const gen & args,giac::context * ); 1107 gen _plotseq(const gen & args,giac::context * ); 1108 gen _plotimplicit(const gen & args,giac::context * ); 1109 gen _plotcontour(const gen & args,giac::context * ); 1110 gen _plotinequation(const gen & f0,giac::context * ); 1111 gen _inter_droite(const gen & args,giac::context * ); 1112 gen _dot_paper(const gen & args,giac::context * ); 1113 gen _grid_paper(const gen & args,giac::context * ); 1114 gen _triangle_paper(const gen & args,giac::context * ); 1115 gen _line_paper(const gen & args,giac::context * ); 1116 gen _bitmap(const gen & args,giac::context * ); 1117 gen _Pictsize(const gen & args,giac::context * ); 1118 gen _plot_style(const gen & args,giac::context * ); 1119 gen _DrawInv(const gen & args,giac::context * ); 1120 gen _Graph(const gen & g,giac::context * ); 1121 gen _DrwCtour(const gen & g,giac::context * ); 1122 int est_isocele(const gen & a,const gen & b,const gen & c,giac::context * ); 1123 gen _est_isocele(const gen & args,giac::context * ); 1124 bool est_equilateral(const gen & a,const gen & b,const gen & c,giac::context * ); 1125 gen _est_equilateral(const gen & args,giac::context * ); 1126 bool est_carre(const gen & a,const gen & b,const gen & c,const gen & d,giac::context * ); 1127 gen _est_carre(const gen & args,giac::context * ); 1128 int est_losange(const gen & a,const gen & b,const gen & c,const gen & d,giac::context * ); 1129 gen _est_losange(const gen & args,giac::context * ); 1130 int est_parallelogramme(const gen & a,const gen & b,const gen & c,const gen & d,giac::context * ); 1131 gen _est_parallelogramme(const gen & args,giac::context * ); 1132 int est_rect(const gen & a,const gen & b,const gen & c,const gen & d,giac::context * ); 1133 gen _est_rectangle(const gen & args,giac::context * ); 1134 gen _est_harmonique(const gen & args,giac::context * ); 1135 gen _div_harmonique(const gen & args,giac::context * ); 1136 gen _point_div(const gen & args,giac::context * ); 1137 gen _birapport(const gen & args,giac::context * ); 1138 gen _est_harmonique(const gen & args,giac::context * ); 1139 gen _div_harmonique(const gen & args,giac::context * ); 1140 gen _conj_harmonique(const gen & args,giac::context * ); 1141 // gen _conj_harmoniques(const gen & args,giac::context * ); 1142 gen _point_div(const gen & args,giac::context * ); 1143 gen _birapport(const gen & args,giac::context * ); 1144 gen _puissance(const gen & args,giac::context * ); 1145 gen _axe_radical(const gen & args,giac::context * ); 1146 gen _polaire(const gen & args,giac::context * ); 1147 gen _pole(const gen & args,giac::context * ); 1148 gen _polaire_reciproque(const gen & args,giac::context * ); 1149 gen _est_orthogonal(const gen & args,giac::context * ); 1150 gen _est_conjugue(const gen & args,giac::context * ); 1151 gen _est_faisceau_cercle(const gen & args,giac::context * ); 1152 gen _est_faisceau_droite(const gen & args,giac::context * ); 1153 int est_faisceau_droite(const gen & a,const gen & b,const gen & c,giac::context * ); 1154 gen _enveloppe(const gen & args,giac::context * ); 1155 gen put_attributs(const gen & lieu_geo,const giac::vecteur & attributs,giac::context * ); 1156 int est_aligne(const gen & a,const gen & b,const gen & c,giac::context * ); 1157 bool est_coplanaire(const gen & a,const gen & b,const gen & c,const gen & d,giac::context * ); 1158 bool est_cocyclique(const gen & a,const gen & b,const gen & c,const gen & d,giac::context * ); 1159 bool est_parallele_giac::vecteur(const giac::vecteur & a,const giac::vecteur &b,gen & coeff,giac::context * ); 1160 bool est_parallele(const gen & a,const gen & b,giac::context * ); 1161 bool est_perpendiculaire(const gen & a,const gen & b,giac::context * ); 1162 int est_element(const gen & a_orig,const gen & b_orig,giac::context * ); 1163 bool est_carre(const gen & a,const gen & b,const gen & c,const gen & d,giac::context * ); 1164 int est_isocele(const gen & a,const gen & b,const gen & c,giac::context * ); 1165 bool est_equilateral(const gen & a,const gen & b,const gen & c,giac::context * ); 1166 int est_trianglerect(const gen & a,const gen & b,const gen & c,giac::context * ); 1167 bool est_orthogonal(const gen & c1,const gen & R1,const gen & c2,const gen & R2,giac::context * ); 1168 bool est_harmonique(const gen & a,const gen & b,const gen & c,const gen & d,giac::context * ); 1169 gen _vector(const gen & args,giac::context * ); 1170 gen _hyperplan(const gen & args,giac::context * ); 1171 gen _hypersphere(const gen & args,giac::context * ); 1172 gen _hypersurface(const gen & args,giac::context * ); 1173 gen _Ox_2d_unit_vector(const gen & args,giac::context * ); 1174 gen _Oy_2d_unit_vector(const gen & args,giac::context * ); 1175 gen _frame_2d(const gen & args,giac::context * ); 1176 gen _Ox_3d_unit_vector(const gen & args,giac::context * ); 1177 gen _Oy_3d_unit_vector(const gen & args,giac::context * ); 1178 gen _Oz_3d_unit_vector(const gen & args,giac::context * ); 1179 gen _frame_3d(const gen & args,giac::context * ); 1180 void increment_instruction(const gen & arg,giac::context * ); 1181 std::string check_local_assign(const gen & g,giac::context * ); 1182 gen quote_program(const gen & args,giac::context * ); 1183 gen _program(const gen & args,const gen & name,giac::context * ); 1184 void adjust_sst_at(const gen & name,giac::context * ); //used in giac::symbolic.cc by nr_eval 1185 gen _bloc(const gen & prog,giac::context * ); 1186 std::string printasfor(const gen & feuille,const char * sommetstr,giac::context * ); 1187 std::string printasifte(const gen & feuille,const char * sommetstr,giac::context * ); 1188 gen _ifte(const gen & e,giac::context * ); 1189 gen _evalb(const gen & e,giac::context * ); 1190 // gen _maple_if(const gen & args,giac::context * ); 1191 gen _when(const gen & e,giac::context * ); 1192 gen _for(const gen & e,giac::context * ); 1193 gen _local(const gen & args,giac::context * ); 1194 // gen _return(const gen & args,giac::context * ); 1195 gen _try_catch(const gen & args,giac::context * ); 1196 gen _check_type(const gen & args,giac::context * ); 1197 gen _type(const gen & args,giac::context * ); 1198 gen _nop(const gen & a,giac::context * ); 1199 gen _feuille(const gen & args,giac::context * ); 1200 gen _maple_op(const gen & args,giac::context * ); 1201 gen _sommet(const gen & args,giac::context * ); 1202 gen subsop(const gen & g,const giac::vecteur & v,giac::context * ); 1203 gen subsop(const giac::vecteur & g,const giac::vecteur & v,const gen & sommet,giac::context * ); 1204 gen _maple_subsop(const gen & args,giac::context * ); 1205 gen _subsop(const gen & args,giac::context * ); 1206 gen _append(const gen & args,giac::context * ); 1207 gen _prepend(const gen & args,giac::context * ); 1208 gen concat(const gen & g,bool glue_lines,giac::context * ); 1209 gen _concat(const gen & args,giac::context * ); 1210 gen _contains(const gen & args,giac::context * ); 1211 gen _select(const gen & args,giac::context * ); 1212 gen _remove(const gen & args,giac::context * ); 1213 gen _option(const gen & args,giac::context * ); 1214 gen _case(const gen & args,giac::context * ); 1215 gen _rand(const gen & args,giac::context * ); 1216 gen rand_interval(const giac::vecteur & v,bool entier,giac::context * ); 1217 gen _srand(const gen & args,giac::context * ); 1218 gen _char(const gen & args,giac::context * ); 1219 gen _asc(const gen & args,giac::context * ); 1220 gen _map(const gen & args,giac::context * ); 1221 gen _apply(const gen & args,giac::context * ); 1222 gen _makelist(const gen & args,giac::context * ); 1223 gen _interval(const gen & args,giac::context * ); 1224 gen _comment(const gen & args,giac::context * ); 1225 gen _throw(const gen & args,giac::context * ); 1226 gen _union(const gen & args,giac::context * ); 1227 gen _intersect(const gen & args,giac::context * ); 1228 gen _inter(const gen & args,giac::context * ); 1229 gen _minus(const gen & args,giac::context * ); 1230 gen _dollar(const gen & args,giac::context * ); 1231 gen _makemat(const gen & args,giac::context * ); 1232 gen _compose(const gen & args,giac::context * ); 1233 gen _composepow(const gen & args,giac::context * ); 1234 gen _has(const gen & args,giac::context * ); 1235 gen _args(const gen & args,giac::context * ); 1236 gen _lname(const gen & args,giac::context * ); 1237 gen _halt(const gen & args,giac::context * ); 1238 gen _kill(const gen & args,giac::context * ); 1239 gen _cont(const gen & args,giac::context * ); 1240 gen _sst(const gen & args,giac::context * ); 1241 gen _sst_in(const gen & args,giac::context * ); 1242 gen _debug(const gen & args,giac::context * ); 1243 gen _watch(const gen & args,giac::context * ); 1244 gen _rmwatch(const gen & args,giac::context * ); 1245 gen _breakpoint(const gen & args,giac::context * ); 1246 gen _rmbreakpoint(const gen & args,giac::context * ); 1247 void debug_loop(gen &res,giac::context * ); 1248 gen _backquote(const gen & args,giac::context * ); 1249 gen _double_deux_points(const gen & args,giac::context * ); 1250 gen _maple2mupad(const gen & args,giac::context * ); 1251 gen _maple2xcas(const gen & args,giac::context * ); 1252 gen _mupad2maple(const gen & args,giac::context * ); 1253 gen _mupad2xcas(const gen & args,giac::context * ); 1254 gen _cd(const gen & args,giac::context * ); 1255 gen _pwd(const gen & args,giac::context * ); 1256 gen _scientific_format(const gen & args,giac::context * ); 1257 gen _integer_format(const gen & g,giac::context * ); 1258 gen giac_eval_level(const gen & g,giac::context * ); // can not be declared as _eval_level, conflict 1259 gen _prog_eval_level(const gen & g,giac::context * ); 1260 gen _with_sqrt(const gen & g,giac::context * ); 1261 gen _xcas_mode(const gen & args,giac::context * ); 1262 gen _all_trig_solutions(const gen & args,giac::context * ); 1263 gen _ntl_on(const gen & args,giac::context * ); 1264 gen _complex_mode(const gen & args,giac::context * ); 1265 gen _angle_radian(const gen & args,giac::context * ); 1266 gen _epsilon(const gen & args,giac::context * ); 1267 gen _proba_epsilon(const gen & args,giac::context * ); 1268 gen _complex_variables(const gen & args,giac::context * ); 1269 gen _approx_mode(const gen & args,giac::context * ); 1270 gen _threads(const gen & args,giac::context * ); 1271 gen _threads_allowed(const gen & g,giac::context * ); 1272 gen _mpzclass_allowed(const gen & g,giac::context * ); 1273 gen _cas_setup(const gen & args,giac::context * ); 1274 gen _Digits(const gen & args,giac::context * ); 1275 gen _insmod(const gen & args,giac::context * ); 1276 gen _xport(const gen & args,giac::context * ); 1277 gen _rmmod(const gen & args,giac::context * ); 1278 gen _lsmod(const gen & args,giac::context * ); 1279 gen _virgule(const gen & args,giac::context * ); 1280 gen _sort(const gen & args,giac::context * ); 1281 gen _ans(const gen & args,giac::context * ); 1282 gen _quest(const gen & args,giac::context * ); 1283 gen _convert(const gen & args,giac::context * ); 1284 gen _deuxpoints(const gen & args,giac::context * ); 1285 gen quote_read(const gen & args,giac::context * ); // read in a file and return non evaled 1286 gen _read(const gen & args,giac::context * ); // read in a file and return evaled 1287 gen _write(const gen & args,giac::context * ); 1288 gen _save_history(const gen & args,giac::context * ); 1289 gen _findhelp(const gen & args,giac::context * ); 1290 gen _member(const gen & args,giac::context * ); 1291 gen _tablefunc(const gen & args,giac::context * ); 1292 gen _tableseq(const gen & args,giac::context * ); 1293 gen protecteval(const gen & g,int level,giac::context * ); 1294 gen _unapply(const gen & args,giac::context * ); 1295 gen _makevector(const gen & args,giac::context * ); 1296 gen _matrix(const gen & args,giac::context * ); 1297 gen _makesuite(const gen & args,giac::context * ); 1298 gen _break(const gen & args,giac::context * ); 1299 gen _continue(const gen & args,giac::context * ); 1300 gen _label(const gen & args,giac::context * ); 1301 gen _goto(const gen & args,giac::context * ); 1302 gen _tilocal(const gen & args,giac::context * ); 1303 gen inputform_post_analysis(const giac::vecteur & v,const gen & res,giac::context * ); 1304 giac::vecteur inputform_pre_analysis(const gen & g,giac::context * ); 1305 gen _inputform(const gen & args,giac::context * ); 1306 gen _choosebox(const gen & args,giac::context * ); 1307 gen _output(const gen & args,giac::context * ); 1308 gen _input(const gen & args,bool textinput,giac::context * ); 1309 gen _nop(const gen & args,giac::context * ); 1310 std::string printastifunction(const gen & feuille,const char * sommetstr,giac::context * ); 1311 gen _Dialog(const gen & args,giac::context * ); 1312 gen _Title(const gen & args,giac::context * ); 1313 gen _Text(const gen & args,giac::context * ); 1314 gen _Request(const gen & args,giac::context * ); 1315 gen _DropDown(const gen & args,giac::context * ); 1316 gen _Popup(const gen & args,giac::context * ); 1317 gen _expr(const gen & args,giac::context * ); 1318 gen _string(const gen & args,giac::context * ); 1319 gen _part(const gen & args,giac::context * ); 1320 gen _Pause(const gen & args,giac::context * ); 1321 gen _Row(const gen & args,giac::context * ); 1322 gen _Col(const gen & args,giac::context * ); 1323 // gen _DelVar(const gen & args,giac::context * ); 1324 gen _pointprod(const gen & args,giac::context * ); 1325 gen _pointdivision(const gen & args,giac::context * ); 1326 gen _pointpow(const gen & args,giac::context * ); 1327 gen _pourcent(const gen & args,giac::context * ); 1328 gen _hash(const gen & args,giac::context * ); 1329 gen _interactive(const gen & args,giac::context * ); 1330 std::string printassuffix(const gen & feuille,const char * sommetstr,giac::context * ); 1331 gen _ti_semi(const gen & args,giac::context * ); 1332 gen widget_size(const gen & g,giac::context * ); 1333 gen keyboard(const gen & g,giac::context * ); 1334 gen current_sheet(const gen & g,giac::context * ); 1335 gen window_switch(const gen & g,giac::context * ); 1336 gen maple_lib(const gen & g,giac::context * ); 1337 gen maple_root(const gen & g,giac::context * ); 1338 gen symb_unit(const gen & a,const gen & b,giac::context * ); 1339 std::string printasDigits(const gen & feuille,const char * sommetstr,giac::context * ); 1340 gen user_operator(const gen & g,giac::context * ); 1341 gen _SetFold(const gen & g,giac::context * ); 1342 gen simplifier(const gen & g,giac::context * ); 1343 gen _simplifier(const gen & g,giac::context * ); 1344 gen mksa_reduce(const gen & g,giac::context * ); 1345 gen find_or_make_symbol(const std::string & s,bool check38,giac::context * ); 1346 giac::vecteur mksa_convert(const gen & g,giac::context * ); 1347 gen _ufactor(const gen & g,giac::context * ); 1348 gen _usimplify(const gen & g,giac::context * ); 1349 gen _piecewise(const gen & g,giac::context * ); 1350 gen when2piecewise(const gen & g,giac::context * ); 1351 gen when2sign(const gen & g,giac::context * ); 1352 gen piecewise2when(const gen & g,giac::context * ); 1353 gen _geo2d(const gen & g,giac::context * ); 1354 std::string printasinnerbloc(const gen & feuille,giac::context * ); 1355 gen symb_local(const gen & a,const gen & b,giac::context * ); 1356 gen symb_local(const gen & args,giac::context * ); 1357 gen symb_check_type(const gen & args,giac::context * ); 1358 gen _quaternion(const gen & args,giac::context * ); 1359 gen risch(const gen & e_orig,const giac::identificateur & x,gen & remains_to_integrate,giac::context * ); 1360 gen _risch(const gen & g,giac::context * ); 1361 std::string printasconstant(const gen & feuille,const char * sommetstr,giac::context * ); 1362 gen _rpn(const gen & args,giac::context * ); 1363 gen _alg(const gen & args,giac::context * ); 1364 gen _PERCENT(const gen & args,giac::context * ); 1365 gen _ROLL(const gen & args,giac::context * ); 1366 gen _ROLLD(const gen & args,giac::context * ); 1367 gen _SWAP(const gen & args,giac::context * ); 1368 gen _DUP(const gen & args,giac::context * ); 1369 gen _OVER(const gen & args,giac::context * ); 1370 gen _PICK(const gen & args,giac::context * ); 1371 gen _DROP(const gen & args,giac::context * ); 1372 gen _NOP(const gen & args,giac::context * ); 1373 gen _IFTE(const gen & args,giac::context * ); 1374 gen _RPN_LOCAL(const gen & args,giac::context * ); 1375 gen _RPN_FOR(const gen & args,giac::context * ); 1376 gen _RPN_WHILE(const gen & args,giac::context * ); 1377 gen _RPN_UNTIL(const gen & args,giac::context * ); 1378 gen _RPN_CASE(const gen & args,giac::context * ); 1379 gen _RCL(const gen & args,giac::context * ); 1380 gen _VARS(const gen & args,giac::context * ); 1381 gen _purge(const gen & args,giac::context * ); 1382 gen _rpn_prog(const gen & args,giac::context * ); 1383 giac::vecteur rpn_eval(const gen & prog,giac::vecteur & pile,giac::context * ); 1384 gen _division(const gen & args,giac::context * ); 1385 gen _binary_minus(const gen & args,giac::context * ); 1386 gen _hp38(const gen & args,giac::context * ); 1387 gen _ABS(const gen & args,giac::context * ); 1388 gen _MODULO(const gen & args,giac::context * ); 1389 gen _RANDOM(const gen & g,giac::context * ); 1390 gen _MAXREAL(const gen & g,giac::context * ); 1391 gen _MINREAL(const gen & g,giac::context * ); 1392 gen _EXPM1(const gen & g,giac::context * ); 1393 gen _LNP1(const gen & g,giac::context * ); 1394 gen _ADDROW(const gen & args,giac::context * ); 1395 gen _ADDCOL(const gen & args,giac::context * ); 1396 gen _SCALE(const gen & g,giac::context * ); 1397 gen _SCALEADD(const gen & g,giac::context * ); 1398 gen _SWAPCOL(const gen & args,giac::context * ); 1399 gen _SUB(const gen & args,giac::context * ); 1400 gen _RANDMAT(const gen & args,giac::context * ); 1401 gen _REDIM(const gen & args,giac::context * ); 1402 gen _REPLACE(const gen & args,giac::context * ); 1403 gen _EIGENVAL(const gen & args,giac::context * ); 1404 gen _EIGENVV(const gen & args,giac::context * ); 1405 gen _SIZE(const gen& args,giac::context * ); 1406 gen _INT(const gen & g,giac::context * ); 1407 gen _HPDIFF(const gen & args,giac::context * ); 1408 gen _HPINT(const gen & args,giac::context * ); 1409 gen _HPSUM(const gen & args,giac::context * ); 1410 gen _TAYLOR(const gen & args,giac::context * ); 1411 gen _POLYFORM(const gen & args,giac::context * ); 1412 gen _IS_LINEAR(const gen & args,giac::context * ); 1413 gen _SVD(const gen & args0,giac::context * ); 1414 gen _SVL(const gen & args0,giac::context * ); 1415 gen _SPECRAD(const gen & args0,giac::context * ); 1416 gen _SPECNORM(const gen & args0,giac::context * ); 1417 gen _COND(const gen & args0,giac::context * ); 1418 gen _rank(const gen & args,giac::context * ); 1419 gen _SCHUR(const gen & args,giac::context * ); 1420 gen _LQ(const gen & args0,giac::context * ); 1421 gen _LU(const gen & args0,giac::context * ); 1422 gen _QR(const gen & args0,giac::context * ); 1423 gen _XPON(const gen & g,giac::context * ); 1424 gen _MANT(const gen & g,giac::context * ); 1425 gen _HMSX(const gen & g0,giac::context * ); 1426 gen _XHMS(const gen & g0,giac::context * ); 1427 gen _DEGXRAD(const gen & g,giac::context * ); 1428 gen _RADXDEG(const gen & g,giac::context * ); 1429 gen _PERCENT(const gen & g,giac::context * ); 1430 gen _PERCENTCHANGE(const gen & g,giac::context * ); 1431 gen _PERCENTTOTAL(const gen & g,giac::context * ); 1432 gen _ITERATE(const gen & args,giac::context * ); 1433 gen _MAKEMAT(const gen & args,giac::context * ); 1434 gen _LSQ(const gen & args,giac::context * ); 1435 gen _idivis(const gen & args0,giac::context * ); 1436 gen _isprime(const gen & args0,giac::context * ); 1437 gen _ithprime(const gen & args0,giac::context * ); 1438 gen _euler(const gen & args0,giac::context * ); 1439 gen _numer(const gen & args0,giac::context * ); 1440 gen _denom(const gen & args0,giac::context * ); 1441 gen _ifactors(const gen & args0,giac::context * ); 1442 gen _binomial_icdf(const gen & args0,giac::context * ); 1443 gen _poisson_icdf(const gen & args0,giac::context * ); 1444 gen _NTHROOT(const gen & args,giac::context * ); 1445 gen _Ans(const gen & args,giac::context * ); 1446 // gen _EXPORT(const gen & args,giac::context * ); 1447 gen _VIEWS(const gen & args,giac::context * ); 1448 void qualify(gen & g,const giac::vecteur & v,const gen & prog,giac::context * ); 1449 int seqapp_prepare(const gen & expr_un,gen & expr,giac::vecteur & vars,giac::context * ,int seqno=-1); 1450 // bool ptruncate(giac::sparse_poly1 & p,const gen & ordre,giac::context * ); 1451 void lcmdeno(giac::vecteur &v,gen & e,giac::context * ); 1452 gen series(const gen & e,const gen & vars,const gen & lim_point,const gen &ordre,giac::context * ); 1453 gen _series(const gen & args,giac::context * ); 1454 gen _revert(const gen & args,giac::context * ); 1455 gen _bounded_function(const gen & args,giac::context * ); 1456 gen bounded_function(giac::context * ); 1457 gen limit(const gen & e,const giac::identificateur & x,const gen & lim_point,int direction,giac::context * ); 1458 gen _limit(const gen & args,giac::context * ); 1459 gen _bounded_function(const gen & args,giac::context * ); 1460 gen bounded_function(giac::context * ); 1461 gen _euler_mac_laurin(const gen & args,giac::context * ); 1462 bool convert_to_euler_mac_laurin(const gen & g,const giac::identificateur &n,gen & res,giac::context * ); 1463 giac::vecteur find_singularities(const gen & e,const giac::identificateur & x,int cplxmode,giac::context * ); 1464 giac::vecteur solve(const gen & e,const giac::identificateur & x,int isolate_mode,giac::context * ); 1465 giac::vecteur solve(const gen & e,const gen & x,int isolate_mode,giac::context * ); 1466 void solve(const gen & e,const giac::identificateur & x,giac::vecteur &v,int isolate_mode,giac::context * ); 1467 void in_solve(const gen & e,const giac::identificateur & x,giac::vecteur &v,int isolate_mode,giac::context * ); 1468 bool modpolyroot(const giac::vecteur & a,const gen & p,giac::vecteur & v,bool dogcd,giac::context * ); 1469 gen solvepostprocess(const gen & g,const gen & x,giac::context * ); 1470 gen _solve(const gen & args,giac::context * ); 1471 gen in_fsolve(giac::vecteur & v,giac::context * ); 1472 gen _fsolve(const gen & args,giac::context * ); 1473 gen _linsolve(const gen & args,giac::context * ); 1474 gen _newton(const gen & args,giac::context * ); 1475 gen _greduce(const gen & args,giac::context * ); 1476 gen _gbasis(const gen & args,giac::context * ); 1477 gen _in_ideal(const gen & args,giac::context * ); 1478 giac::vecteur solvepreprocess(const gen & args,bool complex_mode,giac::context * ); 1479 gen checkanglemode(giac::context * ); 1480 gen degtorad(const gen & g,giac::context * ); 1481 gen radtodeg(const gen & g,giac::context * ); 1482 giac::vecteur subst(const giac::vecteur & v,const gen & i,const gen & newi,bool quotesubst,giac::context * ); 1483 gen subst(const gen & e,const gen & i,const gen & newi,bool quotesubst,giac::context * ); 1484 gen subst(const gen & e,const giac::vecteur & i,const giac::vecteur & ewi,bool quotesubst,giac::context * ); 1485 gen quotesubst(const gen & e,const gen & i,const gen & newi,giac::context * ); 1486 gen halftan(const gen & e,giac::context * ); 1487 gen _halftan(const gen & args,giac::context * ); 1488 gen shift_phase(const gen & e,giac::context * ); 1489 gen _shift_phase(const gen & args,giac::context * ); 1490 gen hyp2exp(const gen & e,giac::context * ); 1491 gen _hyp2exp(const gen & args,giac::context * ); 1492 gen sincos(const gen & e,giac::context * ); 1493 gen _sincos(const gen & args,giac::context * ); 1494 gen trig2exp(const gen & e,giac::context * ); 1495 gen _trig2exp(const gen & args,giac::context * ); 1496 gen halftan_hyp2exp(const gen & e,giac::context * ); 1497 gen _halftan_hyp2exp(const gen & args,giac::context * ); 1498 gen rewrite_hyper(const gen & e,giac::context * ); 1499 gen asin2acos(const gen & e,giac::context * ); 1500 gen _asin2acos(const gen & args,giac::context * ); 1501 gen asin2atan(const gen & e,giac::context * ); 1502 gen _asin2atan(const gen & args,giac::context * ); 1503 gen acos2asin(const gen & e,giac::context * ); 1504 gen _acos2asin(const gen & args,giac::context * ); 1505 gen acos2atan(const gen & e,giac::context * ); 1506 gen _acos2atan(const gen & args,giac::context * ); 1507 gen atan2acos(const gen & e,giac::context * ); 1508 gen _atan2acos(const gen & args,giac::context * ); 1509 gen atan2asin(const gen & e,giac::context * ); 1510 gen _atan2asin(const gen & args,giac::context * ); 1511 giac::vecteur as_linear_combination(const gen & g,giac::vecteur & wrt,giac::context * ); 1512 gen tsimplify_noexpln(const gen & e,int s1,int s2,giac::context * ); 1513 gen tsimplify_common(const gen & e,giac::context * ); 1514 gen tsimplify(const gen & e,giac::context * ); 1515 gen _tsimplify(const gen & args,giac::context * ); 1516 gen simplify(const gen & e,giac::context * ); 1517 gen _simplify(const gen & args,giac::context * ); 1518 gen trigcos(const gen & e,giac::context * ); 1519 gen _trigcos(const gen & args,giac::context * ); 1520 gen trigsin(const gen & e,giac::context * ); 1521 gen _trigsin(const gen & args,giac::context * ); 1522 gen trigtan(const gen & e,giac::context * ); 1523 gen _trigtan(const gen & args,giac::context * ); 1524 gen tan2sincos(const gen & e,giac::context * ); 1525 gen _tan2sincos(const gen & args,giac::context * ); 1526 gen tan2sincos2(const gen & e,giac::context * ); 1527 gen _tan2sincos2(const gen & args,giac::context * ); 1528 gen tan2cossin2(const gen & e,giac::context * ); 1529 gen _tan2cossin2(const gen & args,giac::context * ); 1530 gen tcollect(const gen & e,giac::context * ); 1531 gen _tcollect(const gen & args,giac::context * ); 1532 gen lncollect(const gen & e,giac::context * ); 1533 gen _lncollect(const gen & args,giac::context * ); 1534 gen _powexpand(const gen & args,giac::context * ); 1535 gen powexpand(const gen & e,giac::context * ); 1536 gen exp2pow(const gen & e,giac::context * ); 1537 gen _exp2pow(const gen & args,giac::context * ); 1538 gen _pow2exp(const gen & e,giac::context * ); 1539 gen pow2expln(const gen & e,giac::context * ); 1540 gen simplifyfactorial(const gen & g,giac::context * ); 1541 gen pow2expln(const gen & e,const giac::identificateur & x,giac::context * ); 1542 gen gamma2factorial(const gen & g,giac::context * ); 1543 gen gammatofactorial(const gen & g,giac::context * ); 1544 gen factorial2gamma(const gen & g,giac::context * ); 1545 gen factorialtogamma(const gen & g,giac::context * ); 1546 gen factor_xn(const gen & args,const gen & x,giac::context * ); 1547 gen factor_xn(const gen & args,giac::context * ); 1548 gen _factor_xn(const gen & args,giac::context * ); 1549 gen Heavisidetosign(const gen & args,giac::context * ); 1550 gen _Heavisidetosign(const gen & args,giac::context * ); 1551 gen expln2trig(const gen & g,giac::context * ); 1552 gen _mult_conjugate(const gen & g0,giac::context * ); 1553 gen _mult_c_conjugate(const gen & g0,giac::context * ); 1554 gen sin2tan2(const gen & e,giac::context * ); 1555 gen cos2tan2(const gen & e,giac::context * ); 1556 gen tan2tan2(const gen & e,giac::context * ); 1557 gen sinh2exp(const gen & e,giac::context * ); 1558 gen cosh2exp(const gen & e,giac::context * ); 1559 gen tanh2exp(const gen & e,giac::context * ); 1560 gen inv_test_exp(const gen & e,giac::context * ); 1561 gen sin2exp(const gen & e,giac::context * ); 1562 gen cos2exp(const gen & e,giac::context * ); 1563 gen tan2exp(const gen & e,giac::context * ); 1564 gen exp2sincos(const gen & e,giac::context * ); 1565 gen tantosincos(const gen & e,giac::context * ); 1566 gen tantosincos2(const gen & e,giac::context * ); 1567 gen tantocossin2(const gen & e,giac::context * ); 1568 gen asintoacos(const gen & e,giac::context * ); 1569 gen acostoasin(const gen & e,giac::context * ); 1570 gen asintoatan(const gen & e,giac::context * ); 1571 gen atantoasin(const gen & e,giac::context * ); 1572 gen acostoatan(const gen & e,giac::context * ); 1573 gen atantoacos(const gen & e,giac::context * ); 1574 gen trigcospow(const gen & g,giac::context * ); 1575 gen trigsinpow(const gen & g,giac::context * ); 1576 gen trigtanpow(const gen & g,giac::context * ); 1577 gen powtopowexpand(const gen & g,giac::context * ); 1578 gen exptopower(const gen & g,giac::context * ); 1579 gen asin2ln(const gen & g_orig,giac::context * ); 1580 gen acos2ln(const gen & g_orig,giac::context * ); 1581 gen atan2ln(const gen & g_orig,giac::context * ); 1582 bool guess_program(gen & g,giac::context * ); 1583 gen normal(const gen & e,giac::context * ); // rational simplifications 1584 gen normal(const gen & e,bool distribute_div,giac::context * ); 1585 gen normalize_sqrt(const gen & e,giac::context * ); 1586 gen recursive_normal(const gen & e,giac::context * ); 1587 gen _recursive_normal(const gen & e,giac::context * ); 1588 gen recursive_normal(const gen & e,bool distribute_div,giac::context * ); 1589 gen factor(const gen & e,bool withsqrt,giac::context * ); // full factorization (alg ext) 1590 gen ratfactor(const gen & e,bool withsqrt,giac::context * ); // full factorization (rat) 1591 gen factor(const gen & e,const gen & f,bool withsqrt,giac::context * ); 1592 gen _factor(const gen & args,giac::context * ); 1593 gen _collect(const gen & args,giac::context * ); 1594 gen factorcollect(const gen & args,bool with_sqrt,giac::context * ); 1595 gen partfrac(const gen & e,const giac::vecteur & l,bool withsqrt,giac::context * ); 1596 gen partfrac(const gen & e,bool withsqrt,giac::context * ); 1597 gen partfrac(const gen & e,const giac::identificateur & x,bool withsqrt,giac::context * ); 1598 gen partfrac(const gen & e,const gen & f,bool withsqrt,giac::context * ); 1599 gen _partfrac(const gen & args,giac::context * ); 1600 gen _resultant(const gen & args,giac::context * ); 1601 gen cklvar(const gen & e,giac::context * ); 1602 gen ckalgvar(const gen & e,giac::context * ); 1603 1604 bool sym2r (const gen &e,const gen & iext,const giac::vecteur &l,const giac::vecteur & lv, const giac::vecteur & lvnum,const giac::vecteur & lvden, int l_size, gen & num,gen & den,giac::context * ); 1605 bool sym2r (const gen &e,const giac::vecteur &l, int l_size, gen & num,gen & den,giac::context * ); 1606 gen e2r(const gen & e,const giac::vecteur & l,giac::context * ); 1607 gen e2r(const gen & e,const gen & x,giac::context * ); 1608 gen _e2r(const gen & args,giac::context * ); 1609 gen r2sym(const giac::polynome & p, const giac::vecteur & l,giac::context * ); 1610 gen r2sym(const gen & p, const giac::vecteur & l,giac::context * ); 1611 gen r2e(const gen & p,const giac::vecteur & l,giac::context * ); 1612 gen r2e(const gen & r,const gen & x,giac::context * ); 1613 gen _r2e(const gen & args,giac::context * ); 1614 gen r2sym(const giac::fraction & f, const giac::vecteur & l,giac::context * ); 1615 gen r2sym(const giac::factorization & vnum,const giac::vecteur & l,giac::context * ); 1616 std::string & add_print(std::string & s,const gen & g,giac::context * ); 1617 void evalfdouble2reim(const gen & a,gen & e,gen & f0,gen & f1,giac::context * ); 1618 std::string gen2tex(const gen & e,giac::context * ); 1619 gen graph2tex(const gen & args,const giac::vecteur & v,giac::context * ); 1620 gen _graph2tex(const gen & args,giac::context * ); 1621 gen _graph3d2tex(const gen & args,giac::context * ); 1622 gen _latex(const gen & args,giac::context * ); 1623 gen _seq(const gen & g,giac::context * ); 1624 gen _logb(const gen & g,giac::context * ); 1625 gen _getType(const gen & g,giac::context * ); 1626 gen _Define(const gen & g,giac::context * ); 1627 gen _isprime(const gen & args,giac::context * ); 1628 gen _Input(const gen & args,giac::context * ); 1629 gen _InputStr(const gen & g,giac::context * ); 1630 gen _Prompt(const gen & g,giac::context * ); 1631 gen _cSolve(const gen & g,giac::context * ); 1632 gen _cFactor(const gen & g,giac::context * ); 1633 gen _cpartfrac(const gen & g,giac::context * ); 1634 gen _nSolve(const gen & g,giac::context * ); 1635 gen _zeros(const gen & g,giac::context * ); 1636 gen _cZeros(const gen & g,giac::context * ); 1637 gen _getDenom(const gen & g,giac::context * ); 1638 gen _denom(const gen & g,giac::context * ); 1639 gen _getNum(const gen & g,giac::context * ); 1640 gen _numer(const gen & g,giac::context * ); 1641 gen _tExpand(const gen & g,giac::context * ); 1642 gen _comDenom(const gen & g,giac::context * ); 1643 gen _randPoly(const gen & g,giac::context * ); 1644 gen _nInt(const gen & g,giac::context * ); 1645 gen _nDeriv(const gen & g,giac::context * ); 1646 gen _avgRC(const gen & g,giac::context * ); 1647 gen _fMin(const gen & g,giac::context * ); 1648 gen _fMax(const gen & g,giac::context * ); 1649 gen _taylor(const gen & g,giac::context * ); 1650 gen _arcLen(const gen & g,giac::context * ); 1651 gen _dim(const gen & g,giac::context * ); 1652 gen _format(const gen & g,giac::context * ); 1653 gen _inString(const gen & g,giac::context * ); 1654 gen _left(const gen & g,giac::context * ); 1655 gen _right(const gen & g,giac::context * ); 1656 gen _mid(const gen & g,giac::context * ); 1657 gen _ord(const gen & g,giac::context * ); 1658 gen _rotate(const gen & g,giac::context * ); 1659 gen _shift(const gen & g,giac::context * ); 1660 gen _augment(const gen & g,giac::context * ); 1661 gen _semi_augment(const gen & g,giac::context * ); 1662 gen _cumSum(const gen & g,giac::context * ); 1663 gen _exp2list(const gen & g,giac::context * ); 1664 gen _list2mat(const gen & g,giac::context * ); 1665 gen _deltalist(const gen & g,giac::context * ); 1666 gen _mat2list(const gen & g,giac::context * ); 1667 gen _newList(const gen & g,giac::context * ); 1668 gen _polyEval(const gen & g,giac::context * ); 1669 gen _product(const gen & g,giac::context * ); 1670 gen _SortA(const gen & g,giac::context * ); 1671 gen _SortD(const gen & g,giac::context * ); 1672 gen _int(const gen & g,giac::context * ); 1673 gen _iPart(const gen & g,giac::context * ); 1674 gen _Fill(const gen & g,giac::context * ); 1675 gen _mRow(const gen & g,giac::context * ); 1676 gen _mRowAdd(const gen & g,giac::context * ); 1677 gen _rowAdd(const gen & g,giac::context * ); 1678 gen _rowSwap(const gen & g,giac::context * ); 1679 gen _LU(const gen & g,giac::context * ); 1680 gen _QR(const gen & g,giac::context * ); 1681 gen _newMat(const gen & g,giac::context * ); 1682 gen _ref(const gen & a,giac::context * ) ; 1683 gen _subMat(const gen & g,giac::context * ) ; 1684 gen _unitV(const gen & g,giac::context * ) ; 1685 gen _rowNorm(const gen & g,giac::context * ) ; 1686 gen _colNorm(const gen & g,giac::context * ) ; 1687 gen _Archive(const gen & g,giac::context * ); 1688 gen _Unarchiv(const gen & g,giac::context * ); 1689 gen _ClrIO(const gen & g,giac::context * ); 1690 gen _Output(const gen & g,giac::context * ); 1691 gen _getKey(const gen & g,giac::context * ); 1692 gen _DelFold(const gen & g,giac::context * ); 1693 gen _DispG(const gen & g,giac::context * ); 1694 gen _DispHome(const gen & g,giac::context * ); 1695 gen _Exec(const gen & g,giac::context * ); 1696 gen _NewFold(const gen & g,giac::context * ); 1697 gen _GetFold(const gen & g,giac::context * ); 1698 gen _StoPic(const gen & g,giac::context * ); 1699 gen _RclPic(const gen & g,giac::context * ); 1700 gen _RplcPic(const gen & g,giac::context * ); 1701 gen _ClrGraph(const gen & g,giac::context * ); 1702 gen _PtOn(const gen & g,giac::context * ); 1703 gen _PtOff(const gen & g,giac::context * ); 1704 gen _Line(const gen & g,giac::context * ); 1705 gen _LineHorz(const gen & g,giac::context * ); 1706 gen _LineVert(const gen & g,giac::context * ); 1707 gen _DrawSlp(const gen & g,giac::context * ); 1708 gen _Circle(const gen & g,giac::context * ); 1709 gen _PtText(const gen & g,giac::context * ); 1710 gen _NewPic(const gen & g,giac::context * ); 1711 gen _ZoomSto(const gen & g,giac::context * ); 1712 gen _ZoomRcl(const gen & g,giac::context * ); 1713 gen _deSolve(const gen & g,giac::context * ); 1714 gen _LineTan(const gen & g,giac::context * ); 1715 gen _CyclePic(const gen & g,giac::context * ); 1716 gen _RandSeed(const gen & g,giac::context * ); 1717 gen exact(const gen & g,giac::context * ); 1718 gen fPart(const gen & g,giac::context * ); 1719 gen simult(const gen & g,giac::context * ); 1720 // gen make_symbol(const std::string & s,giac::context * ); 1721 gen _unarchive_ti(const gen & g,giac::context * ); 1722 gen _sialorssinon(const gen & g,giac::context * ); 1723 gen _pour(const gen & g,giac::context * ); 1724 gen _unarchive_ti(const gen & args,giac::context * ); 1725 std::string printsommetasoperator(const gen & feuille,const char * sommetstr,giac::context * ); 1726 std::string texprintsommetasoperator(const gen & feuille,const char * sommetstr,giac::context * ); 1727 gen taylor(const gen & lim_point,int order,const giac::unary_function_ptr & D, int direction,gen & shift_coeff,giac::context * ); 1728 gen apply(const gen & e,const giac::unary_function_ptr & f,giac::context * ); 1729 gen frac_neg_out(const gen & g,giac::context * ); 1730 gen _constant_one(const gen & args,giac::context * ); 1731 gen _constant_zero(const gen & args,giac::context * ); 1732 gen _rm_a_z(const gen & args,giac::context * ); 1733 gen _id(const gen & args,giac::context * ); 1734 gen _not(const gen & args,giac::context * ); 1735 gen _neg(const gen & args,giac::context * ); 1736 gen _inv(const gen & args,giac::context * ); 1737 gen ln(const gen & e,giac::context * ); 1738 gen log(const gen & e,giac::context * ); 1739 gen log10(const gen & e,giac::context * ); 1740 gen alog10(const gen & e,giac::context * ); 1741 gen atan(const gen & e0,giac::context * ); 1742 gen exp(const gen & e0,giac::context * ); 1743 std::string gen2string(const gen & g,int format,giac::context * ); 1744 std::string print_with_parenthesis_if_required(const gen & g,int format,giac::context * ); 1745 gen sqrt_noabs(const gen & e,giac::context * ); 1746 gen sqrt(const gen & e,giac::context * ); 1747 gen sqrt_mod(const gen & a,const gen & b,bool isprime,giac::context * ); // set isprime to true if b is prime 1748 gen sin(const gen & e,giac::context * ); 1749 gen cos(const gen & e,giac::context * ); 1750 gen tan(const gen & e,giac::context * ); 1751 gen asin(const gen & e,giac::context * ); 1752 gen acos(const gen & e,giac::context * ); 1753 gen sinh(const gen & e,giac::context * ); 1754 gen cosh(const gen & e,giac::context * ); 1755 gen tanh(const gen & e,giac::context * ); 1756 gen asinh(const gen & e,giac::context * ); 1757 gen acosh(const gen & e,giac::context * ); 1758 gen atanh(const gen & e,giac::context * ); 1759 gen quote(const gen & e,giac::context * ); 1760 gen unquote(const gen & e,giac::context * ); 1761 gen re(const gen & a,giac::context * ); 1762 gen im(const gen & a,giac::context * ); 1763 gen conj(const gen & a,giac::context * ); 1764 gen _sign(const gen & g,giac::context * ); 1765 gen order_size(const gen & e,giac::context * ); 1766 gen _and(const gen & args,giac::context * ); 1767 gen _ou(const gen & args,giac::context * ); 1768 gen _xor(const gen & args,giac::context * ); 1769 gen xor2(const gen & a,const gen & b,giac::context * ); 1770 gen _min(const gen & args,giac::context * ); 1771 gen _max(const gen & args,giac::context * ); 1772 gen _gcd(const gen & args,giac::context * ); 1773 gen _lcm(const gen & args,giac::context * ); 1774 gen _egcd(const gen & args,giac::context * ); 1775 gen _iegcd(const gen & args,giac::context * ); 1776 gen _iquo(const gen & args,giac::context * ); 1777 gen _irem(const gen & args,giac::context * ); 1778 // gen _mods(const gen & args,giac::context * ); 1779 gen _quote_pow(const gen & args,giac::context * ); 1780 gen _iquorem(const gen & args,giac::context * ); 1781 gen _smod(const gen & args,giac::context * ); 1782 gen _rdiv(const gen & args,giac::context * ); 1783 gen _is_prime(const gen & args,giac::context * ); 1784 gen _is_pseudoprime(const gen & args,giac::context * ); 1785 gen nextprime1(const gen & a,giac::context * ); 1786 gen prevprime1(const gen & a,giac::context * ); 1787 // gen _nextprime(const gen & args,giac::context * ); 1788 // gen _prevprime(const gen & args,giac::context * ); 1789 gen _jacobi_symbol(const gen & args,giac::context * ); 1790 gen _legendre_symbol(const gen & args,giac::context * ); 1791 gen _floor(const gen & args,giac::context * ); 1792 gen _ceil(const gen & args,giac::context * ); 1793 gen ceil2floor(const gen & g,giac::context * ); 1794 gen _round(const gen & args,giac::context * ); 1795 gen _print(const gen & args,giac::context * ); 1796 gen _ichinrem(const gen & args,giac::context * ); 1797 gen double_is_int(const gen & g,giac::context * ); 1798 gen _fracmod(const gen & args,giac::context * ); 1799 gen _factorial(const gen & args,giac::context * ); 1800 gen _perm(const gen & args,giac::context * ); 1801 gen comb(const gen & n,const gen &k,giac::context * ); 1802 gen _comb(const gen & args,giac::context * ); 1803 gen _chinrem(const gen & args,giac::context * ); 1804 gen _abs(const gen & args,giac::context * ); 1805 gen _cyclotomic(const gen & a,giac::context * ); 1806 gen _calc_mode(const gen & args,giac::context * ); 1807 gen _quorem(const gen & args,giac::context * ); 1808 gen _quo(const gen & args,giac::context * ); 1809 gen _rem(const gen & args,giac::context * ); 1810 gen sto(const gen & a,const gen & b,giac::context * ); 1811 gen sto(const gen & a,const gen & b,bool in_place,giac::context * ); 1812 bool is_assumed_integer(const gen & g,giac::context * ); 1813 gen giac_assume(const gen & a,giac::context * ); 1814 gen giac_additionally(const gen & a,giac::context * ); 1815 gen doubleassume_and(const giac::vecteur & v,const gen & a,int direction,bool or_assumption,giac::context * ); 1816 gen _equal(const gen & args,giac::context * ); 1817 gen _same(const gen & args,giac::context * ); 1818 gen _inferieur_strict(const gen & args,giac::context * ); 1819 gen _inferieur_egal(const gen & args,giac::context * ); 1820 gen _superieur_strict(const gen & args,giac::context * ); 1821 gen _superieur_egal(const gen & args,giac::context * ); 1822 gen _different(const gen & args,giac::context * ); 1823 gen check_symb_of(const gen & a,const gen & b,giac::context * ); 1824 gen _of(const gen & args,giac::context * ); 1825 gen _at(const gen & args,giac::context * ); 1826 gen _table(const gen & args,giac::context * ); 1827 gen _plus(const gen & args,giac::context * ); 1828 gen _prod(const gen & args,giac::context * ); 1829 std::string cprintaspow(const gen & feuille,const char * sommetstr_orig,giac::context * ); 1830 gen _pow(const gen & args,giac::context * ); 1831 gen _powmod(const gen & args,giac::context * ); 1832 gen _eval(const gen & a,giac::context * ); 1833 gen _evalf(const gen &,giac::context * ); 1834 gen _subst(const gen & args,giac::context * ); 1835 gen _subs(const gen & args,giac::context * ); 1836 gen _maple_subs(const gen & args,giac::context * ); 1837 gen _ampersand_times(const gen & g,giac::context * ); 1838 gen _version(const gen & a,giac::context * ); 1839 gen Gamma(const gen & x,giac::context * ); 1840 gen _Gamma(const gen & args,giac::context * ); 1841 gen lngamma(const gen & x,giac::context * ); 1842 gen Psi(const gen & x,giac::context * ); 1843 gen Psi(const gen & x,int n,giac::context * ); 1844 gen _Psi(const gen & args,giac::context * ); 1845 gen Zeta(const gen & x,giac::context * ); 1846 gen _Zeta(const gen & args,giac::context * ); 1847 gen _erf(const gen & args,giac::context * ); 1848 gen erf(const gen & args,giac::context * ); 1849 gen _erfc(const gen & args,giac::context * ); 1850 gen erfc(const gen & args,giac::context * ); 1851 gen _Ci(const gen & g,giac::context * ); 1852 gen _Si(const gen & g,giac::context * ); 1853 gen _Ei(const gen & g,giac::context * ); 1854 gen _Heaviside(const gen & args,giac::context * ); 1855 gen _Dirac(const gen & args,giac::context * ); 1856 gen _multistring(const gen & args,giac::context * ); 1857 gen Gamma(const gen & x,giac::context * ); 1858 gen _Gamma(const gen & args,giac::context * ) ; 1859 gen Psi(const gen & x,giac::context * ); 1860 gen Psi(const gen & x,int n,giac::context * ); 1861 gen _Psi(const gen & args,giac::context * ) ; 1862 gen _normalmod(const gen & g,giac::context * ); 1863 gen alternate_series(const gen & a,const gen & x,int n,giac::context * ); 1864 gen Eta(const gen & s,int ndiff,giac::context * ); 1865 gen Eta(const gen & s0,giac::context * ); 1866 gen Zeta(const gen & x,int ndiff,giac::context * ); 1867 gen Zeta(const gen & x,giac::context * ); 1868 gen _Zeta(const gen & args,giac::context * ) ; 1869 gen _Eta(const gen & args,giac::context * ) ; 1870 gen _erfs(const gen & g,giac::context * ); 1871 gen erf(const gen & x,giac::context * ); 1872 gen _erf(const gen & args,giac::context * ); 1873 gen erfc(const gen & x,giac::context * ); 1874 gen _erfc(const gen & args,giac::context * ); 1875 gen _SiCi_f(const gen & args,giac::context * ); 1876 gen _SiCi_g(const gen & args,giac::context * ); 1877 gen _Si(const gen & args,giac::context * ); 1878 gen _Ci(const gen & args,giac::context * ); 1879 gen _Ci0(const gen & args,giac::context * ); 1880 gen _Ei_f(const gen & args,giac::context * ); 1881 gen Ei(const gen & args,giac::context * ); 1882 gen Ei(const gen & args,int n,giac::context * ); 1883 gen _Ei(const gen & args,giac::context * ); 1884 gen _Ei0(const gen & args,giac::context * ); 1885 gen Ci_replace0(const gen & g,giac::context * ); 1886 gen Ei_replace0(const gen & g,giac::context * ); 1887 gen _Dirac(const gen & args,giac::context * ); 1888 gen _Heaviside(const gen & args,giac::context * ); 1889 std::string printassubs(const gen & feuille,const char * sommetstr,giac::context * ); 1890 std::string printasmaple_subs(const gen & feuille,const char * sommetstr,giac::context * ); 1891 std::string printassto(const gen & feuille,const char * sommetstr,giac::context * ); 1892 gen _proot(const gen & e,giac::context * ); 1893 gen _pcoeff(const gen & e,giac::context * ); 1894 gen _peval(const gen & e,giac::context * ); 1895 gen spread_convert(const gen & g,int g_row,int g_col,giac::context * ); 1896 bool iscell(const gen & g,int & r,int & c,giac::context * ); 1897 giac::matrice matrice_insert(const giac::matrice & m,int insert_row,int insert_col,int nrows,int ncols,const gen & fill,giac::context * ); 1898 gen cross(const gen & g1,const gen & g2,giac::context * ); 1899 gen _tran(const gen & a,giac::context * ); 1900 gen ckmtrace(const gen & a,giac::context * ); 1901 bool mrref(const giac::matrice & a, giac::matrice & res, giac::vecteur & pivots, gen & det,giac::context * ); 1902 gen _rref(const gen & a,giac::context * ); // first non 0 elem in row is 1 1903 gen _idn(const gen & e,giac::context * ); 1904 giac::vecteur vranm(int n,const gen & f,giac::context * ); 1905 giac::matrice mranm(int n,int m,const gen & f,giac::context * ); // random matrix using f 1906 gen _ranm(const gen & e,giac::context * ); 1907 gen _randvector(const gen & e,giac::context * ); 1908 gen _padic_linsolve(const gen & g,giac::context * ); 1909 gen mdet(const giac::matrice & a,giac::context * ); 1910 gen _det(const gen & a,giac::context * ); 1911 //gen _det_minor(const gen & g,bool convert_internal,giac::context * ); 1912 gen _sylvester(const gen & a,giac::context * ); 1913 gen _hessenberg(const gen & g,giac::context * ); 1914 gen _pcar_hessenberg(const gen & g,giac::context * ); 1915 gen _hessenberg(const gen & g0,giac::context * ); 1916 gen _pcar(const gen & a,giac::context * ); 1917 bool egv(const giac::matrice & m,giac::matrice & p,giac::vecteur & d, giac::context * , bool jordan,bool rational_jordan_form,bool eigenvalues_only); 1918 gen _egv(const gen & a,giac::context * ); 1919 gen _svd(const gen & a,giac::context * ); 1920 gen _egvl(const gen & a,giac::context * ); 1921 gen _jordan(const gen & a,giac::context * ); 1922 gen jordan(const gen & a,bool rational_jordan,giac::context * ); 1923 gen _rat_jordan(const gen & a,giac::context * ); 1924 gen _rat_jordan_block(const gen &args,giac::context * ); 1925 giac::matrice diagonal_apply(const gen & g,const gen & x,const giac::matrice & m,giac::context * ); 1926 giac::matrice analytic_apply(const gen &ux,const gen & x,const giac::matrice & m,giac::context * ); 1927 giac::matrice matpow(const giac::matrice & m,const gen & n,giac::context * ); 1928 gen _matpow(const gen & a,giac::context * ); 1929 gen _ker(const gen & a,giac::context * ); 1930 gen _image(const gen & a,giac::context * ); 1931 gen _cross(const gen & a,giac::context * ); 1932 gen _size(const gen & a,giac::context * ); 1933 gen lu(const gen & a,giac::context * ); 1934 gen qr(const gen & a,giac::context * ); 1935 gen _cholesky(const gen & a,giac::context * ); 1936 gen _svd(const gen & a,giac::context * ); 1937 gen _basis(const gen & a,giac::context * ); 1938 gen _ibasis(const gen & a,giac::context * ); 1939 gen _cell(const gen & a,giac::context * ); 1940 gen l2norm(const giac::vecteur & v,giac::context * ); 1941 gen _lll(const gen & g,giac::context * ); 1942 gen _ihermite(const gen & g,giac::context * ); 1943 gen _ismith(const gen & g,giac::context * ); 1944 gen _csv2gen(const gen & g,giac::context * ); 1945 giac::matrice csv2gen(std::istream & i,char sep,char nl,char decsep,char eof,giac::context * ); 1946 } 1947 1948 1949