source: git/libpolys/polys/flintconv.h @ 760bfdc

fieker-DuValspielwiese
Last change on this file since 760bfdc was d5f8dba, checked in by Hans Schoenemann <hannes@…>, 5 years ago
multiplication via flint for polys over Z
  • Property mode set to 100644
File size: 2.0 KB
Line 
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
41int convFlintISingI (fmpz_t f);
42void convSingIFlintI(fmpz_t f, int p);
43void convFlintNSingN (mpz_t z, fmpz_t f);
44void convSingNFlintN(fmpz_t f, mpz_t z);
45void convSingNFlintN(fmpz_t f, number n);
46void convSingNFlintN_QQ(fmpq_t f, number n);
47void convSingNFlintN(fmpq_t f, number n, const coeffs cf);
48void convSingNFlintNN(fmpq_t re, fmpq_t im, number n, const coeffs cf);
49number convFlintNSingN (fmpz_t f);
50number convFlintNSingN (fmpq_t f, const coeffs cf);
51number convFlintNSingN (fmpz_t f, const coeffs cf);
52number convFlintNSingN_QQ(fmpq_t f, const coeffs cf);
53void convSingPFlintP(fmpq_poly_t res, poly p, const ring r);
54void convSingImPFlintP(fmpq_poly_t res, poly p, const ring r);
55poly convFlintPSingP(fmpq_poly_t f, const ring r);
56
57bigintmat*  singflint_LLL(bigintmat* A, bigintmat* T);
58intvec* singflint_LLL(intvec* A, intvec* T);
59#endif
60#endif
61// LIBPOLYS_POLYS_FLINTCONV_H
Note: See TracBrowser for help on using the repository browser.