My Project
debian-1:4.1.1-p2+ds-4
factory
cfGcdAlgExt.h
Go to the documentation of this file.
1
/**
2
* @file cfGcdAlgExt.h
3
*
4
* GCD over Q(a)
5
*
6
* ABSTRACT: Implementation of Encarnacion's GCD algorithm over number fields,
7
* see M.J. Encarnacion "Computing GCDs of polynomials over number fields",
8
* extended to the multivariate case.
9
*
10
* @sa cfNTLzzpEXGCD.h
11
**/
12
13
#ifndef CF_GCD_ALGEXT_H
14
#define CF_GCD_ALGEXT_H
15
16
// #include "config.h"
17
18
#include "
canonicalform.h
"
19
#include "
variable.h
"
20
21
/// gcd over Q(a)
22
CanonicalForm
QGCD
(
const
CanonicalForm
&,
const
CanonicalForm
& );
23
24
#ifndef HAVE_NTL
25
void
tryDivrem (
const
CanonicalForm
&,
const
CanonicalForm
&,
CanonicalForm
&,
26
CanonicalForm
&,
CanonicalForm
&,
const
CanonicalForm
&,
27
bool
&);
28
void
tryEuclid(
const
CanonicalForm
&,
const
CanonicalForm
&,
const
CanonicalForm
&,
CanonicalForm
&,
bool
& );
29
void
tryExtgcd(
const
CanonicalForm
& F,
const
CanonicalForm
&
G
,
const
CanonicalForm
&
M
,
CanonicalForm
&
result
,
CanonicalForm
&
s
,
CanonicalForm
& t,
bool
& fail );
30
#endif
31
void
tryInvert
(
const
CanonicalForm
&,
const
CanonicalForm
&,
CanonicalForm
&,
bool
& );
32
33
/// modular gcd over F_p[x]/(M) for not necessarily irreducible M.
34
/// If a zero divisor is encountered fail is set to true.
35
void
tryBrownGCD
(
const
CanonicalForm
& F,
const
CanonicalForm
&
G
,
const
CanonicalForm
&
M
,
CanonicalForm
&
result
,
bool
& fail,
bool
topLevel
=
true
);
36
37
int
*
leadDeg
(
const
CanonicalForm
&
f
,
int
*degs);
38
bool
isLess
(
int
*a,
int
*
b
,
int
lower,
int
upper);
39
bool
isEqual
(
int
*a,
int
*
b
,
int
lower,
int
upper);
40
CanonicalForm
firstLC
(
const
CanonicalForm
&
f
);
41
42
#endif
43
f
FILE * f
Definition:
checklibs.c:9
leadDeg
int * leadDeg(const CanonicalForm &f, int *degs)
Definition:
cfGcdAlgExt.cc:919
canonicalform.h
result
return result
Definition:
facAbsBiFact.cc:76
QGCD
CanonicalForm QGCD(const CanonicalForm &, const CanonicalForm &)
gcd over Q(a)
Definition:
cfGcdAlgExt.cc:715
firstLC
CanonicalForm firstLC(const CanonicalForm &f)
Definition:
cfGcdAlgExt.cc:956
isLess
bool isLess(int *a, int *b, int lower, int upper)
Definition:
cfGcdAlgExt.cc:936
b
CanonicalForm b
Definition:
cfModGcd.cc:4044
CanonicalForm
factory's main class
Definition:
canonicalform.h:77
M
#define M
Definition:
sirandom.c:24
tryBrownGCD
void tryBrownGCD(const CanonicalForm &F, const CanonicalForm &G, const CanonicalForm &M, CanonicalForm &result, bool &fail, bool topLevel=true)
modular gcd over F_p[x]/(M) for not necessarily irreducible M. If a zero divisor is encountered fail ...
Definition:
cfGcdAlgExt.cc:372
variable.h
isEqual
bool isEqual(int *a, int *b, int lower, int upper)
Definition:
cfGcdAlgExt.cc:947
topLevel
const CanonicalForm CFMap CFMap bool topLevel
Definition:
cfGcdAlgExt.cc:57
s
const CanonicalForm int s
Definition:
facAbsFact.cc:55
G
static TreeM * G
Definition:
janet.cc:32
tryInvert
void tryInvert(const CanonicalForm &, const CanonicalForm &, CanonicalForm &, bool &)
Definition:
cfGcdAlgExt.cc:221
Generated on Fri Jan 10 2020 08:17:41 for My Project by
doxygen 1.8.16
for
Singular debian-1:4.1.1-p2+ds-4