My Project
Functions
flintcf_Q.h File Reference
#include "misc/auxiliary.h"

Go to the source code of this file.

Functions

BOOLEAN flintQ_InitChar (coeffs cf, void *infoStruct)
 
coeffs flintQInitCfByName (char *s, n_coeffType n)
 

Function Documentation

◆ flintQ_InitChar()

BOOLEAN flintQ_InitChar ( coeffs  cf,
void *  infoStruct 
)

Definition at line 554 of file flintcf_Q.cc.

555{
556 char *pp=(char*)infoStruct;
557 cf->cfCoeffName = CoeffName;
558 cf->nCoeffIsEqual = CoeffIsEqual;
559 cf->cfKillChar = KillChar;
560 cf->cfSetChar = SetChar;
561 cf->ch=0; //char 0
562 cf->cfMult = Mult;
563 cf->cfSub = Sub;
564 cf->cfAdd = Add;
565 cf->cfDiv = Div;
566 cf->cfExactDiv = ExactDiv; // ???
567 cf->cfInit =Init;
568 cf->cfInitMPZ =InitMPZ;
569 cf->cfSize = Size;
570 cf->cfInt = Int;
571 cf->cfMPZ = MPZ;
572 cf->cfInpNeg = Neg;
573 cf->cfInvers = Invers;
574 cf->cfCopy = Copy;
575 cf->cfRePart = Copy;
576 // default: cf->cfImPart = ndReturn0;
577 cf->cfWriteLong = WriteShort; //WriteLong;
578 cf->cfWriteShort = WriteShort;
579 cf->cfRead = Read;
580 cf->cfNormalize = Normalize;
581
582 //cf->cfDivComp=
583 //cf->cfIsUnit=
584 //cf->cfGetUnit=
585 //cf->cfDivBy=
586
587 cf->cfGreater=Greater;
588 cf->cfEqual =Equal;
589 cf->cfIsZero =IsZero;
590 cf->cfIsOne =IsOne;
591 cf->cfIsMOne =IsMOne;
592 cf->cfGreaterZero=GreaterZero;
593
594 cf->cfPower = Power;
595 cf->cfGetDenom = GetDenom;
596 cf->cfGetNumerator = GetNumerator;
597 cf->cfGcd = Gcd;
598 cf->cfExtGcd = ExtGcd;
599 cf->cfLcm = Lcm;
600 cf->cfDelete = Delete;
601 cf->cfSetMap = SetMap;
602 // default: cf->cfInpMult
603 // default: cf->cfInpAdd
604 cf->cfFarey =Farey;
605 cf->cfChineseRemainder=ChineseRemainder;
606 cf->cfParDeg = ParDeg;
607 cf->cfParameter = Parameter;
608 // cf->cfClearContent = ClearContent;
609 // cf->cfClearDenominators = ClearDenominators;
610 cf->convFactoryNSingN=ConvFactoryNSingN;
611 cf->convSingNFactoryN=ConvSingNFactoryN;
612 cf->cfWriteFd = WriteFd;
613 cf->cfReadFd = ReadFd;
614#ifdef LDEBUG
615 cf->cfDBTest = DBTest;
616#endif
617
618 cf->iNumberOfParameters = 1;
619 char **pn=(char**)omAlloc0(sizeof(char*));
620 pn[0]=omStrDup(pp);
621 cf->pParameterNames = (const char **)pn;
622 cf->has_simple_Inverse= FALSE;
623 cf->has_simple_Alloc= FALSE;
624 cf->is_field=FALSE;
625
626 return FALSE;
627}
#define FALSE
Definition: auxiliary.h:96
CanonicalForm FACTORY_PUBLIC pp(const CanonicalForm &)
CanonicalForm pp ( const CanonicalForm & f )
Definition: cf_gcd.cc:676
CanonicalForm cf
Definition: cfModGcd.cc:4083
static number ExtGcd(number a, number b, number *s, number *t, const coeffs)
Definition: flintcf_Q.cc:386
static void WriteShort(number a, const coeffs r)
Definition: flintcf_Q.cc:218
static number Copy(number a, const coeffs)
Definition: flintcf_Q.cc:200
static number ChineseRemainder(number *, number *, int, BOOLEAN, CFArray &, const coeffs)
Definition: flintcf_Q.cc:439
static void Normalize(number &a, const coeffs)
Definition: flintcf_Q.cc:312
static void SetChar(const coeffs)
Definition: flintcf_Q.cc:52
static nMapFunc SetMap(const coeffs, const coeffs)
Definition: flintcf_Q.cc:409
static number Farey(number, number, const coeffs)
Definition: flintcf_Q.cc:434
static number GetDenom(number &n, const coeffs)
Definition: flintcf_Q.cc:362
static const char * Read(const char *st, number *a, const coeffs r)
Definition: flintcf_Q.cc:265
static BOOLEAN IsOne(number a, const coeffs)
Definition: flintcf_Q.cc:328
char * CoeffName(const coeffs r)
Definition: flintcf_Q.cc:519
static number ConvFactoryNSingN(const CanonicalForm, const coeffs)
Definition: flintcf_Q.cc:509
static number InitMPZ(mpz_t i, const coeffs)
Definition: flintcf_Q.cc:127
static int Size(number n, const coeffs)
Definition: flintcf_Q.cc:138
static number Add(number a, number b, const coeffs)
Definition: flintcf_Q.cc:70
static number Div(number a, number b, const coeffs)
Definition: flintcf_Q.cc:77
static void WriteFd(number a, const ssiInfo *d, const coeffs)
Definition: flintcf_Q.cc:455
static void Delete(number *a, const coeffs)
Definition: flintcf_Q.cc:400
static number Parameter(const int, const coeffs)
Definition: flintcf_Q.cc:448
static BOOLEAN DBTest(number, const char *, const int, const coeffs)
Definition: flintcf_Q.cc:544
static void KillChar(coeffs cf)
Definition: flintcf_Q.cc:549
static CanonicalForm ConvSingNFactoryN(number, BOOLEAN, const coeffs)
Definition: flintcf_Q.cc:514
static number Init(long i, const coeffs)
Definition: flintcf_Q.cc:120
static void MPZ(mpz_t result, number &n, const coeffs)
Definition: flintcf_Q.cc:158
static number ReadFd(const ssiInfo *d, const coeffs)
Definition: flintcf_Q.cc:479
static number ExactDiv(number a, number b, const coeffs)
Definition: flintcf_Q.cc:99
static void Power(number a, int i, number *result, const coeffs)
Definition: flintcf_Q.cc:355
static BOOLEAN IsMOne(number k, const coeffs)
Definition: flintcf_Q.cc:332
static number Sub(number a, number b, const coeffs)
Definition: flintcf_Q.cc:63
static number GetNumerator(number &n, const coeffs)
Definition: flintcf_Q.cc:370
static BOOLEAN GreaterZero(number, const coeffs)
Definition: flintcf_Q.cc:349
static number Gcd(number a, number b, const coeffs)
Definition: flintcf_Q.cc:379
static BOOLEAN CoeffIsEqual(const coeffs r, n_coeffType n, void *)
Definition: flintcf_Q.cc:48
static number Mult(number a, number b, const coeffs)
Definition: flintcf_Q.cc:56
static number Invers(number a, const coeffs)
Definition: flintcf_Q.cc:180
static number Lcm(number, number, const coeffs)
Definition: flintcf_Q.cc:395
static int ParDeg(number x, const coeffs)
Definition: flintcf_Q.cc:444
static BOOLEAN IsZero(number a, const coeffs)
Definition: flintcf_Q.cc:324
static number Neg(number a, const coeffs)
Definition: flintcf_Q.cc:175
static BOOLEAN Equal(number a, number b, const coeffs)
Definition: flintcf_Q.cc:320
static BOOLEAN Greater(number a, number b, const coeffs)
Definition: flintcf_Q.cc:316
static long Int(number &n, const coeffs)
Definition: flintcf_Q.cc:142
#define omStrDup(s)
Definition: omAllocDecl.h:263
#define omAlloc0(size)
Definition: omAllocDecl.h:211

◆ flintQInitCfByName()

coeffs flintQInitCfByName ( char *  s,
n_coeffType  n 
)

Definition at line 526 of file flintcf_Q.cc.

527{
528 const char start[]="flintQp[";
529 const int start_len=strlen(start);
530 if (strncmp(s,start,start_len)==0)
531 {
532 s+=start_len;
533 char st[10];
534 int l=sscanf(s,"%s",st);
535 if (l==1)
536 {
537 while (st[strlen(st)-1]==']') st[strlen(st)-1]='\0';
538 return nInitChar(n,(void*)st);
539 }
540 }
541 return NULL;
542}
int l
Definition: cfEzgcd.cc:100
coeffs nInitChar(n_coeffType t, void *parameter)
one-time initialisations for new coeffs in case of an error return NULL
Definition: numbers.cc:414
const CanonicalForm int s
Definition: facAbsFact.cc:51
#define NULL
Definition: omList.c:12