- Timestamp:
- Jun 28, 1997, 3:32:22 PM (27 years ago)
- Branches:
- (u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'b4f17ed1d25f93d46dbe29e4b499baecc2fd51bb')
- Children:
- a708e05307ead3012a96e3d8308e940ea9cc7be0
- Parents:
- f63611502719d5a4e491556ece5af1ae15aaf027
- Location:
- MP/MPT
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
MP/MPT/ChangeLog
rf63611 r1b7361b 1 Sat Jun 28 15:27:59 1997 Olaf Bachmann <obachman@ratchwum.mathematik.uni-kl.de (Olaf Bachmann)> 2 3 * Many Changes to MPT lib while working with Andi 4 5 Tue Jun 24 12:17:39 1997 Olaf Bachmann <obachman@ratchwum.mathematik.uni-kl.de (Olaf Bachmann)> 6 7 * MPT_Tree.c (MPT_DeleteTypespecedArg): changed un names to mun to 8 avoid conflicts with pari 9 1 10 Tue May 20 18:57:50 1997 Olaf Bachmann <obachman@ratchwum.mathematik.uni-kl.de (Olaf Bachmann)> 2 11 -
MP/MPT/MPT.h
rf63611 r1b7361b 119 119 #define MP_APREAL_T(arg) ((MP_ApReal_t) (arg)) 120 120 #define MP_STRING_T(arg) ((char *) (arg)) 121 #define MPT_ARG_T(arg) ((MPT_Arg_t) (arg)) 121 122 122 123 /* Now we come to "structured" or composite types */ … … 283 284 MP_AnnotType_t atype); 284 285 extern MPT_Tree_pt MPT_GetProtoTypespec(MPT_Node_pt node); 286 287 extern void MPT_MoveAnnots(MPT_Node_pt from, MPT_Node_pt to); 288 extern MP_Boolean_t MPT_IsTrueProtoTypeSpec(MPT_Tree_pt typespec); 289 290 extern void* IMP_MemAlloc0Fnc(size_t size); 291 extern MPT_Tree_pt MPT_InitTree(MP_Common_t type, 292 MP_DictTag_t dict, 293 MPT_Arg_t nvalue, 294 MP_NumAnnot_t num_annot, 295 MP_NumChild_t num_child); 296 #define MPT_InitBasicTree(type, arg) MPT_InitTree(type, 0, arg, 0, 0) 297 285 298 extern void MPT_PushRecStruct(MPT_Tree_pt tree); 286 299 extern void MPT_PopRecStruct(); … … 289 302 extern MPT_Tree_pt MPT_RecStructTree; 290 303 extern MPT_Tree_pt MPT_RecUnionTree; 304 305 /*************************************************************** 306 * 307 * From MPT_TreeManips.c 308 * 309 ***************************************************************/ 310 extern MPT_Tree_pt MPT_UntypespecTree(MPT_Tree_pt tree); 311 extern MPT_Arg_pt MPT_UntypespecArgs(MPT_Arg_pt args, 312 MP_NumChild_t nc, 313 MPT_Tree_pt typespec); 314 extern MPT_Tree_pt MPT_UntypespecArg(MPT_Arg_t arg, MPT_Tree_pt typespec); 315 316 /*************************************************************** 317 * 318 * From MPT_PolyManips.c 319 * 320 ***************************************************************/ 321 extern MPT_Tree_pt MPT_DDP_2_ExpTree(MPT_Tree_pt tree); 322 extern MP_Boolean_t MPT_IsExpVectorTypespec(MPT_Tree_pt typespec, 323 MP_NumChild_t *num_vars); 291 324 292 325 /*************************************************************** … … 304 337 extern MPT_Status_t (*MPT_PutExternalData)(MP_Link_pt link, 305 338 MPT_Arg_t data); 306 307 308 339 extern void MPT_DefaultDeleteExternalData(MPT_Arg_t edata); 340 extern void MPT_DefaultCpyExternalData(MPT_Arg_t *src, 341 MPT_Arg_t dest); 342 extern MPT_Status_t MPT_DefaultGetExternalData(MP_Link_pt link, 343 MPT_Arg_t *data, 344 MPT_Node_pt node); 345 extern MPT_Status_t MPT_DefaultPutExternalData(MP_Link_pt link, 346 MPT_Arg_t data); 347 348 /*************************************************************** 349 * 350 * from MPT_PutPoly.c 351 * 352 ***************************************************************/ 353 typedef void* MPT_ExternalPoly_t; 354 typedef void* MPT_ExternalMonomial_t; 355 typedef void* MPT_ExternalCoeff_t; 356 typedef void* MPT_ExternalIdeal_t; 357 typedef void* MPT_External2DMatrix_t; 358 typedef void* MPT_External2DPolyMatrix_t; 359 360 361 typedef struct MPT_PutPolyFncs_t 362 { 363 MP_Sint32_t (*GetCharacteristic) (MPT_ExternalPoly_t poly); 364 MP_Uint32_t (*GetNumberOfVariables) (MPT_ExternalPoly_t poly); 365 char * (*GetVarName) (MPT_ExternalPoly_t poly, MP_Uint32_t varnumber); 366 MP_Common_t (*GetMonomialOrdering) (MPT_ExternalPoly_t poly); 367 MP_Uint32_t (*GetNumberOfMonomials) (MPT_ExternalPoly_t poly); 368 MP_Status_t (*PutCoeffFillExpVector) (MP_Link_pt link, 369 MPT_ExternalPoly_t poly, 370 MP_Uint32_t monomial, 371 MP_Uint32_t varnumber, 372 MP_Sint32_t *ex_pvector); 373 } MPT_PutPolyFncs_t; 374 typedef MPT_PutPolyFncs_t* MPT_PutPolyFncs_pt; 375 376 typedef struct MPT_PutIdealFncs_t 377 { 378 MP_Uint32_t (*GetNumberOfPolys) (MPT_ExternalIdeal_t ideal); 379 MPT_ExternalPoly_t (*GetPoly) (MPT_ExternalIdeal_t ideal, 380 MP_Uint32_t polynumber); 381 MPT_PutPolyFncs_pt polyfncs; 382 } MPT_PutIdealFncs_t; 383 typedef MPT_PutIdealFncs_t * MPT_PutIdealFncs_pt; 384 385 typedef struct MPT_Put2DMatrixFncs_t 386 { 387 void (*GetDimension) (MPT_External2DMatrix_t matrix, 388 MP_Uint32_t *m, 389 MP_Uint32_t *n); 390 MP_Status_t (*PutElType) (MP_Link_pt link, MPT_External2DMatrix_t matrix); 391 MP_Status_t (*PutEl) (MP_Link_pt link, 392 MPT_External2DMatrix_t matrix, 393 MP_Uint32_t m, 394 MP_Uint32_t n); 395 } MPT_Put2DMatrixFncs_t; 396 typedef MPT_Put2DMatrixFncs_t* MPT_Put2DMatrixFncs_pt; 397 398 typedef struct MPT_Put2DPolyMatrixFncs_t 399 { 400 void (*GetDimension) (MPT_External2DPolyMatrix_t matrix, 401 MP_Uint32_t *m, 402 MP_Uint32_t *n); 403 MPT_ExternalPoly_t (*GetPoly) (MPT_External2DPolyMatrix_t matrix, 404 MP_Uint32_t m, 405 MP_Uint32_t n); 406 MPT_PutPolyFncs_pt polyfncs; 407 } MPT_Put2DPolyMatrixFncs_t; 408 typedef MPT_Put2DPolyMatrixFncs_t* MPT_Put2DPolyMatrixFncs_pt; 409 410 411 412 extern MP_Status_t MPT_PutDDPoly(MP_Link_pt link, 413 MPT_ExternalPoly_t poly, 414 MPT_PutPolyFncs_pt polyfncs); 415 extern MP_Status_t MPT_PutPolyAnnots(MP_Link_pt link, 416 MPT_ExternalPoly_t poly, 417 MPT_PutPolyFncs_pt polyfncs); 418 extern MP_Status_t MPT_PutPolyData(MP_Link_pt link, 419 MPT_ExternalPoly_t poly, 420 MP_Uint32_t nummonimials, 421 MPT_PutPolyFncs_pt polyfncs); 422 extern MP_Status_t MPT_PutDDPIdeal(MP_Link_pt link, 423 MPT_ExternalIdeal_t ideal, 424 MPT_PutIdealFncs_pt polyfncs); 425 extern MP_Status_t MPT_PutDense2DMatrix(MP_Link_pt link, 426 MPT_External2DMatrix_t matrix, 427 MPT_Put2DMatrixFncs_pt matrixfncs); 428 extern MP_Status_t MPT_Put2DPolyMatrix(MP_Link_pt link, 429 MPT_External2DPolyMatrix_t matrix, 430 MPT_Put2DPolyMatrixFncs_pt mfncts); 431 432 /*************************************************************** 433 * 434 * from MPT_GetPoly.c 435 * 436 ***************************************************************/ 437 extern MP_Boolean_t MPT_IsDDPTree(MPT_Tree_pt tree, 438 MP_Sint32_t *characteristic, 439 MPT_Tree_pt *var_tree, 440 MP_Common_t *ordering); 441 extern MPT_Tree_pt MPT_GetVarNamesTree(MPT_Node_pt node, 442 MP_NumChild_t num_vars); 443 extern MP_Boolean_t MPT_IsIdealTree(MPT_Tree_pt tree, 444 MP_Sint32_t *characteristic, 445 MPT_Tree_pt *var_tree, 446 MP_Common_t *ordering); 447 309 448 /*************************************************************** 310 449 * … … 333 472 while (0) 334 473 474 #define failr(cond) \ 475 do \ 476 { \ 477 if ((cond) != MP_Success) return MP_Failure; \ 478 } while (0) 479 480 /****************************************************************** 481 * 482 * some handy defines 483 * 484 ******************************************************************/ 485 #define MP_AnnotReqValTree (MP_AnnotRequired | MP_AnnotValuated | MP_AnnotTreeScope) 486 487 #define MP_AnnotReqValNode (MP_AnnotRequired | MP_AnnotValuated) 488 335 489 #endif /* _MPT_H_ */ 336 490 -
MP/MPT/Makefile.in
rf63611 r1b7361b 47 47 48 48 SRCS = MPT_Tree.c MPT_Error.c MPT_ExternalData.c MPT_Misc.c \ 49 MPT_ApNumber.c MPT_Get.c MPT_Put.c 49 MPT_ApNumber.c MPT_Get.c MPT_Put.c MPT_TreeManips.c \ 50 MPT_PolyManips.c MPT_PutPoly.c MPT_GetPoly.c 50 51 OBJS = MPT_Tree.o MPT_Error.o MPT_ExternalData.o MPT_Misc.o \ 51 MPT_ApNumber.o MPT_Get.o MPT_Put.o 52 MPT_ApNumber.o MPT_Get.o MPT_Put.o MPT_TreeManips.o \ 53 MPT_PolyManips.o MPT_PutPoly.o MPT_GetPoly.o 52 54 53 55 DISTFILES = ${SRCS} MPT.h Makefile.in … … 66 68 67 69 install: libMPT.a 70 $(MKINSTALLDIRS) $(libdir) 71 $(MKINSTALLDIRS) $(includedir) 68 72 $(INSTALL_DATA) libMPT.a $(libdir) 69 73 $(RANLIB) $(libdir)/libMPT.a … … 104 108 depend: 105 109 $(CC) -MM $(CPPFLAGS) $(DEFS) $(SRCS) >> Makefile 110 111 test: test.c 112 $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) test.c -o test -L$(libdir) -lMPT -lMP -lgmp
Note: See TracChangeset
for help on using the changeset viewer.