#ifndef bigint_h #define bigint_h #include "fft.h" typedef struct BigIntTag { Real * Coef; long Size, SizeMax; } BigInt; /* * Decrease the base if the worst error in FFT become too large */ #define BASE 10000. #define invBASE 0.0001 #define NBDEC_BASE 4 void InitializeBigInt(BigInt * A, long MaxSize); void FreeBigInt(BigInt * A); void PrintBigInt(BigInt * A); void UpdateBigInt(BigInt * A); void AddBigInt(BigInt * A, BigInt * B, BigInt * C); void MulBigInt(BigInt * A, BigInt * B, BigInt * C); void Inverse(BigInt * A, BigInt * B, BigInt * tmpBigInt); #endif