My Project
flintconv.h
Go to the documentation of this file.
1 // emacs edit mode for this file is -*- C++ -*-
2 #ifndef LIBPOLYS_POLYS_FLINTCONV_H
3 #define LIBPOLYS_POLYS_FLINTCONV_H
4 /****************************************
5 * Computer Algebra System SINGULAR *
6 ****************************************/
7 /*
8 * ABSTRACT: convert data between Singular and Flint
9 */
10 /** @file flintconv.h
11  *
12  * This file is work in progress and currently not part of the official Singular
13  *
14  * @note the code is garded by the version test __FLINT_RELEASE >= 20503 (>=2.5.3)
15  * In its current form it will never become an official part.
16  * (conversion routines may be moved to other files/directories, etc.)
17  *
18  * ABSTRACT: Conversion to/from FLINT, and access to some FLINT-routines
19  *
20  * REQUIREMENTS:
21  * - agreement about the interface to LLL
22  * - FLINT providing LLL
23  * (none of the above is currently true, but all of them is required)
24  *
25  **/
26 
27 #ifdef HAVE_FLINT
28 #include <flint/flint.h>
29 
30 #include "polys/matpol.h"
31 #include "coeffs/bigintmat.h"
32 #include <flint/fmpz.h>
33 #include <flint/fmpq.h>
34 #include <flint/fmpz_poly.h>
35 #include <flint/fmpq_poly.h>
36 #include <flint/fmpz_poly_mat.h>
37 #if __FLINT_RELEASE >= 20500
38 #include <flint/fmpz_lll.h>
39 #endif
40 
41 int convFlintISingI (fmpz_t f);
42 void convSingIFlintI(fmpz_t f, int p);
43 void convFlintNSingN (mpz_t z, fmpz_t f);
44 void convSingNFlintN(fmpz_t f, mpz_t z);
45 void convSingNFlintN(fmpz_t f, number n);
46 void convSingNFlintN_QQ(fmpq_t f, number n);
47 void convSingNFlintN(fmpq_t f, number n, const coeffs cf);
48 void convSingNFlintNN(fmpq_t re, fmpq_t im, number n, const coeffs cf);
49 number convFlintNSingN (fmpz_t f);
50 number convFlintNSingN (fmpq_t f, const coeffs cf);
51 number convFlintNSingN (fmpz_t f, const coeffs cf);
52 number convFlintNSingN_QQ(fmpq_t f, const coeffs cf);
53 void convSingPFlintP(fmpq_poly_t res, poly p, const ring r);
54 void convSingImPFlintP(fmpq_poly_t res, poly p, const ring r);
55 poly convFlintPSingP(fmpq_poly_t f, const ring r);
56 
59 #endif
60 #endif
61 // LIBPOLYS_POLYS_FLINTCONV_H
int p
Definition: cfModGcd.cc:4078
CanonicalForm cf
Definition: cfModGcd.cc:4083
FILE * f
Definition: checklibs.c:9
Matrices of numbers.
Definition: bigintmat.h:51
Definition: intvec.h:23
CanonicalForm res
Definition: facAbsFact.cc:60
void convSingPFlintP(fmpq_poly_t res, poly p, const ring r)
void convSingNFlintN(fmpz_t f, mpz_t z)
bigintmat * singflint_LLL(bigintmat *A, bigintmat *T)
void convSingNFlintNN(fmpq_t re, fmpq_t im, number n, const coeffs cf)
void convSingIFlintI(fmpz_t f, int p)
void convSingNFlintN_QQ(fmpq_t f, number n)
void convFlintNSingN(mpz_t z, fmpz_t f)
poly convFlintPSingP(fmpq_poly_t f, const ring r)
void convSingImPFlintP(fmpq_poly_t res, poly p, const ring r)
int convFlintISingI(fmpz_t f)
number convFlintNSingN_QQ(fmpq_t f, const coeffs cf)
STATIC_VAR jList * T
Definition: janet.cc:30
The main handler for Singular numbers which are suitable for Singular polynomials.
#define A
Definition: sirandom.c:24