{-# LINE 1 "src/Data/Number/Flint/Fmpz/Mod/MPoly/FFI.hsc" #-}
module Data.Number.Flint.Fmpz.Mod.MPoly.FFI (
FmpzModMPoly (..)
, CFmpzModMPoly (..)
, newFmpzModMPoly
, withFmpzModMPoly
, FmpzModMPolyCtx (..)
, CFmpzModMPolyCtx (..)
, newFmpzModMPolyCtx
, withFmpzModMPolyCtx
, fmpz_mod_mpoly_ctx_init
, fmpz_mod_mpoly_ctx_nvars
, fmpz_mod_mpoly_ctx_ord
, fmpz_mod_mpoly_ctx_get_modulus
, fmpz_mod_mpoly_ctx_clear
, fmpz_mod_mpoly_init
, fmpz_mod_mpoly_init2
, fmpz_mod_mpoly_init3
, fmpz_mod_mpoly_clear
, fmpz_mod_mpoly_get_str_pretty
, fmpz_mod_mpoly_fprint_pretty
, fmpz_mod_mpoly_print_pretty
, fmpz_mod_mpoly_set_str_pretty
, fmpz_mod_mpoly_gen
, fmpz_mod_mpoly_is_gen
, fmpz_mod_mpoly_set
, fmpz_mod_mpoly_equal
, fmpz_mod_mpoly_swap
, fmpz_mod_mpoly_is_fmpz
, fmpz_mod_mpoly_get_fmpz
, fmpz_mod_mpoly_set_fmpz
, fmpz_mod_mpoly_set_ui
, fmpz_mod_mpoly_set_si
, fmpz_mod_mpoly_zero
, fmpz_mod_mpoly_one
, fmpz_mod_mpoly_equal_fmpz
, fmpz_mod_mpoly_equal_ui
, fmpz_mod_mpoly_equal_si
, fmpz_mod_mpoly_is_zero
, fmpz_mod_mpoly_is_one
, fmpz_mod_mpoly_degrees_fit_si
, fmpz_mod_mpoly_degrees_fmpz
, fmpz_mod_mpoly_degrees_si
, fmpz_mod_mpoly_degree_fmpz
, fmpz_mod_mpoly_degree_si
, fmpz_mod_mpoly_total_degree_fits_si
, fmpz_mod_mpoly_total_degree_fmpz
, fmpz_mod_mpoly_total_degree_si
, fmpz_mod_mpoly_used_vars
, fmpz_mod_mpoly_get_coeff_fmpz_monomial
, fmpz_mod_mpoly_set_coeff_fmpz_monomial
, fmpz_mod_mpoly_get_coeff_fmpz_fmpz
, fmpz_mod_mpoly_get_coeff_fmpz_ui
, fmpz_mod_mpoly_set_coeff_fmpz_fmpz
, fmpz_mod_mpoly_set_coeff_ui_fmpz
, fmpz_mod_mpoly_set_coeff_si_fmpz
, fmpz_mod_mpoly_set_coeff_fmpz_ui
, fmpz_mod_mpoly_set_coeff_ui_ui
, fmpz_mod_mpoly_set_coeff_si_ui
, fmpz_mod_mpoly_get_coeff_vars_ui
, fmpz_mod_mpoly_cmp
, fmpz_mod_mpoly_is_canonical
, fmpz_mod_mpoly_length
, fmpz_mod_mpoly_resize
, fmpz_mod_mpoly_get_term_coeff_fmpz
, fmpz_mod_mpoly_set_term_coeff_fmpz
, fmpz_mod_mpoly_set_term_coeff_ui
, fmpz_mod_mpoly_set_term_coeff_si
, fmpz_mod_mpoly_term_exp_fits_si
, fmpz_mod_mpoly_term_exp_fits_ui
, fmpz_mod_mpoly_get_term_exp_fmpz
, fmpz_mod_mpoly_get_term_exp_ui
, fmpz_mod_mpoly_get_term_exp_si
, fmpz_mod_mpoly_get_term_var_exp_ui
, fmpz_mod_mpoly_get_term_var_exp_si
, fmpz_mod_mpoly_set_term_exp_fmpz
, fmpz_mod_mpoly_set_term_exp_ui
, fmpz_mod_mpoly_get_term
, fmpz_mod_mpoly_get_term_monomial
, fmpz_mod_mpoly_push_term_fmpz_fmpz
, fmpz_mod_mpoly_push_term_ui_fmpz
, fmpz_mod_mpoly_push_term_si_fmpz
, fmpz_mod_mpoly_push_term_fmpz_ui
, fmpz_mod_mpoly_push_term_ui_ui
, fmpz_mod_mpoly_push_term_si_ui
, fmpz_mod_mpoly_sort_terms
, fmpz_mod_mpoly_combine_like_terms
, fmpz_mod_mpoly_randtest_bound
, fmpz_mod_mpoly_randtest_bounds
, fmpz_mod_mpoly_randtest_bits
, fmpz_mod_mpoly_add_fmpz
, fmpz_mod_mpoly_add_ui
, fmpz_mod_mpoly_add_si
, fmpz_mod_mpoly_sub_fmpz
, fmpz_mod_mpoly_sub_ui
, fmpz_mod_mpoly_sub_si
, fmpz_mod_mpoly_add
, fmpz_mod_mpoly_sub
, fmpz_mod_mpoly_neg
, fmpz_mod_mpoly_scalar_mul_fmpz
, fmpz_mod_mpoly_scalar_mul_ui
, fmpz_mod_mpoly_scalar_mul_si
, fmpz_mod_mpoly_scalar_addmul_fmpz
, fmpz_mod_mpoly_make_monic
, fmpz_mod_mpoly_derivative
, fmpz_mod_mpoly_evaluate_all_fmpz
, fmpz_mod_mpoly_evaluate_one_fmpz
, fmpz_mod_mpoly_compose_fmpz_mod_mpoly_geobucket
, fmpz_mod_mpoly_compose_fmpz_mod_mpoly
, fmpz_mod_mpoly_mul
, fmpz_mod_mpoly_mul_johnson
, fmpz_mod_mpoly_mul_dense
, fmpz_mod_mpoly_pow_fmpz
, fmpz_mod_mpoly_pow_ui
, fmpz_mod_mpoly_divides
, fmpz_mod_mpoly_div
, fmpz_mod_mpoly_divrem
, fmpz_mod_mpoly_divrem_ideal
, fmpz_mod_mpoly_term_content
, fmpz_mod_mpoly_content_vars
, fmpz_mod_mpoly_gcd
, fmpz_mod_mpoly_gcd_cofactors
, fmpz_mod_mpoly_gcd_brown
, fmpz_mod_mpoly_gcd_hensel
, fmpz_mod_mpoly_gcd_subresultant
, fmpz_mod_mpoly_gcd_zippel
, fmpz_mod_mpoly_gcd_zippel2
, fmpz_mod_mpoly_resultant
, fmpz_mod_mpoly_discriminant
, fmpz_mod_mpoly_sqrt
, fmpz_mod_mpoly_is_square
, fmpz_mod_mpoly_quadratic_root
, fmpz_mod_mpoly_univar_init
, fmpz_mod_mpoly_univar_clear
, fmpz_mod_mpoly_univar_swap
, fmpz_mod_mpoly_to_univar
, fmpz_mod_mpoly_from_univar
, fmpz_mod_mpoly_univar_degree_fits_si
, fmpz_mod_mpoly_univar_length
, fmpz_mod_mpoly_univar_get_term_exp_si
, fmpz_mod_mpoly_univar_get_term_coeff
, fmpz_mod_mpoly_univar_swap_term_coeff
, fmpz_mod_mpoly_univar_set_coeff_ui
, fmpz_mod_mpoly_univar_resultant
, fmpz_mod_mpoly_univar_discriminant
, fmpz_mod_mpoly_inflate
, fmpz_mod_mpoly_deflate
, fmpz_mod_mpoly_deflation
) where
import Control.Monad
import Foreign.C.String
import Foreign.C.Types
import Foreign.ForeignPtr
import Foreign.Ptr ( Ptr, FunPtr, nullPtr, plusPtr )
import Foreign.Storable
import Foreign.Marshal ( free )
import Foreign.Marshal.Array ( advancePtr )
import Data.Number.Flint.Flint
import Data.Number.Flint.Fmpz
import Data.Number.Flint.Fmpz.Poly
import Data.Number.Flint.Fmpq
import Data.Number.Flint.MPoly
import Data.Number.Flint.Fmpz.Mod
data FmpzModMPoly = FmpzModMPoly {-# UNPACK #-} !(ForeignPtr CFmpzModMPoly)
data CFmpzModMPoly = CFmpzModMPoly
instance Storable CFmpzModMPoly where
{-# INLINE sizeOf #-}
sizeOf :: CFmpzModMPoly -> Int
sizeOf CFmpzModMPoly
_ = (Int
48)
{-# LINE 211 "src/Data/Number/Flint/Fmpz/Mod/MPoly/FFI.hsc" #-}
{-# INLINE alignment #-}
alignment :: CFmpzModMPoly -> Int
alignment CFmpzModMPoly
_ = Int
8
{-# LINE 213 "src/Data/Number/Flint/Fmpz/Mod/MPoly/FFI.hsc" #-}
peek = error "CFmpzModMPoly.peek: Not defined"
poke :: Ptr CFmpzModMPoly -> CFmpzModMPoly -> IO ()
poke = forall a. HasCallStack => [Char] -> a
error [Char]
"CFmpzModMPoly.poke: Not defined"
newFmpzModMPoly :: FmpzModMPolyCtx -> IO FmpzModMPoly
newFmpzModMPoly ctx :: FmpzModMPolyCtx
ctx@(FmpzModMPolyCtx ForeignPtr CFmpzModMPolyCtx
pctx) = do
ForeignPtr CFmpzModMPoly
p <- forall a. Storable a => IO (ForeignPtr a)
mallocForeignPtr
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr CFmpzModMPoly
p forall a b. (a -> b) -> a -> b
$ \Ptr CFmpzModMPoly
p ->
forall {a}.
FmpzModMPolyCtx
-> (Ptr CFmpzModMPolyCtx -> IO a) -> IO (FmpzModMPolyCtx, a)
withFmpzModMPolyCtx FmpzModMPolyCtx
ctx forall a b. (a -> b) -> a -> b
$ \Ptr CFmpzModMPolyCtx
ctx -> do
Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
fmpz_mod_mpoly_init Ptr CFmpzModMPoly
p Ptr CFmpzModMPolyCtx
ctx
forall env a.
FinalizerEnvPtr env a -> Ptr env -> ForeignPtr a -> IO ()
addForeignPtrFinalizerEnv FunPtr (Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ())
p_fmpz_mod_mpoly_clear Ptr CFmpzModMPoly
p ForeignPtr CFmpzModMPolyCtx
pctx
forall (m :: * -> *) a. Monad m => a -> m a
return forall a b. (a -> b) -> a -> b
$ ForeignPtr CFmpzModMPoly -> FmpzModMPoly
FmpzModMPoly ForeignPtr CFmpzModMPoly
p
{-# INLINE withFmpzModMPoly #-}
withFmpzModMPoly :: FmpzModMPoly -> (Ptr CFmpzModMPoly -> IO a) -> IO (FmpzModMPoly, a)
withFmpzModMPoly (FmpzModMPoly ForeignPtr CFmpzModMPoly
p) Ptr CFmpzModMPoly -> IO a
f = do
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr CFmpzModMPoly
p forall a b. (a -> b) -> a -> b
$ \Ptr CFmpzModMPoly
fp -> (ForeignPtr CFmpzModMPoly -> FmpzModMPoly
FmpzModMPoly ForeignPtr CFmpzModMPoly
p,) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Ptr CFmpzModMPoly -> IO a
f Ptr CFmpzModMPoly
fp
data FmpzModMPolyUnivar = FmpzModMPolyUnivar {-# UNPACK #-} !(ForeignPtr CFmpzModMPolyUnivar)
data CFmpzModMPolyUnivar = CFmpzModMPolyUnivar
instance Storable CFmpzModMPolyUnivar where
{-# INLINE sizeOf #-}
sizeOf :: CFmpzModMPolyUnivar -> Int
sizeOf CFmpzModMPolyUnivar
_ = (Int
32)
{-# LINE 237 "src/Data/Number/Flint/Fmpz/Mod/MPoly/FFI.hsc" #-}
{-# INLINE alignment #-}
alignment :: CFmpzModMPolyUnivar -> Int
alignment CFmpzModMPolyUnivar
_ = Int
8
{-# LINE 239 "src/Data/Number/Flint/Fmpz/Mod/MPoly/FFI.hsc" #-}
peek = error "CFmpzModMPolyUnivar.peek: Not defined"
poke :: Ptr CFmpzModMPolyUnivar -> CFmpzModMPolyUnivar -> IO ()
poke = forall a. HasCallStack => [Char] -> a
error [Char]
"CFmpzModMPolyUnivar.poke: Not defined"
newFmpzModMPolyUnivar :: FmpzModMPolyCtx -> IO FmpzModMPolyUnivar
newFmpzModMPolyUnivar ctx :: FmpzModMPolyCtx
ctx@(FmpzModMPolyCtx ForeignPtr CFmpzModMPolyCtx
pctx) = do
ForeignPtr CFmpzModMPolyUnivar
p <- forall a. Storable a => IO (ForeignPtr a)
mallocForeignPtr
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr CFmpzModMPolyUnivar
p forall a b. (a -> b) -> a -> b
$ \Ptr CFmpzModMPolyUnivar
p ->
forall {a}.
FmpzModMPolyCtx
-> (Ptr CFmpzModMPolyCtx -> IO a) -> IO (FmpzModMPolyCtx, a)
withFmpzModMPolyCtx FmpzModMPolyCtx
ctx forall a b. (a -> b) -> a -> b
$ \Ptr CFmpzModMPolyCtx
ctx -> do
Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO ()
fmpz_mod_mpoly_univar_init Ptr CFmpzModMPolyUnivar
p Ptr CFmpzModMPolyCtx
ctx
forall env a.
FinalizerEnvPtr env a -> Ptr env -> ForeignPtr a -> IO ()
addForeignPtrFinalizerEnv FunPtr (Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO ())
p_fmpz_mod_mpoly_univar_clear Ptr CFmpzModMPolyUnivar
p ForeignPtr CFmpzModMPolyCtx
pctx
forall (m :: * -> *) a. Monad m => a -> m a
return forall a b. (a -> b) -> a -> b
$ ForeignPtr CFmpzModMPolyUnivar -> FmpzModMPolyUnivar
FmpzModMPolyUnivar ForeignPtr CFmpzModMPolyUnivar
p
{-# INLINE withFmpzModMPolyUnivar #-}
withFmpzModMPolyUnivar :: FmpzModMPolyUnivar
-> (Ptr CFmpzModMPolyUnivar -> IO a) -> IO (FmpzModMPolyUnivar, a)
withFmpzModMPolyUnivar (FmpzModMPolyUnivar ForeignPtr CFmpzModMPolyUnivar
p) Ptr CFmpzModMPolyUnivar -> IO a
f = do
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr CFmpzModMPolyUnivar
p forall a b. (a -> b) -> a -> b
$ \Ptr CFmpzModMPolyUnivar
fp -> (ForeignPtr CFmpzModMPolyUnivar -> FmpzModMPolyUnivar
FmpzModMPolyUnivar ForeignPtr CFmpzModMPolyUnivar
p,) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Ptr CFmpzModMPolyUnivar -> IO a
f Ptr CFmpzModMPolyUnivar
fp
data FmpzModMPolyCtx = FmpzModMPolyCtx {-# UNPACK #-} !(ForeignPtr CFmpzModMPolyCtx)
data CFmpzModMPolyCtx
instance Storable CFmpzModMPolyCtx where
{-# INLINE sizeOf #-}
sizeOf :: CFmpzModMPolyCtx -> Int
sizeOf CFmpzModMPolyCtx
_ = (Int
720)
{-# LINE 263 "src/Data/Number/Flint/Fmpz/Mod/MPoly/FFI.hsc" #-}
{-# INLINE alignment #-}
alignment :: CFmpzModMPolyCtx -> Int
alignment CFmpzModMPolyCtx
_ = Int
8
{-# LINE 265 "src/Data/Number/Flint/Fmpz/Mod/MPoly/FFI.hsc" #-}
peek = error "CFmpzModMPolyCtx.peek: Not defined"
poke :: Ptr CFmpzModMPolyCtx -> CFmpzModMPolyCtx -> IO ()
poke = forall a. HasCallStack => [Char] -> a
error [Char]
"CFmpzModMPolyCtx.poke: Not defined"
newFmpzModMPolyCtx :: CLong -> Ptr COrdering -> Ptr CFmpz -> IO FmpzModMPolyCtx
newFmpzModMPolyCtx CLong
nvars Ptr COrdering
ord Ptr CFmpz
p= do
ForeignPtr CFmpzModMPolyCtx
x <- forall a. Storable a => IO (ForeignPtr a)
mallocForeignPtr
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr CFmpzModMPolyCtx
x forall a b. (a -> b) -> a -> b
$ \Ptr CFmpzModMPolyCtx
x ->
Ptr CFmpzModMPolyCtx
-> CLong -> Ptr COrdering -> Ptr CFmpz -> IO ()
fmpz_mod_mpoly_ctx_init Ptr CFmpzModMPolyCtx
x CLong
nvars Ptr COrdering
ord Ptr CFmpz
p
forall a. FinalizerPtr a -> ForeignPtr a -> IO ()
addForeignPtrFinalizer FunPtr (Ptr CFmpzModMPolyCtx -> IO ())
p_fmpz_mod_mpoly_ctx_clear ForeignPtr CFmpzModMPolyCtx
x
forall (m :: * -> *) a. Monad m => a -> m a
return forall a b. (a -> b) -> a -> b
$ ForeignPtr CFmpzModMPolyCtx -> FmpzModMPolyCtx
FmpzModMPolyCtx ForeignPtr CFmpzModMPolyCtx
x
{-# INLINE withFmpzModMPolyCtx #-}
withFmpzModMPolyCtx :: FmpzModMPolyCtx
-> (Ptr CFmpzModMPolyCtx -> IO a) -> IO (FmpzModMPolyCtx, a)
withFmpzModMPolyCtx (FmpzModMPolyCtx ForeignPtr CFmpzModMPolyCtx
p) Ptr CFmpzModMPolyCtx -> IO a
f = do
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr CFmpzModMPolyCtx
p forall a b. (a -> b) -> a -> b
$ \Ptr CFmpzModMPolyCtx
fp -> Ptr CFmpzModMPolyCtx -> IO a
f Ptr CFmpzModMPolyCtx
fp forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= forall (m :: * -> *) a. Monad m => a -> m a
return forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ForeignPtr CFmpzModMPolyCtx -> FmpzModMPolyCtx
FmpzModMPolyCtx ForeignPtr CFmpzModMPolyCtx
p,)
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_ctx_init"
fmpz_mod_mpoly_ctx_init :: Ptr CFmpzModMPolyCtx -> CLong -> Ptr COrdering -> Ptr CFmpz -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_ctx_nvars"
fmpz_mod_mpoly_ctx_nvars :: Ptr CFmpzModMPolyCtx -> IO CLong
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_ctx_ord"
fmpz_mod_mpoly_ctx_ord :: Ptr CFmpzModMPolyCtx -> IO (Ptr COrdering)
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_ctx_get_modulus"
fmpz_mod_mpoly_ctx_get_modulus :: Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_ctx_clear"
fmpz_mod_mpoly_ctx_clear :: Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h &fmpz_mod_mpoly_ctx_clear"
p_fmpz_mod_mpoly_ctx_clear :: FunPtr (Ptr CFmpzModMPolyCtx -> IO ())
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_init"
fmpz_mod_mpoly_init :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_init2"
fmpz_mod_mpoly_init2 :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_init3"
fmpz_mod_mpoly_init3 :: Ptr CFmpzModMPoly -> CLong -> CFBitCnt -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_clear"
fmpz_mod_mpoly_clear :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h &fmpz_mod_mpoly_clear"
p_fmpz_mod_mpoly_clear :: FunPtr (Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ())
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_str_pretty"
fmpz_mod_mpoly_get_str_pretty :: Ptr CFmpzModMPoly -> Ptr (Ptr CChar) -> Ptr CFmpzModMPolyCtx -> IO CString
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_fprint_pretty"
fmpz_mod_mpoly_fprint_pretty :: Ptr CFile -> Ptr CFmpzModMPoly -> Ptr (Ptr CChar) -> Ptr CFmpzModMPolyCtx -> IO CInt
fmpz_mod_mpoly_print_pretty :: Ptr CFmpzModMPoly
-> Ptr (Ptr CChar)
-> Ptr CFmpzModMPolyCtx
-> IO CInt
fmpz_mod_mpoly_print_pretty :: Ptr CFmpzModMPoly
-> Ptr (Ptr CChar) -> Ptr CFmpzModMPolyCtx -> IO CInt
fmpz_mod_mpoly_print_pretty Ptr CFmpzModMPoly
a Ptr (Ptr CChar)
x Ptr CFmpzModMPolyCtx
ctx = do
forall a. (Ptr a -> IO (Ptr CChar)) -> Ptr a -> IO CInt
printCStr (\Ptr CFmpzModMPoly
a -> Ptr CFmpzModMPoly
-> Ptr (Ptr CChar) -> Ptr CFmpzModMPolyCtx -> IO (Ptr CChar)
fmpz_mod_mpoly_get_str_pretty Ptr CFmpzModMPoly
a Ptr (Ptr CChar)
x Ptr CFmpzModMPolyCtx
ctx) Ptr CFmpzModMPoly
a
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_str_pretty"
fmpz_mod_mpoly_set_str_pretty :: Ptr CFmpzModMPoly -> CString -> Ptr (Ptr CChar) -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_gen"
fmpz_mod_mpoly_gen :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_is_gen"
fmpz_mod_mpoly_is_gen :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set"
fmpz_mod_mpoly_set :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_equal"
fmpz_mod_mpoly_equal :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_swap"
fmpz_mod_mpoly_swap :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_is_fmpz"
fmpz_mod_mpoly_is_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_fmpz"
fmpz_mod_mpoly_get_fmpz :: Ptr CFmpz -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_fmpz"
fmpz_mod_mpoly_set_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_ui"
fmpz_mod_mpoly_set_ui :: Ptr CFmpzModMPoly -> CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_si"
fmpz_mod_mpoly_set_si :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_zero"
fmpz_mod_mpoly_zero :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_one"
fmpz_mod_mpoly_one :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_equal_fmpz"
fmpz_mod_mpoly_equal_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_equal_ui"
fmpz_mod_mpoly_equal_ui :: Ptr CFmpzModMPoly -> CULong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_equal_si"
fmpz_mod_mpoly_equal_si :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_is_zero"
fmpz_mod_mpoly_is_zero :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_is_one"
fmpz_mod_mpoly_is_one :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_degrees_fit_si"
fmpz_mod_mpoly_degrees_fit_si :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_degrees_fmpz"
fmpz_mod_mpoly_degrees_fmpz :: Ptr (Ptr CFmpz) -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_degrees_si"
fmpz_mod_mpoly_degrees_si :: Ptr CLong -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_degree_fmpz"
fmpz_mod_mpoly_degree_fmpz :: Ptr CFmpz -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_degree_si"
fmpz_mod_mpoly_degree_si :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO CLong
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_total_degree_fits_si"
fmpz_mod_mpoly_total_degree_fits_si :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_total_degree_fmpz"
fmpz_mod_mpoly_total_degree_fmpz :: Ptr CFmpz -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_total_degree_si"
fmpz_mod_mpoly_total_degree_si :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CLong
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_used_vars"
fmpz_mod_mpoly_used_vars :: Ptr CInt -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_coeff_fmpz_monomial"
fmpz_mod_mpoly_get_coeff_fmpz_monomial :: Ptr CFmpz -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_coeff_fmpz_monomial"
fmpz_mod_mpoly_set_coeff_fmpz_monomial :: Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_coeff_fmpz_fmpz"
fmpz_mod_mpoly_get_coeff_fmpz_fmpz :: Ptr CFmpz -> Ptr CFmpzModMPoly -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_coeff_fmpz_ui"
fmpz_mod_mpoly_get_coeff_fmpz_ui :: Ptr CFmpz -> Ptr CFmpzModMPoly -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_coeff_fmpz_fmpz"
fmpz_mod_mpoly_set_coeff_fmpz_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_coeff_ui_fmpz"
fmpz_mod_mpoly_set_coeff_ui_fmpz :: Ptr CFmpzModMPoly -> CULong -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_coeff_si_fmpz"
fmpz_mod_mpoly_set_coeff_si_fmpz :: Ptr CFmpzModMPoly -> CLong -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_coeff_fmpz_ui"
fmpz_mod_mpoly_set_coeff_fmpz_ui :: Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_coeff_ui_ui"
fmpz_mod_mpoly_set_coeff_ui_ui :: Ptr CFmpzModMPoly -> CULong -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_coeff_si_ui"
fmpz_mod_mpoly_set_coeff_si_ui :: Ptr CFmpzModMPoly -> CLong -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_coeff_vars_ui"
fmpz_mod_mpoly_get_coeff_vars_ui :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CLong -> Ptr CULong -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_cmp"
fmpz_mod_mpoly_cmp :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_is_canonical"
fmpz_mod_mpoly_is_canonical :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_length"
fmpz_mod_mpoly_length :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CLong
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_resize"
fmpz_mod_mpoly_resize :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_term_coeff_fmpz"
fmpz_mod_mpoly_get_term_coeff_fmpz :: Ptr CFmpz -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_term_coeff_fmpz"
fmpz_mod_mpoly_set_term_coeff_fmpz :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_term_coeff_ui"
fmpz_mod_mpoly_set_term_coeff_ui :: Ptr CFmpzModMPoly -> CLong -> CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_term_coeff_si"
fmpz_mod_mpoly_set_term_coeff_si :: Ptr CFmpzModMPoly -> CLong -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_term_exp_fits_si"
fmpz_mod_mpoly_term_exp_fits_si :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_term_exp_fits_ui"
fmpz_mod_mpoly_term_exp_fits_ui :: Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_term_exp_fmpz"
fmpz_mod_mpoly_get_term_exp_fmpz :: Ptr (Ptr CFmpz) -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_term_exp_ui"
fmpz_mod_mpoly_get_term_exp_ui :: Ptr CULong -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_term_exp_si"
fmpz_mod_mpoly_get_term_exp_si :: Ptr CLong -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_term_var_exp_ui"
fmpz_mod_mpoly_get_term_var_exp_ui :: Ptr CFmpzModMPoly -> CLong -> CLong -> Ptr CFmpzModMPolyCtx -> IO CULong
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_term_var_exp_si"
fmpz_mod_mpoly_get_term_var_exp_si :: Ptr CFmpzModMPoly -> CLong -> CLong -> Ptr CFmpzModMPolyCtx -> IO CLong
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_term_exp_fmpz"
fmpz_mod_mpoly_set_term_exp_fmpz :: Ptr CFmpzModMPoly -> CLong -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_set_term_exp_ui"
fmpz_mod_mpoly_set_term_exp_ui :: Ptr CFmpzModMPoly -> CLong -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_term"
fmpz_mod_mpoly_get_term :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_get_term_monomial"
fmpz_mod_mpoly_get_term_monomial :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_push_term_fmpz_fmpz"
fmpz_mod_mpoly_push_term_fmpz_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_push_term_ui_fmpz"
fmpz_mod_mpoly_push_term_ui_fmpz :: Ptr CFmpzModMPoly -> CULong -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_push_term_si_fmpz"
fmpz_mod_mpoly_push_term_si_fmpz :: Ptr CFmpzModMPoly -> CLong -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_push_term_fmpz_ui"
fmpz_mod_mpoly_push_term_fmpz_ui :: Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_push_term_ui_ui"
fmpz_mod_mpoly_push_term_ui_ui :: Ptr CFmpzModMPoly -> CULong -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_push_term_si_ui"
fmpz_mod_mpoly_push_term_si_ui :: Ptr CFmpzModMPoly -> CLong -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_sort_terms"
fmpz_mod_mpoly_sort_terms :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_combine_like_terms"
fmpz_mod_mpoly_combine_like_terms :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_randtest_bound"
fmpz_mod_mpoly_randtest_bound :: Ptr CFmpzModMPoly -> Ptr CFRandState -> CLong -> CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_randtest_bounds"
fmpz_mod_mpoly_randtest_bounds :: Ptr CFmpzModMPoly -> Ptr CFRandState -> CLong -> Ptr CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_randtest_bits"
fmpz_mod_mpoly_randtest_bits :: Ptr CFmpzModMPoly -> Ptr CFRandState -> CLong -> CMpLimb -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_add_fmpz"
fmpz_mod_mpoly_add_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_add_ui"
fmpz_mod_mpoly_add_ui :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_add_si"
fmpz_mod_mpoly_add_si :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_sub_fmpz"
fmpz_mod_mpoly_sub_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_sub_ui"
fmpz_mod_mpoly_sub_ui :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_sub_si"
fmpz_mod_mpoly_sub_si :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_add"
fmpz_mod_mpoly_add :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_sub"
fmpz_mod_mpoly_sub :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_neg"
fmpz_mod_mpoly_neg :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_scalar_mul_fmpz"
fmpz_mod_mpoly_scalar_mul_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_scalar_mul_ui"
fmpz_mod_mpoly_scalar_mul_ui :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CULong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_scalar_mul_si"
fmpz_mod_mpoly_scalar_mul_si :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_scalar_addmul_fmpz"
fmpz_mod_mpoly_scalar_addmul_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_make_monic"
fmpz_mod_mpoly_make_monic :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_derivative"
fmpz_mod_mpoly_derivative :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_evaluate_all_fmpz"
fmpz_mod_mpoly_evaluate_all_fmpz :: Ptr CFmpz -> Ptr CFmpzModMPoly -> Ptr (Ptr CFmpz) -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_evaluate_one_fmpz"
fmpz_mod_mpoly_evaluate_one_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_compose_fmpz_mod_mpoly_geobucket"
fmpz_mod_mpoly_compose_fmpz_mod_mpoly_geobucket :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr (Ptr (Ptr CFmpzModMPoly)) -> Ptr CFmpzModMPolyCtx -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_compose_fmpz_mod_mpoly"
fmpz_mod_mpoly_compose_fmpz_mod_mpoly :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr (Ptr (Ptr CFmpzModMPoly)) -> Ptr CFmpzModMPolyCtx -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_mul"
fmpz_mod_mpoly_mul :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_mul_johnson"
fmpz_mod_mpoly_mul_johnson :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_mul_dense"
fmpz_mod_mpoly_mul_dense :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_pow_fmpz"
fmpz_mod_mpoly_pow_fmpz :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_pow_ui"
fmpz_mod_mpoly_pow_ui :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CULong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_divides"
fmpz_mod_mpoly_divides :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_div"
fmpz_mod_mpoly_div :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_divrem"
fmpz_mod_mpoly_divrem :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_divrem_ideal"
fmpz_mod_mpoly_divrem_ideal :: Ptr (Ptr (Ptr CFmpzModMPoly)) -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr (Ptr (Ptr CFmpzModMPoly)) -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_term_content"
fmpz_mod_mpoly_term_content :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_content_vars"
fmpz_mod_mpoly_content_vars :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CLong -> CLong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_gcd"
fmpz_mod_mpoly_gcd :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_gcd_cofactors"
fmpz_mod_mpoly_gcd_cofactors :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_gcd_brown"
fmpz_mod_mpoly_gcd_brown :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_gcd_hensel"
fmpz_mod_mpoly_gcd_hensel :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_gcd_subresultant"
fmpz_mod_mpoly_gcd_subresultant :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_gcd_zippel"
fmpz_mod_mpoly_gcd_zippel :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_gcd_zippel2"
fmpz_mod_mpoly_gcd_zippel2 :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_resultant"
fmpz_mod_mpoly_resultant :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_discriminant"
fmpz_mod_mpoly_discriminant :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_sqrt"
fmpz_mod_mpoly_sqrt :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_is_square"
fmpz_mod_mpoly_is_square :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_quadratic_root"
fmpz_mod_mpoly_quadratic_root :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_init"
fmpz_mod_mpoly_univar_init :: Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_clear"
fmpz_mod_mpoly_univar_clear :: Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h &fmpz_mod_mpoly_univar_clear"
p_fmpz_mod_mpoly_univar_clear :: FunPtr (Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO ())
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_swap"
fmpz_mod_mpoly_univar_swap :: Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_to_univar"
fmpz_mod_mpoly_to_univar :: Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPoly -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_from_univar"
fmpz_mod_mpoly_from_univar :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyUnivar -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_degree_fits_si"
fmpz_mod_mpoly_univar_degree_fits_si :: Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_length"
fmpz_mod_mpoly_univar_length :: Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO CLong
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_get_term_exp_si"
fmpz_mod_mpoly_univar_get_term_exp_si :: Ptr CFmpzModMPolyUnivar -> CLong -> Ptr CFmpzModMPolyCtx -> IO CLong
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_get_term_coeff"
fmpz_mod_mpoly_univar_get_term_coeff :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyUnivar -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_swap_term_coeff"
fmpz_mod_mpoly_univar_swap_term_coeff :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyUnivar -> CLong -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_set_coeff_ui"
fmpz_mod_mpoly_univar_set_coeff_ui :: Ptr CFmpzModMPolyUnivar -> CULong -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_resultant"
fmpz_mod_mpoly_univar_resultant :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_univar_discriminant"
fmpz_mod_mpoly_univar_discriminant :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyUnivar -> Ptr CFmpzModMPolyCtx -> IO CInt
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_inflate"
fmpz_mod_mpoly_inflate :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_deflate"
fmpz_mod_mpoly_deflate :: Ptr CFmpzModMPoly -> Ptr CFmpzModMPoly -> Ptr CFmpz -> Ptr CFmpz -> Ptr CFmpzModMPolyCtx -> IO ()
foreign import ccall "fmpz_mod_mpoly.h fmpz_mod_mpoly_deflation"
fmpz_mod_mpoly_deflation :: Ptr CFmpz -> Ptr CFmpz -> Ptr CFmpzModMPoly -> Ptr CFmpzModMPolyCtx -> IO ()