use libc::*;
use crate::deps::*;
use crate::flint::*;
use crate::fmpz_types::*;
use crate::fq_nmod_types::*;
use crate::mpoly_types::*;
use crate::n_poly_types::*;
use crate::nmod_types::*;
#[repr(C)]
pub struct fq_nmod_mpoly_univar_struct {
pub coeffs: *mut fq_nmod_mpoly_struct,
pub exps: *mut fmpz,
pub alloc: slong,
pub length: slong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_nmod_mpoly_univar_struct"]
[::std::mem::size_of::<fq_nmod_mpoly_univar_struct>() - 32usize];
["Alignment of fq_nmod_mpoly_univar_struct"]
[::std::mem::align_of::<fq_nmod_mpoly_univar_struct>() - 8usize];
["Offset of field: fq_nmod_mpoly_univar_struct::coeffs"]
[::std::mem::offset_of!(fq_nmod_mpoly_univar_struct, coeffs) - 0usize];
["Offset of field: fq_nmod_mpoly_univar_struct::exps"]
[::std::mem::offset_of!(fq_nmod_mpoly_univar_struct, exps) - 8usize];
["Offset of field: fq_nmod_mpoly_univar_struct::alloc"]
[::std::mem::offset_of!(fq_nmod_mpoly_univar_struct, alloc) - 16usize];
["Offset of field: fq_nmod_mpoly_univar_struct::length"]
[::std::mem::offset_of!(fq_nmod_mpoly_univar_struct, length) - 24usize];
};
impl Default for fq_nmod_mpoly_univar_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_nmod_mpoly_univar_t = [fq_nmod_mpoly_univar_struct; 1usize];
#[repr(C)]
pub struct fq_nmod_mpolyu_struct {
pub coeffs: *mut fq_nmod_mpoly_struct,
pub exps: *mut ulong,
pub alloc: slong,
pub length: slong,
pub bits: flint_bitcnt_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_nmod_mpolyu_struct"][::std::mem::size_of::<fq_nmod_mpolyu_struct>() - 40usize];
["Alignment of fq_nmod_mpolyu_struct"]
[::std::mem::align_of::<fq_nmod_mpolyu_struct>() - 8usize];
["Offset of field: fq_nmod_mpolyu_struct::coeffs"]
[::std::mem::offset_of!(fq_nmod_mpolyu_struct, coeffs) - 0usize];
["Offset of field: fq_nmod_mpolyu_struct::exps"]
[::std::mem::offset_of!(fq_nmod_mpolyu_struct, exps) - 8usize];
["Offset of field: fq_nmod_mpolyu_struct::alloc"]
[::std::mem::offset_of!(fq_nmod_mpolyu_struct, alloc) - 16usize];
["Offset of field: fq_nmod_mpolyu_struct::length"]
[::std::mem::offset_of!(fq_nmod_mpolyu_struct, length) - 24usize];
["Offset of field: fq_nmod_mpolyu_struct::bits"]
[::std::mem::offset_of!(fq_nmod_mpolyu_struct, bits) - 32usize];
};
impl Default for fq_nmod_mpolyu_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_nmod_mpolyu_t = [fq_nmod_mpolyu_struct; 1usize];
#[repr(C)]
pub struct fq_nmod_mpolyn_struct {
pub coeffs: *mut n_fq_poly_struct,
pub exps: *mut ulong,
pub alloc: slong,
pub length: slong,
pub bits: slong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_nmod_mpolyn_struct"][::std::mem::size_of::<fq_nmod_mpolyn_struct>() - 40usize];
["Alignment of fq_nmod_mpolyn_struct"]
[::std::mem::align_of::<fq_nmod_mpolyn_struct>() - 8usize];
["Offset of field: fq_nmod_mpolyn_struct::coeffs"]
[::std::mem::offset_of!(fq_nmod_mpolyn_struct, coeffs) - 0usize];
["Offset of field: fq_nmod_mpolyn_struct::exps"]
[::std::mem::offset_of!(fq_nmod_mpolyn_struct, exps) - 8usize];
["Offset of field: fq_nmod_mpolyn_struct::alloc"]
[::std::mem::offset_of!(fq_nmod_mpolyn_struct, alloc) - 16usize];
["Offset of field: fq_nmod_mpolyn_struct::length"]
[::std::mem::offset_of!(fq_nmod_mpolyn_struct, length) - 24usize];
["Offset of field: fq_nmod_mpolyn_struct::bits"]
[::std::mem::offset_of!(fq_nmod_mpolyn_struct, bits) - 32usize];
};
impl Default for fq_nmod_mpolyn_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_nmod_mpolyn_t = [fq_nmod_mpolyn_struct; 1usize];
#[repr(C)]
pub struct fq_nmod_mpolyun_struct {
pub coeffs: *mut fq_nmod_mpolyn_struct,
pub exps: *mut ulong,
pub alloc: slong,
pub length: slong,
pub bits: flint_bitcnt_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_nmod_mpolyun_struct"][::std::mem::size_of::<fq_nmod_mpolyun_struct>() - 40usize];
["Alignment of fq_nmod_mpolyun_struct"]
[::std::mem::align_of::<fq_nmod_mpolyun_struct>() - 8usize];
["Offset of field: fq_nmod_mpolyun_struct::coeffs"]
[::std::mem::offset_of!(fq_nmod_mpolyun_struct, coeffs) - 0usize];
["Offset of field: fq_nmod_mpolyun_struct::exps"]
[::std::mem::offset_of!(fq_nmod_mpolyun_struct, exps) - 8usize];
["Offset of field: fq_nmod_mpolyun_struct::alloc"]
[::std::mem::offset_of!(fq_nmod_mpolyun_struct, alloc) - 16usize];
["Offset of field: fq_nmod_mpolyun_struct::length"]
[::std::mem::offset_of!(fq_nmod_mpolyun_struct, length) - 24usize];
["Offset of field: fq_nmod_mpolyun_struct::bits"]
[::std::mem::offset_of!(fq_nmod_mpolyun_struct, bits) - 32usize];
};
impl Default for fq_nmod_mpolyun_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_nmod_mpolyun_t = [fq_nmod_mpolyun_struct; 1usize];
#[repr(C)]
pub struct bad_fq_nmod_embed {
pub smctx: *const fq_nmod_ctx_struct,
pub phi_sm: fq_nmod_poly_t,
pub h: fq_nmod_poly_t,
pub h_as_n_fq_poly: n_fq_poly_t,
pub lgctx: *const fq_nmod_ctx_struct,
pub theta_lg: fq_nmod_t,
pub x_lg: fq_nmod_t,
pub lg_to_sm_mat: nmod_mat_t,
pub sm_to_lg_mat: nmod_mat_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of bad_fq_nmod_embed"][::std::mem::size_of::<bad_fq_nmod_embed>() - 296usize];
["Alignment of bad_fq_nmod_embed"][::std::mem::align_of::<bad_fq_nmod_embed>() - 8usize];
["Offset of field: bad_fq_nmod_embed::smctx"]
[::std::mem::offset_of!(bad_fq_nmod_embed, smctx) - 0usize];
["Offset of field: bad_fq_nmod_embed::phi_sm"]
[::std::mem::offset_of!(bad_fq_nmod_embed, phi_sm) - 8usize];
["Offset of field: bad_fq_nmod_embed::h"]
[::std::mem::offset_of!(bad_fq_nmod_embed, h) - 32usize];
["Offset of field: bad_fq_nmod_embed::h_as_n_fq_poly"]
[::std::mem::offset_of!(bad_fq_nmod_embed, h_as_n_fq_poly) - 56usize];
["Offset of field: bad_fq_nmod_embed::lgctx"]
[::std::mem::offset_of!(bad_fq_nmod_embed, lgctx) - 80usize];
["Offset of field: bad_fq_nmod_embed::theta_lg"]
[::std::mem::offset_of!(bad_fq_nmod_embed, theta_lg) - 88usize];
["Offset of field: bad_fq_nmod_embed::x_lg"]
[::std::mem::offset_of!(bad_fq_nmod_embed, x_lg) - 136usize];
["Offset of field: bad_fq_nmod_embed::lg_to_sm_mat"]
[::std::mem::offset_of!(bad_fq_nmod_embed, lg_to_sm_mat) - 184usize];
["Offset of field: bad_fq_nmod_embed::sm_to_lg_mat"]
[::std::mem::offset_of!(bad_fq_nmod_embed, sm_to_lg_mat) - 240usize];
};
impl Default for bad_fq_nmod_embed {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type bad_fq_nmod_embed_struct = bad_fq_nmod_embed;
pub type bad_fq_nmod_embed_t = [bad_fq_nmod_embed_struct; 1usize];
#[repr(C)]
pub struct bad_fq_nmod_mpoly_embed_chooser {
pub embed: *mut bad_fq_nmod_embed_struct,
pub m: slong,
pub n: slong,
pub k: slong,
pub p: ulong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of bad_fq_nmod_mpoly_embed_chooser"]
[::std::mem::size_of::<bad_fq_nmod_mpoly_embed_chooser>() - 40usize];
["Alignment of bad_fq_nmod_mpoly_embed_chooser"]
[::std::mem::align_of::<bad_fq_nmod_mpoly_embed_chooser>() - 8usize];
["Offset of field: bad_fq_nmod_mpoly_embed_chooser::embed"]
[::std::mem::offset_of!(bad_fq_nmod_mpoly_embed_chooser, embed) - 0usize];
["Offset of field: bad_fq_nmod_mpoly_embed_chooser::m"]
[::std::mem::offset_of!(bad_fq_nmod_mpoly_embed_chooser, m) - 8usize];
["Offset of field: bad_fq_nmod_mpoly_embed_chooser::n"]
[::std::mem::offset_of!(bad_fq_nmod_mpoly_embed_chooser, n) - 16usize];
["Offset of field: bad_fq_nmod_mpoly_embed_chooser::k"]
[::std::mem::offset_of!(bad_fq_nmod_mpoly_embed_chooser, k) - 24usize];
["Offset of field: bad_fq_nmod_mpoly_embed_chooser::p"]
[::std::mem::offset_of!(bad_fq_nmod_mpoly_embed_chooser, p) - 32usize];
};
impl Default for bad_fq_nmod_mpoly_embed_chooser {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type bad_fq_nmod_mpoly_embed_chooser_struct = bad_fq_nmod_mpoly_embed_chooser;
pub type bad_fq_nmod_mpoly_embed_chooser_t = [bad_fq_nmod_mpoly_embed_chooser_struct; 1usize];
#[repr(C)]
pub struct fq_nmod_mpoly_geobucket {
pub polys: [fq_nmod_mpoly_struct; 32usize],
pub temps: [fq_nmod_mpoly_struct; 32usize],
pub length: slong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_nmod_mpoly_geobucket"]
[::std::mem::size_of::<fq_nmod_mpoly_geobucket>() - 3080usize];
["Alignment of fq_nmod_mpoly_geobucket"]
[::std::mem::align_of::<fq_nmod_mpoly_geobucket>() - 8usize];
["Offset of field: fq_nmod_mpoly_geobucket::polys"]
[::std::mem::offset_of!(fq_nmod_mpoly_geobucket, polys) - 0usize];
["Offset of field: fq_nmod_mpoly_geobucket::temps"]
[::std::mem::offset_of!(fq_nmod_mpoly_geobucket, temps) - 1536usize];
["Offset of field: fq_nmod_mpoly_geobucket::length"]
[::std::mem::offset_of!(fq_nmod_mpoly_geobucket, length) - 3072usize];
};
impl Default for fq_nmod_mpoly_geobucket {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_nmod_mpoly_geobucket_struct = fq_nmod_mpoly_geobucket;
pub type fq_nmod_mpoly_geobucket_t = [fq_nmod_mpoly_geobucket_struct; 1usize];
extern "C" {
pub fn bad_fq_nmod_embed_clear(emb: *mut bad_fq_nmod_embed_struct);
pub fn bad_fq_nmod_embed_array_init(
emb: *mut bad_fq_nmod_embed_struct,
bigctx: *const fq_nmod_ctx_struct,
smallctx: *const fq_nmod_ctx_struct,
);
pub fn bad_fq_nmod_embed_sm_to_lg(
out: *mut nmod_poly_struct,
in_: *const fq_nmod_poly_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn bad_fq_nmod_embed_lg_to_sm(
out: *mut fq_nmod_poly_struct,
in_: *const nmod_poly_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn bad_n_fq_embed_sm_to_lg(
out_: *mut ulong,
in_: *const n_poly_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn bad_fq_nmod_embed_n_fq_sm_to_fq_nmod_lg(
out: *mut nmod_poly_struct,
in_: *const n_poly_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn bad_n_fq_embed_lg_to_sm(
out_: *mut n_poly_struct,
in_: *const ulong,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn bad_fq_nmod_embed_fq_nmod_lg_to_n_fq_sm(
out_: *mut n_poly_struct,
in_: *const nmod_poly_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn bad_n_fq_embed_sm_elem_to_lg(
out: *mut ulong,
in_: *const ulong,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn bad_fq_nmod_embed_sm_elem_to_lg(
out: *mut nmod_poly_struct,
in_: *const nmod_poly_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn bad_fq_nmod_mpoly_embed_chooser_init(
embc: *mut bad_fq_nmod_mpoly_embed_chooser_struct,
ectx: *mut fq_nmod_mpoly_ctx_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
randstate: *mut flint_rand_struct,
) -> *mut bad_fq_nmod_embed_struct;
pub fn bad_fq_nmod_mpoly_embed_chooser_clear(
embc: *mut bad_fq_nmod_mpoly_embed_chooser_struct,
ectx: *mut fq_nmod_mpoly_ctx_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
UNUSED_randstate: *mut flint_rand_struct,
);
pub fn bad_fq_nmod_mpoly_embed_chooser_next(
embc: *mut bad_fq_nmod_mpoly_embed_chooser_struct,
ectx: *mut fq_nmod_mpoly_ctx_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
randstate: *mut flint_rand_struct,
) -> *mut bad_fq_nmod_embed_struct;
pub fn fq_nmod_mpoly_ctx_init_deg(
ctx: *mut fq_nmod_mpoly_ctx_struct,
nvars: slong,
ord: ordering_t,
p: ulong,
deg: slong,
);
pub fn fq_nmod_mpoly_ctx_init(
ctx: *mut fq_nmod_mpoly_ctx_struct,
nvars: slong,
ord: ordering_t,
fqctx: *const fq_nmod_ctx_struct,
);
pub fn fq_nmod_mpoly_ctx_init_rand(
ctx: *mut fq_nmod_mpoly_ctx_struct,
state: *mut flint_rand_struct,
max_nvars: slong,
p_bits: flint_bitcnt_t,
deg_bound: slong,
);
pub fn fq_nmod_mpoly_ctx_clear(ctx: *mut fq_nmod_mpoly_ctx_struct);
#[link_name = "fq_nmod_mpoly_ctx_nvars__extern"]
pub fn fq_nmod_mpoly_ctx_nvars(ctx: *const fq_nmod_mpoly_ctx_struct) -> slong;
#[link_name = "fq_nmod_mpoly_ctx_ord__extern"]
pub fn fq_nmod_mpoly_ctx_ord(ctx: *const fq_nmod_mpoly_ctx_struct) -> ordering_t;
#[link_name = "fq_nmod_mpoly_init__extern"]
pub fn fq_nmod_mpoly_init(
A: *mut fq_nmod_mpoly_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpoly_clear__extern"]
pub fn fq_nmod_mpoly_clear(
A: *mut fq_nmod_mpoly_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_init2(
A: *mut fq_nmod_mpoly_struct,
alloc: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_init3(
A: *mut fq_nmod_mpoly_struct,
alloc: slong,
bits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_realloc(
A: *mut fq_nmod_mpoly_struct,
alloc: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_fit_length(
A: *mut fq_nmod_mpoly_struct,
length: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_fit_length_fit_bits(
A: *mut fq_nmod_mpoly_struct,
len: slong,
bits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_fit_length_reset_bits(
A: *mut fq_nmod_mpoly_struct,
len: slong,
bits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "_fq_nmod_mpoly_fit_length__extern"]
pub fn _fq_nmod_mpoly_fit_length(
coeffs: *mut *mut ulong,
coeffs_alloc: *mut slong,
d: slong,
exps: *mut *mut ulong,
exps_alloc: *mut slong,
N: slong,
length: slong,
);
#[link_name = "_fq_nmod_mpoly_set_length__extern"]
pub fn _fq_nmod_mpoly_set_length(
A: *mut fq_nmod_mpoly_struct,
newlen: slong,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpoly_truncate__extern"]
pub fn fq_nmod_mpoly_truncate(
A: *mut fq_nmod_mpoly_struct,
newlen: slong,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_str_pretty(
A: *mut fq_nmod_mpoly_struct,
str_: *const libc::c_char,
x: *mut *const libc::c_char,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_get_str_pretty(
A: *const fq_nmod_mpoly_struct,
x: *mut *const libc::c_char,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> *mut libc::c_char;
pub fn fq_nmod_mpoly_fprint_pretty(
file: *mut FILE,
A: *const fq_nmod_mpoly_struct,
x: *mut *const libc::c_char,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_print_pretty(
A: *const fq_nmod_mpoly_struct,
x: *mut *const libc::c_char,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_gen(
A: *mut fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_is_gen(
A: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_set(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_equal(
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
#[link_name = "fq_nmod_mpoly_swap__extern"]
pub fn fq_nmod_mpoly_swap(
A: *mut fq_nmod_mpoly_struct,
B: *mut fq_nmod_mpoly_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpoly_get_nonzero_n_fq__extern"]
pub fn fq_nmod_mpoly_get_nonzero_n_fq(
A: *const fq_nmod_mpoly_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> *mut ulong;
pub fn fq_nmod_mpoly_is_fq_nmod(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_get_fq_nmod(
c: *mut nmod_poly_struct,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_fq_nmod(
A: *mut fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_n_fq(
A: *mut fq_nmod_mpoly_struct,
c: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_ui(
A: *mut fq_nmod_mpoly_struct,
c: ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_fmpz(
A: *mut fq_nmod_mpoly_struct,
c: *const fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_fq_nmod_gen(
A: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_equal_fq_nmod(
A: *const fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
#[link_name = "fq_nmod_mpoly_zero__extern"]
pub fn fq_nmod_mpoly_zero(A: *mut fq_nmod_mpoly_struct, ctx: *const fq_nmod_mpoly_ctx_struct);
pub fn fq_nmod_mpoly_one(A: *mut fq_nmod_mpoly_struct, ctx: *const fq_nmod_mpoly_ctx_struct);
#[link_name = "fq_nmod_mpoly_is_zero__extern"]
pub fn fq_nmod_mpoly_is_zero(
A: *const fq_nmod_mpoly_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_is_one(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_degrees_fit_si(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_degrees_fmpz(
degs: *mut *mut fmpz,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_degrees_si(
degs: *mut slong,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_degree_fmpz(
deg: *mut fmpz,
A: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_degree_si(
A: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> slong;
pub fn fq_nmod_mpoly_total_degree_fits_si(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_total_degree_fmpz(
td: *mut fmpz,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_total_degree_si(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> slong;
pub fn fq_nmod_mpoly_used_vars(
used: *mut libc::c_int,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_coeff_fq_nmod_monomial(
c: *mut nmod_poly_struct,
A: *const fq_nmod_mpoly_struct,
M: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_coeff_fq_nmod_monomial(
A: *mut fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
M: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_coeff_fq_nmod_fmpz(
c: *mut nmod_poly_struct,
A: *const fq_nmod_mpoly_struct,
exp: *const *mut fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_coeff_fq_nmod_ui(
c: *mut nmod_poly_struct,
A: *const fq_nmod_mpoly_struct,
exp: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_set_coeff_fq_nmod_fmpz(
A: *mut fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
exp: *const fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_coeff_fq_nmod_fmpz(
A: *mut fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
exp: *const *mut fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_coeff_fq_nmod_ui(
A: *mut fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
exp: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_coeff_vars_ui(
C: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
vars: *const slong,
exps: *const ulong,
length: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "_fq_nmod_mpoly_leadcoeff__extern"]
pub fn _fq_nmod_mpoly_leadcoeff(
A: *const fq_nmod_mpoly_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> *mut ulong;
pub fn fq_nmod_mpoly_is_monic(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_is_fq_nmod_poly(
A: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_get_fq_nmod_poly(
A: *mut fq_nmod_poly_struct,
B: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn _fq_nmod_mpoly_set_fq_nmod_poly(
A: *mut fq_nmod_mpoly_struct,
Abits: flint_bitcnt_t,
Bcoeffs: *const fq_nmod_struct,
Blen: slong,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_fq_nmod_poly(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_poly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_cmp(
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_is_canonical(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
#[link_name = "fq_nmod_mpoly_length__extern"]
pub fn fq_nmod_mpoly_length(
A: *const fq_nmod_mpoly_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> slong;
pub fn fq_nmod_mpoly_resize(
A: *mut fq_nmod_mpoly_struct,
new_length: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_term_coeff_fq_nmod(
c: *mut nmod_poly_struct,
A: *const fq_nmod_mpoly_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_term_coeff_fq_nmod(
A: *mut fq_nmod_mpoly_struct,
i: slong,
c: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_term_exp_fits_ui(
A: *const fq_nmod_mpoly_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_term_exp_fits_si(
A: *const fq_nmod_mpoly_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_get_term_exp_fmpz(
exp: *mut *mut fmpz,
A: *const fq_nmod_mpoly_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_term_exp_ui(
exp: *mut ulong,
A: *const fq_nmod_mpoly_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_term_exp_si(
exp: *mut slong,
A: *const fq_nmod_mpoly_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_term_var_exp_ui(
A: *const fq_nmod_mpoly_struct,
i: slong,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> ulong;
pub fn fq_nmod_mpoly_get_term_var_exp_si(
A: *const fq_nmod_mpoly_struct,
i: slong,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> slong;
pub fn fq_nmod_mpoly_set_term_exp_fmpz(
A: *mut fq_nmod_mpoly_struct,
i: slong,
exp: *const *mut fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_set_term_exp_ui(
A: *mut fq_nmod_mpoly_struct,
i: slong,
exp: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_term(
M: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_get_term_monomial(
M: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_push_term_fq_nmod_fmpz(
A: *mut fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
exp: *const *mut fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_push_term_fq_nmod_ffmpz(
A: *mut fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
exp: *const fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_push_term_fq_nmod_ui(
A: *mut fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
exp: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_sort_terms(
A: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_combine_like_terms(
A: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_reverse(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_assert_canonical(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_radix_sort1(
A: *mut fq_nmod_mpoly_struct,
left: slong,
right: slong,
pos: flint_bitcnt_t,
cmpmask: ulong,
totalmask: ulong,
d: slong,
);
pub fn _fq_nmod_mpoly_radix_sort(
A: *mut fq_nmod_mpoly_struct,
left: slong,
right: slong,
pos: flint_bitcnt_t,
N: slong,
cmpmask: *mut ulong,
d: slong,
);
pub fn _fq_nmod_mpoly_push_exp_ffmpz(
A: *mut fq_nmod_mpoly_struct,
exp: *const fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_push_exp_pfmpz(
A: *mut fq_nmod_mpoly_struct,
exp: *const *mut fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_push_exp_ui(
A: *mut fq_nmod_mpoly_struct,
exp: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_randtest_bound(
A: *mut fq_nmod_mpoly_struct,
state: *mut flint_rand_struct,
length: slong,
exp_bound: ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_randtest_bounds(
A: *mut fq_nmod_mpoly_struct,
state: *mut flint_rand_struct,
length: slong,
exp_bounds: *mut ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_randtest_bits(
A: *mut fq_nmod_mpoly_struct,
state: *mut flint_rand_struct,
length: slong,
exp_bits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_add(
coeff1: *mut ulong,
exp1: *mut ulong,
coeff2: *mut ulong,
exp2: *const ulong,
len2: slong,
coeff3: *mut ulong,
exp3: *const ulong,
len3: slong,
N: slong,
cmpmask: *const ulong,
fqctx: *const fq_nmod_ctx_struct,
) -> slong;
pub fn fq_nmod_mpoly_add_fq_nmod(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_add_n_fq(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
c: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_sub_fq_nmod(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_add(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_sub(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_neg(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_scalar_mul_fq_nmod(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
c: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_scalar_mul_n_fq(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
c: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_make_monic(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_scalar_addmul_fq_nmod(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const fq_nmod_mpoly_struct,
e: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_derivative(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_evaluate_one_fq_nmod(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
var: slong,
val: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_eval_all_fq_nmod(
ev: *mut nmod_poly_struct,
Acoeffs: *const ulong,
Aexps: *const ulong,
Alen: slong,
Abits: flint_bitcnt_t,
alphas: *const *mut fq_nmod_struct,
mctx: *const mpoly_ctx_struct,
fqctx: *const fq_nmod_ctx_struct,
);
pub fn fq_nmod_mpoly_evaluate_all_fq_nmod(
ev: *mut nmod_poly_struct,
A: *const fq_nmod_mpoly_struct,
vals: *const *mut fq_nmod_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_compose_fq_nmod_poly(
A: *mut fq_nmod_poly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const *mut fq_nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn _fq_nmod_mpoly_compose_mat(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
M: *const fmpz_mat_struct,
ctxB: *const fq_nmod_mpoly_ctx_struct,
ctxAC: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_compose_fq_nmod_mpoly_geobucket(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const *mut fq_nmod_mpoly_struct,
ctxB: *const fq_nmod_mpoly_ctx_struct,
ctxAC: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_compose_fq_nmod_mpoly_horner(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const *mut fq_nmod_mpoly_struct,
ctxB: *const fq_nmod_mpoly_ctx_struct,
ctxAC: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_compose_fq_nmod_mpoly(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const *mut fq_nmod_mpoly_struct,
ctxB: *const fq_nmod_mpoly_ctx_struct,
ctxAC: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_compose_fq_nmod_mpoly_gen(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
c: *const slong,
ctxB: *const fq_nmod_mpoly_ctx_struct,
ctxAC: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_mul(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
C: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_mul_johnson(
poly1: *mut fq_nmod_mpoly_struct,
poly2: *const fq_nmod_mpoly_struct,
poly3: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_mul_johnson(
A: *mut fq_nmod_mpoly_struct,
Bcoeffs: *const ulong,
Bexps: *const ulong,
Blen: slong,
Ccoeffs: *const ulong,
Cexps: *const ulong,
Clen: slong,
bits: flint_bitcnt_t,
N: slong,
cmpmask: *const ulong,
ctx: *const fq_nmod_ctx_struct,
);
pub fn fq_nmod_mpoly_pow_fmpz(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
k: *const fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_pow_ui(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
k: ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_divides(
Q: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_div(
Q: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_divrem(
Q: *mut fq_nmod_mpoly_struct,
R: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_divrem_ideal(
Q: *mut *mut fq_nmod_mpoly_struct,
R: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const *mut fq_nmod_mpoly_struct,
len: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpoly_divexact__extern"]
pub fn fq_nmod_mpoly_divexact(
Q: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_divides_monagan_pearce(
poly1: *mut fq_nmod_mpoly_struct,
poly2: *const fq_nmod_mpoly_struct,
poly3: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_div_monagan_pearce(
q: *mut fq_nmod_mpoly_struct,
poly2: *const fq_nmod_mpoly_struct,
poly3: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_divrem_monagan_pearce(
q: *mut fq_nmod_mpoly_struct,
r: *mut fq_nmod_mpoly_struct,
poly2: *const fq_nmod_mpoly_struct,
poly3: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_divrem_ideal_monagan_pearce(
q: *mut *mut fq_nmod_mpoly_struct,
r: *mut fq_nmod_mpoly_struct,
poly2: *const fq_nmod_mpoly_struct,
poly3: *const *mut fq_nmod_mpoly_struct,
len: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_divides_monagan_pearce(
A: *mut fq_nmod_mpoly_struct,
coeff2: *const ulong,
exp2: *const ulong,
len2: slong,
coeff3: *const ulong,
exp3: *const ulong,
len3: slong,
bits: flint_bitcnt_t,
N: slong,
cmpmask: *const ulong,
fqctx: *const fq_nmod_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_sqrt_heap(
Q: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
#[link_name = "fq_nmod_mpoly_sqrt__extern"]
pub fn fq_nmod_mpoly_sqrt(
Q: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
#[link_name = "fq_nmod_mpoly_is_square__extern"]
pub fn fq_nmod_mpoly_is_square(
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_quadratic_root(
Q: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_term_content(
M: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_content_vars(
g: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
vars: *mut slong,
vars_length: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_gcd(
G: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn _fq_nmod_mpoly_gcd_algo(
G: *mut fq_nmod_mpoly_struct,
Abar: *mut fq_nmod_mpoly_struct,
Bbar: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
algo: libc::c_uint,
) -> libc::c_int;
pub fn fq_nmod_mpoly_gcd_cofactors(
G: *mut fq_nmod_mpoly_struct,
Abar: *mut fq_nmod_mpoly_struct,
Bbar: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_gcd_brown(
G: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_gcd_hensel(
G: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_gcd_zippel(
G: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_gcd_zippel2(
G: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_deflation(
shift: *mut fmpz,
stride: *mut fmpz,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_deflate(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
shift: *const fmpz,
stride: *const fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_inflate(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
shift: *const fmpz,
stride: *const fmpz,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[doc = "Internal functions (guaranteed to change without notice)"]
pub fn mpoly_void_ring_init_fq_nmod_mpoly_ctx(
R: *mut _bindgen_ty_2,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyl_lead_coeff(
c: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
num_vars: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_to_mpolyl_perm_deflate(
A: *mut fq_nmod_mpoly_struct,
lctx: *const fq_nmod_mpoly_ctx_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
perm: *const slong,
shift: *const ulong,
stride: *const ulong,
);
pub fn fq_nmod_mpoly_from_mpolyl_perm_inflate(
A: *mut fq_nmod_mpoly_struct,
Abits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
B: *const fq_nmod_mpoly_struct,
lctx: *const fq_nmod_mpoly_ctx_struct,
perm: *const slong,
shift: *const ulong,
stride: *const ulong,
);
pub fn fq_nmod_mpolyl_gcd_zippel_smprime(
rG: *mut fq_nmod_mpoly_struct,
rGdegs: *const slong,
rAbar: *mut fq_nmod_mpoly_struct,
rBbar: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
Adegs: *const slong,
B: *const fq_nmod_mpoly_struct,
Bdegs: *const slong,
gamma: *const fq_nmod_mpoly_struct,
gammadegs: *const slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyl_gcd_zippel_lgprime(
rG: *mut fq_nmod_mpoly_struct,
rGdegs: *const slong,
rAbar: *mut fq_nmod_mpoly_struct,
rBbar: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
Adegs: *const slong,
B: *const fq_nmod_mpoly_struct,
Bdegs: *const slong,
gamma: *const fq_nmod_mpoly_struct,
gammadegs: *const slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyl_gcd_hensel_smprime(
G: *mut fq_nmod_mpoly_struct,
Gdeg: slong,
Abar: *mut fq_nmod_mpoly_struct,
Bbar: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyl_content(
g: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
num_vars: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_pow_rmul(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
k: ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_to_fq_nmod_poly_deflate(
A: *mut fq_nmod_poly_struct,
B: *const fq_nmod_mpoly_struct,
var: slong,
Bshift: *const ulong,
Bstride: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_from_fq_nmod_poly_inflate(
A: *mut fq_nmod_mpoly_struct,
Abits: flint_bitcnt_t,
B: *const fq_nmod_poly_struct,
var: slong,
Ashift: *const ulong,
Astride: *const ulong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_repack_bits(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
Abits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_repack_bits_inplace(
A: *mut fq_nmod_mpoly_struct,
Abits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_ctx_change_modulus(ctx: *mut fq_nmod_mpoly_ctx_struct, deg: slong);
pub fn fq_nmod_mpoly_univar_init(
A: *mut fq_nmod_mpoly_univar_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_univar_clear(
A: *mut fq_nmod_mpoly_univar_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_univar_fit_length(
A: *mut fq_nmod_mpoly_univar_struct,
length: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_univar_print_pretty(
A: *const fq_nmod_mpoly_univar_struct,
x: *mut *const libc::c_char,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_univar_assert_canonical(
A: *mut fq_nmod_mpoly_univar_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpoly_univar_zero__extern"]
pub fn fq_nmod_mpoly_univar_zero(
A: *mut fq_nmod_mpoly_univar_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_univar_set_coeff_ui(
A: *mut fq_nmod_mpoly_univar_struct,
e: ulong,
c: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_to_univar(
A: *mut fq_nmod_mpoly_univar_struct,
B: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_from_univar(
A: *mut fq_nmod_mpoly_struct,
Abits: flint_bitcnt_t,
B: *const fq_nmod_mpoly_univar_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_from_univar(
A: *mut fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_univar_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpoly_univar_swap__extern"]
pub fn fq_nmod_mpoly_univar_swap(
A: *mut fq_nmod_mpoly_univar_struct,
B: *mut fq_nmod_mpoly_univar_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_univar_degree_fits_si(
A: *const fq_nmod_mpoly_univar_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
#[link_name = "fq_nmod_mpoly_univar_length__extern"]
pub fn fq_nmod_mpoly_univar_length(
A: *const fq_nmod_mpoly_univar_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> slong;
pub fn fq_nmod_mpoly_univar_get_term_exp_si(
A: *mut fq_nmod_mpoly_univar_struct,
i: slong,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> slong;
#[link_name = "fq_nmod_mpoly_univar_get_term_coeff__extern"]
pub fn fq_nmod_mpoly_univar_get_term_coeff(
c: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_univar_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpoly_univar_swap_term_coeff__extern"]
pub fn fq_nmod_mpoly_univar_swap_term_coeff(
c: *mut fq_nmod_mpoly_struct,
A: *mut fq_nmod_mpoly_univar_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_univar_pseudo_gcd(
Gx: *mut fq_nmod_mpoly_univar_struct,
Ax: *const fq_nmod_mpoly_univar_struct,
Bx: *const fq_nmod_mpoly_univar_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_univar_resultant(
R: *mut fq_nmod_mpoly_struct,
Ax: *const fq_nmod_mpoly_univar_struct,
Bx: *const fq_nmod_mpoly_univar_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_univar_discriminant(
D: *mut fq_nmod_mpoly_struct,
Fx: *const fq_nmod_mpoly_univar_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_resultant(
R: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
B: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_discriminant(
R: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyu_is_canonical(
poly: *const fq_nmod_mpolyu_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyu_init(
A: *mut fq_nmod_mpolyu_struct,
bits: flint_bitcnt_t,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_clear(
A: *mut fq_nmod_mpolyu_struct,
uctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpolyu_swap__extern"]
pub fn fq_nmod_mpolyu_swap(
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyu_struct,
UNUSED_uctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_zero(
A: *mut fq_nmod_mpolyu_struct,
uctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_is_one(
A: *mut fq_nmod_mpolyu_struct,
uctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyu_print_pretty(
poly: *const fq_nmod_mpolyu_struct,
x: *mut *const libc::c_char,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_fit_length(
A: *mut fq_nmod_mpolyu_struct,
length: slong,
uctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_one(A: *mut fq_nmod_mpolyu_struct, uctx: *const fq_nmod_mpoly_ctx_struct);
pub fn fq_nmod_mpolyu_degrees_si(
degs: *mut slong,
A: *const fq_nmod_mpolyu_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_repack_bits_inplace(
A: *mut fq_nmod_mpolyu_struct,
bits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_shift_right(A: *mut fq_nmod_mpolyu_struct, s: ulong);
pub fn fq_nmod_mpolyu_shift_left(A: *mut fq_nmod_mpolyu_struct, s: ulong);
pub fn fq_nmod_mpolyu_content_mpoly(
g: *mut fq_nmod_mpoly_struct,
A: *const fq_nmod_mpolyu_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyu_scalar_mul_fq_nmod(
A: *mut fq_nmod_mpolyu_struct,
c: *mut nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_set(
A: *mut fq_nmod_mpolyu_struct,
B: *const fq_nmod_mpolyu_struct,
uctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_evaluate_one_fq_nmod(
E: *mut fq_nmod_mpolyu_struct,
A: *mut fq_nmod_mpolyu_struct,
var: slong,
alpha: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_setform(
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyu_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpolyu_get_coeff(
A: *mut fq_nmod_mpolyu_struct,
pow: ulong,
uctx: *const fq_nmod_mpoly_ctx_struct,
) -> *mut fq_nmod_mpoly_struct;
pub fn fq_nmod_mpoly_to_mpolyu_perm_deflate(
A: *mut fq_nmod_mpolyu_struct,
uctx: *const fq_nmod_mpoly_ctx_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
perm: *const slong,
shift: *const ulong,
stride: *const ulong,
);
pub fn fq_nmod_mpoly_from_mpolyu_perm_inflate(
A: *mut fq_nmod_mpoly_struct,
Abits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
B: *const fq_nmod_mpolyu_struct,
uctx: *const fq_nmod_mpoly_ctx_struct,
perm: *const slong,
shift: *const ulong,
stride: *const ulong,
);
pub fn fq_nmod_mpolyuu_divides(
Q: *mut fq_nmod_mpolyu_struct,
A: *const fq_nmod_mpolyu_struct,
B: *const fq_nmod_mpolyu_struct,
nmainvars: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyu_divexact_mpoly_inplace(
A: *mut fq_nmod_mpolyu_struct,
c: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_mul_mpoly(
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyu_struct,
c: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_mul_mpoly_inplace(
A: *mut fq_nmod_mpolyu_struct,
c: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_gcdm_zippel(
G: *mut fq_nmod_mpolyu_struct,
Abar: *mut fq_nmod_mpolyu_struct,
Bbar: *mut fq_nmod_mpolyu_struct,
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyu_struct,
ctx: *mut fq_nmod_mpoly_ctx_struct,
randstate: *mut flint_rand_struct,
) -> libc::c_int;
#[link_name = "fq_nmod_mpolyu_leadcoeff__extern"]
pub fn fq_nmod_mpolyu_leadcoeff(
A: *const fq_nmod_mpolyu_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> *mut ulong;
pub fn fq_nmod_mpolyn_init(
A: *mut fq_nmod_mpolyn_struct,
bits: flint_bitcnt_t,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_clear(
A: *mut fq_nmod_mpolyn_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_swap(A: *mut fq_nmod_mpolyn_struct, B: *mut fq_nmod_mpolyn_struct);
pub fn fq_nmod_mpolyn_is_canonical(
A: *const fq_nmod_mpolyn_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_zero(
A: *mut fq_nmod_mpolyn_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_one(A: *mut fq_nmod_mpolyn_struct, ctx: *const fq_nmod_mpoly_ctx_struct);
pub fn fq_nmod_mpolyn_is_zero(
A: *mut fq_nmod_mpolyn_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_print_pretty(
A: *const fq_nmod_mpolyn_struct,
x_in: *mut *const libc::c_char,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_fit_length(
A: *mut fq_nmod_mpolyn_struct,
length: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_fit_bits(
A: *mut fq_nmod_mpolyn_struct,
bits: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_set(
A: *mut fq_nmod_mpolyn_struct,
B: *const fq_nmod_mpolyn_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpolyn_leadcoeff__extern"]
pub fn fq_nmod_mpolyn_leadcoeff(
A: *mut fq_nmod_mpolyn_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> *mut ulong;
#[link_name = "fq_nmod_mpolyn_leadcoeff_poly__extern"]
pub fn fq_nmod_mpolyn_leadcoeff_poly(
A: *const fq_nmod_mpolyn_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> *mut n_poly_struct;
pub fn fq_nmod_mpoly_to_mpolyn_perm_deflate(
A: *mut fq_nmod_mpolyn_struct,
nctx: *const fq_nmod_mpoly_ctx_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
perm: *const slong,
shift: *const ulong,
stride: *const ulong,
);
pub fn fq_nmod_mpoly_from_mpolyn_perm_inflate(
A: *mut fq_nmod_mpoly_struct,
Abits: flint_bitcnt_t,
ctx: *const fq_nmod_mpoly_ctx_struct,
B: *const fq_nmod_mpolyn_struct,
nctx: *const fq_nmod_mpoly_ctx_struct,
perm: *const slong,
shift: *const ulong,
stride: *const ulong,
);
pub fn fq_nmod_mpolyun_init(
A: *mut fq_nmod_mpolyun_struct,
bits: flint_bitcnt_t,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_clear(
A: *mut fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_is_canonical(
A: *const fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyun_print_pretty(
poly: *const fq_nmod_mpolyun_struct,
x: *mut *const libc::c_char,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_swap(A: *mut fq_nmod_mpolyun_struct, B: *mut fq_nmod_mpolyun_struct);
pub fn fq_nmod_mpolyun_zero(
A: *mut fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_fit_length(
A: *mut fq_nmod_mpolyun_struct,
length: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_one(
A: *mut fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_is_nonzero_fq_nmod(
A: *const fq_nmod_mpolyn_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyun_is_nonzero_fq_nmod(
A: *const fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_scalar_mul_fq_nmod(
A: *mut fq_nmod_mpolyn_struct,
c: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_scalar_mul_fq_nmod(
A: *mut fq_nmod_mpolyun_struct,
c: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_shift_right(A: *mut fq_nmod_mpolyun_struct, s: ulong);
pub fn fq_nmod_mpolyun_shift_left(A: *mut fq_nmod_mpolyun_struct, s: ulong);
pub fn fq_nmod_mpolyn_mul_poly(
A: *mut fq_nmod_mpolyn_struct,
B: *const fq_nmod_mpolyn_struct,
c: *const fq_nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_mul_poly(
A: *mut fq_nmod_mpolyun_struct,
B: *const fq_nmod_mpolyun_struct,
c: *const fq_nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_divexact_poly(
A: *mut fq_nmod_mpolyn_struct,
B: *const fq_nmod_mpolyn_struct,
c: *const fq_nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_divexact_poly(
A: *mut fq_nmod_mpolyun_struct,
B: *const fq_nmod_mpolyun_struct,
c: *const fq_nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_content_poly(
g: *mut fq_nmod_poly_struct,
B: *mut fq_nmod_mpolyn_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_content_poly(
g: *mut fq_nmod_poly_struct,
B: *mut fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_lastdeg(
A: *mut fq_nmod_mpolyn_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> slong;
pub fn fq_nmod_mpolyun_lastdeg(
A: *mut fq_nmod_mpolyun_struct,
UNUSED_ctx: *const fq_nmod_mpoly_ctx_struct,
) -> slong;
pub fn fq_nmod_mpolyun_set(
A: *mut fq_nmod_mpolyun_struct,
B: *const fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_cvtto_mpolyn(
A: *mut fq_nmod_mpolyn_struct,
B: *const fq_nmod_mpoly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_cvtto_mpolyun(
A: *mut fq_nmod_mpolyun_struct,
B: *const fq_nmod_mpolyu_struct,
k: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_cvtfrom_mpolyn(
A: *mut fq_nmod_mpoly_struct,
B: *mut fq_nmod_mpolyn_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyu_cvtfrom_mpolyun(
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyun_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[link_name = "fq_nmod_mpolyun_leadcoeff_poly__extern"]
pub fn fq_nmod_mpolyun_leadcoeff_poly(
A: *const fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> *mut n_poly_struct;
#[doc = " gcd"]
pub fn fq_nmod_next(
alpha: *mut nmod_poly_struct,
fqctx: *const fq_nmod_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_next_not_zero(alpha: *mut nmod_poly_struct, fqctx: *const fq_nmod_ctx_struct);
pub fn fq_nmod_mpolyu_gcds_zippel(
G: *mut fq_nmod_mpolyu_struct,
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyu_struct,
f: *mut fq_nmod_mpolyu_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
randstate: *mut flint_rand_struct,
degbound: *mut slong,
) -> nmod_gcds_ret_t;
pub fn fq_nmod_mpolyu_gcdp_zippel_univar(
G: *mut fq_nmod_mpolyu_struct,
Abar: *mut fq_nmod_mpolyu_struct,
Bbar: *mut fq_nmod_mpolyu_struct,
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyu_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyu_gcdp_zippel_univar_no_cofactors(
G: *mut fq_nmod_mpolyu_struct,
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyu_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyu_gcdp_zippel(
G: *mut fq_nmod_mpolyu_struct,
Abar: *mut fq_nmod_mpolyu_struct,
Bbar: *mut fq_nmod_mpolyu_struct,
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyu_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
randstate: *mut flint_rand_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_gcd_brown_smprime(
G: *mut fq_nmod_mpolyn_struct,
Abar: *mut fq_nmod_mpolyn_struct,
Bbar: *mut fq_nmod_mpolyn_struct,
A: *mut fq_nmod_mpolyn_struct,
B: *mut fq_nmod_mpolyn_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_gcd_brown_lgprime(
G: *mut fq_nmod_mpolyn_struct,
Abar: *mut fq_nmod_mpolyn_struct,
Bbar: *mut fq_nmod_mpolyn_struct,
A: *mut fq_nmod_mpolyn_struct,
B: *mut fq_nmod_mpolyn_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn _fq_nmod_mpoly_monomial_evals2_cache(
E: *mut n_polyun_struct,
Aexps: *const ulong,
Abits: flint_bitcnt_t,
Alen: slong,
betas: *const fq_nmod_struct,
m: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn _fq_nmod_mpoly_monomial_evals_cache(
E: *mut n_poly_struct,
Aexps: *const ulong,
Abits: flint_bitcnt_t,
Alen: slong,
betas: *const fq_nmod_struct,
start: slong,
stop: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn n_fq_bpoly_eval_step_sep(
E: *mut n_bpoly_struct,
cur: *mut n_polyun_struct,
inc: *const n_polyun_struct,
A: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_ctx_struct,
);
pub fn n_fq_polyun_zip_start(
Z: *mut n_polyun_struct,
H: *mut n_polyun_struct,
req_images: slong,
ctx: *const fq_nmod_ctx_struct,
);
pub fn n_fq_polyu2n_add_zip_must_match(
Z: *mut n_polyun_struct,
A: *const n_bpoly_struct,
cur_length: slong,
ctx: *const fq_nmod_ctx_struct,
) -> libc::c_int;
pub fn n_fq_polyun_zip_solve(
A: *mut fq_nmod_mpoly_struct,
Z: *mut n_polyun_struct,
H: *mut n_polyun_struct,
M: *mut n_polyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn nmod_mpolyn_interp_reduce_lg_poly(
E: *mut fq_nmod_poly_struct,
fqctx: *const fq_nmod_ctx_struct,
A: *const nmod_mpolyn_struct,
ctx: *const nmod_mpoly_ctx_struct,
);
pub fn nmod_mpolyn_interp_lift_lg_poly(
lastdeg_: *mut slong,
A: *mut nmod_mpolyn_struct,
ctx: *const nmod_mpoly_ctx_struct,
B: *const fq_nmod_poly_struct,
fqctx: *const fq_nmod_ctx_struct,
);
pub fn nmod_mpolyn_interp_crt_lg_poly(
lastdeg_: *mut slong,
F: *mut nmod_mpolyn_struct,
T: *mut nmod_mpolyn_struct,
modulus: *mut n_poly_struct,
ctx: *const nmod_mpoly_ctx_struct,
A: *mut fq_nmod_poly_struct,
fqctx: *const fq_nmod_ctx_struct,
) -> libc::c_int;
pub fn nmod_mpolyn_interp_lift_lg_bpoly(
lastdeg_: *mut slong,
F: *mut nmod_mpolyn_struct,
smctx: *const nmod_mpoly_ctx_struct,
A: *mut n_bpoly_struct,
lgctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn nmod_mpolyn_interp_crt_lg_bpoly(
lastdeg: *mut slong,
F: *mut nmod_mpolyn_struct,
T: *mut nmod_mpolyn_struct,
modulus: *mut n_poly_struct,
smctx: *const nmod_mpoly_ctx_struct,
A: *mut n_bpoly_struct,
lgctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn nmod_mpolyn_interp_reduce_lg_mpolyn(
E: *mut fq_nmod_mpolyn_struct,
ectx: *mut fq_nmod_mpoly_ctx_struct,
A: *mut nmod_mpolyn_struct,
var: slong,
ctx: *const nmod_mpoly_ctx_struct,
);
pub fn nmod_mpolyn_interp_lift_lg_mpolyn(
lastdeg: *mut slong,
A: *mut nmod_mpolyn_struct,
var: slong,
ctx: *const nmod_mpoly_ctx_struct,
B: *mut fq_nmod_mpolyn_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn nmod_mpolyn_interp_crt_lg_mpolyn(
lastdeg_: *mut slong,
F: *mut nmod_mpolyn_struct,
T: *mut nmod_mpolyn_struct,
modulus: *mut n_poly_struct,
var: slong,
ctx: *const nmod_mpoly_ctx_struct,
A: *mut fq_nmod_mpolyn_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn nmod_mpolyn_interp_reduce_lg_mpoly(
A: *mut fq_nmod_mpoly_struct,
B: *mut nmod_mpolyn_struct,
ffctx: *const fq_nmod_mpoly_ctx_struct,
ctx: *const nmod_mpoly_ctx_struct,
);
pub fn nmod_mpolyun_interp_reduce_lg_mpolyu(
A: *mut fq_nmod_mpolyu_struct,
B: *mut nmod_mpolyun_struct,
ffctx: *const fq_nmod_mpoly_ctx_struct,
ctx: *const nmod_mpoly_ctx_struct,
);
pub fn nmod_mpolyn_interp_lift_lg_mpoly(
A: *mut nmod_mpolyn_struct,
ctx: *const nmod_mpoly_ctx_struct,
Ap: *mut fq_nmod_mpoly_struct,
ctxp: *const fq_nmod_mpoly_ctx_struct,
);
pub fn nmod_mpolyun_interp_lift_lg_mpolyu(
A: *mut nmod_mpolyun_struct,
ctx: *const nmod_mpoly_ctx_struct,
Ap: *mut fq_nmod_mpolyu_struct,
ctxp: *const fq_nmod_mpoly_ctx_struct,
);
pub fn nmod_mpolyun_interp_crt_lg_mpolyu(
lastdeg: *mut slong,
F: *mut nmod_mpolyun_struct,
T: *mut nmod_mpolyun_struct,
m: *mut n_poly_struct,
ctx: *const nmod_mpoly_ctx_struct,
A: *mut fq_nmod_mpolyu_struct,
ffctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn nmod_mpolyn_interp_mcrt_lg_mpoly(
lastdeg_: *mut slong,
H: *mut nmod_mpolyn_struct,
smctx: *const nmod_mpoly_ctx_struct,
m: *const n_poly_struct,
inv_m_eval: *const ulong,
A: *mut fq_nmod_mpoly_struct,
lgctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn nmod_mpolyun_interp_mcrt_lg_mpolyu(
lastdeg: *mut slong,
H: *mut nmod_mpolyun_struct,
ctx: *const nmod_mpoly_ctx_struct,
m: *mut n_poly_struct,
A: *mut fq_nmod_mpolyu_struct,
ctxp: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_interp_reduce_sm_poly(
E: *mut fq_nmod_poly_struct,
A: *const fq_nmod_mpolyn_struct,
alpha: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_interp_lift_sm_poly(
A: *mut fq_nmod_mpolyn_struct,
B: *const fq_nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_interp_crt_sm_poly(
lastdeg_: *mut slong,
F: *mut fq_nmod_mpolyn_struct,
T: *mut fq_nmod_mpolyn_struct,
A: *const fq_nmod_poly_struct,
modulus: *const fq_nmod_poly_struct,
alpha: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_interp_lift_sm_bpoly(
F: *mut fq_nmod_mpolyn_struct,
A: *mut n_bpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_interp_crt_sm_bpoly(
lastdeg: *mut slong,
F: *mut fq_nmod_mpolyn_struct,
T: *mut fq_nmod_mpolyn_struct,
A: *const n_bpoly_struct,
modulus: *const n_poly_struct,
alphapow: *mut n_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_interp_reduce_sm_mpolyn(
E: *mut fq_nmod_mpolyn_struct,
A: *mut fq_nmod_mpolyn_struct,
var: slong,
alpha: *mut nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_interp_lift_sm_mpolyn(
A: *mut fq_nmod_mpolyn_struct,
B: *mut fq_nmod_mpolyn_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_interp_mcrt_sm_mpoly(
lastdeg_: *mut slong,
F: *mut fq_nmod_mpolyn_struct,
A: *mut fq_nmod_mpoly_struct,
modulus: *const n_poly_struct,
alphapow: *mut n_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_interp_crt_sm_mpolyn(
lastdeg_: *mut slong,
F: *mut fq_nmod_mpolyn_struct,
T: *mut fq_nmod_mpolyn_struct,
A: *mut fq_nmod_mpolyn_struct,
var: slong,
modulus: *mut fq_nmod_poly_struct,
alpha: *const nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_interp_reduce_lg_poly(
E: *mut fq_nmod_poly_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
A: *mut fq_nmod_mpolyn_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyn_interp_lift_lg_poly(
lastdeg_: *mut slong,
A: *mut fq_nmod_mpolyn_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
B: *mut fq_nmod_poly_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyn_interp_crt_lg_poly(
lastdeg_: *mut slong,
F: *mut fq_nmod_mpolyn_struct,
T: *mut fq_nmod_mpolyn_struct,
modulus: *mut fq_nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
A: *mut fq_nmod_poly_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_interp_lift_lg_bpoly(
lastdeg_: *mut slong,
F: *mut fq_nmod_mpolyn_struct,
smctx: *const fq_nmod_mpoly_ctx_struct,
A: *mut n_bpoly_struct,
lgctx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyn_interp_crt_lg_bpoly(
lastdeg: *mut slong,
F: *mut fq_nmod_mpolyn_struct,
T: *mut fq_nmod_mpolyn_struct,
modulus: *mut n_poly_struct,
smctx: *const fq_nmod_mpoly_ctx_struct,
A: *mut n_bpoly_struct,
lgctx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_interp_reduce_lg_mpolyn(
E: *mut fq_nmod_mpolyn_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
A: *mut fq_nmod_mpolyn_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyn_interp_lift_lg_mpolyn(
lastdeg_: *mut slong,
A: *mut fq_nmod_mpolyn_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
B: *mut fq_nmod_mpolyn_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyn_interp_crt_lg_mpolyn(
lastdeg_: *mut slong,
F: *mut fq_nmod_mpolyn_struct,
T: *mut fq_nmod_mpolyn_struct,
modulus: *mut fq_nmod_poly_struct,
var: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
A: *mut fq_nmod_mpolyn_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyun_interp_reduce_sm_mpolyu(
B: *mut fq_nmod_mpolyu_struct,
A: *mut fq_nmod_mpolyun_struct,
alpha: *mut nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyn_interp_lift_sm_mpoly(
A: *mut fq_nmod_mpolyn_struct,
B: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_interp_lift_sm_mpolyu(
A: *mut fq_nmod_mpolyun_struct,
B: *const fq_nmod_mpolyu_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpolyun_interp_crt_sm_mpolyu(
lastdeg: *mut slong,
F: *mut fq_nmod_mpolyun_struct,
T: *mut fq_nmod_mpolyun_struct,
A: *mut fq_nmod_mpolyu_struct,
modulus: *mut fq_nmod_poly_struct,
alpha: *mut nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyn_interp_reduce_lg_mpoly(
A: *mut fq_nmod_mpoly_struct,
B: *mut fq_nmod_mpolyn_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyun_interp_reduce_lg_mpolyu(
A: *mut fq_nmod_mpolyu_struct,
B: *mut fq_nmod_mpolyun_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyn_interp_lift_lg_mpoly(
A: *mut fq_nmod_mpolyn_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
B: *mut fq_nmod_mpoly_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyun_interp_lift_lg_mpolyu(
A: *mut fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
B: *mut fq_nmod_mpolyu_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
);
pub fn fq_nmod_mpolyun_interp_crt_lg_mpolyu(
lastdeg: *mut slong,
F: *mut fq_nmod_mpolyun_struct,
T: *mut fq_nmod_mpolyun_struct,
m: *mut fq_nmod_poly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
A: *mut fq_nmod_mpolyu_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
emb: *const bad_fq_nmod_embed_struct,
) -> libc::c_int;
pub fn fq_nmod_mpolyun_interp_mcrt_lg_mpolyu(
lastdeg: *mut slong,
H: *mut fq_nmod_mpolyun_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
m: *mut fq_nmod_poly_struct,
A: *mut fq_nmod_mpolyu_struct,
ectx: *const fq_nmod_mpoly_ctx_struct,
emb: *mut bad_fq_nmod_embed_struct,
) -> libc::c_int;
pub fn fq_nmod_mpoly_geobucket_init(
B: *mut fq_nmod_mpoly_geobucket_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_geobucket_clear(
B: *mut fq_nmod_mpoly_geobucket_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_geobucket_empty(
p: *mut fq_nmod_mpoly_struct,
B: *mut fq_nmod_mpoly_geobucket_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_geobucket_fit_length(
B: *mut fq_nmod_mpoly_geobucket_struct,
i: slong,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_geobucket_set(
B: *mut fq_nmod_mpoly_geobucket_struct,
p: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_geobucket_add(
B: *mut fq_nmod_mpoly_geobucket_struct,
p: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
pub fn fq_nmod_mpoly_geobucket_sub(
B: *mut fq_nmod_mpoly_geobucket_struct,
p: *mut fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
#[doc = "Internal consistency checks"]
pub fn fq_nmod_mpoly_remainder_strongtest(
r: *const fq_nmod_mpoly_struct,
g: *const fq_nmod_mpoly_struct,
ctx: *const fq_nmod_mpoly_ctx_struct,
);
}