version 1.5, 2000/01/26 01:37:33 |
version 1.10, 2003/04/19 10:36:30 |
|
|
@comment $OpenXM: OpenXM/src/asir-doc/parts/type.texi,v 1.4 2000/01/20 03:00:34 noro Exp $ |
@comment $OpenXM: OpenXM/src/asir-doc/parts/type.texi,v 1.9 2002/09/03 01:50:58 noro Exp $ |
\BJP |
\BJP |
@node $B7?(B,,, Top |
@node $B7?(B,,, Top |
@chapter $B7?(B |
@chapter $B7?(B |
Line 83 x afo (2.3*x+y)^10 |
|
Line 83 x afo (2.3*x+y)^10 |
|
|
|
\BJP |
\BJP |
$BB?9`<0$O(B, $BA4$FE83+$5$l(B, $B$=$N;~E@$K$*$1$kJQ?t=g=x$K=>$C$F(B, $B:F5"E*$K(B |
$BB?9`<0$O(B, $BA4$FE83+$5$l(B, $B$=$N;~E@$K$*$1$kJQ?t=g=x$K=>$C$F(B, $B:F5"E*$K(B |
1 $BJQ?tB?9`<0$H$7$F9_QQ$N=g$K@0M}$5$l$k(B (@xref{$BJ,;6I=8=B?9`<0(B}). |
1 $BJQ?tB?9`<0$H$7$F9_QQ$N=g$K@0M}$5$l$k(B. (@xref{$BJ,;6I=8=B?9`<0(B}.) |
$B$3$N;~(B, $B$=$NB?9`<0$K8=$l$k=g=x:GBg$NJQ?t$r(B @b{$B<gJQ?t(B} $B$H8F$V(B. |
$B$3$N;~(B, $B$=$NB?9`<0$K8=$l$k=g=x:GBg$NJQ?t$r(B @b{$B<gJQ?t(B} $B$H8F$V(B. |
\E |
\E |
\BEG |
\BEG |
Every polynomial is maintained internally in its full expanded form, |
Every polynomial is maintained internally in its full expanded form, |
represented as a nested univariate polynomial, according to the current |
represented as a nested univariate polynomial, according to the current |
variable ordering, arranged by the descending order of exponents. |
variable ordering, arranged by the descending order of exponents. |
(@xref{Distributed polynomial}). |
(@xref{Distributed polynomial}.) |
In the representation, the indeterminate (or variable), appearing in |
In the representation, the indeterminate (or variable), appearing in |
the polynomial, with maximum ordering is called the @b{main variable}. |
the polynomial, with maximum ordering is called the @b{main variable}. |
Moreover, we call the coefficient of the maximum degree term of |
Moreover, we call the coefficient of the maximum degree term of |
|
|
newstruct(afo) |
newstruct(afo) |
@end example |
@end example |
|
|
\JP $B9=B$BN$K4X$7$F$O(B, $B>O$r2~$a$F2r@b$9$kM=Dj$G$"$k(B. |
\BJP |
\EG For type @b{structure}, we shall describe it in a later chapter. |
Asir $B$K$*$1$k9=B$BN$O(B, C $B$K$*$1$k9=B$BN$r4J0W2=$7$?$b$N$G$"$k(B. |
(Not written yet.) |
$B8GDjD9G[Ns$N3F@.J,$rL>A0$G%"%/%;%9$G$-$k%*%V%8%'%/%H$G(B, |
|
$B9=B$BNDj5AKh$KL>A0$r$D$1$k(B. |
|
\E |
|
|
|
\BEG |
|
The type @b{structure} is a simplified version of that in C language. |
|
It is defined as a fixed length array and each entry of the array |
|
is accessed by its name. A name is associated with each structure. |
|
\E |
|
|
\JP @item 9 @b{$BJ,;6I=8=B?9`<0(B} |
\JP @item 9 @b{$BJ,;6I=8=B?9`<0(B} |
\EG @item 9 @b{distributed polynomial} |
\EG @item 9 @b{distributed polynomial} |
|
|
Line 347 This is used for basis conversion in finite fields of |
|
Line 355 This is used for basis conversion in finite fields of |
|
\JP quantifier elimination $B$GMQ$$$i$l$k0l3,=R8lO@M}<0(B. |
\JP quantifier elimination $B$GMQ$$$i$l$k0l3,=R8lO@M}<0(B. |
\EG This expresses a first order formula used in quantifier elimination. |
\EG This expresses a first order formula used in quantifier elimination. |
|
|
|
@item 15 @b{matrix over GF(p)} |
|
@* |
|
\JP $B>.I8?tM-8BBN>e$N9TNs(B. |
|
\EG A matrix over a small finite field. |
|
|
|
@item 16 @b{byte array} |
|
@* |
|
\JP $BId9f$J$7(B byte $B$NG[Ns(B |
|
\EG An array of unsigned bytes. |
|
|
\JP @item -1 @b{VOID $B%*%V%8%'%/%H(B} |
\JP @item -1 @b{VOID $B%*%V%8%'%/%H(B} |
\EG @item -1 @b{VOID object} |
\EG @item -1 @b{VOID object} |
@* |
@* |
Line 474 not guarantee the accuracy of the result, |
|
Line 492 not guarantee the accuracy of the result, |
|
but it indicates the representation size of numbers with which internal |
but it indicates the representation size of numbers with which internal |
operations of @b{PARI} are performed. |
operations of @b{PARI} are performed. |
\E |
\E |
(@ref{eval}, @xref{pari}) |
(@xref{eval deval}, @ref{pari}.) |
|
|
@item 4 |
@item 4 |
\JP @b{$BJ#AG?t(B} |
\JP @b{$BJ#AG?t(B} |
Line 607 coefficients of a polynomial. |
|
Line 625 coefficients of a polynomial. |
|
\E |
\E |
|
|
@end itemize |
@end itemize |
|
|
|
|
|
@item 8 |
|
\JP @b{$B0L?t(B @var{p^n} $B$NM-8BBN$N85(B} |
|
\EG @b{element of a finite field of characteristic @var{p^n}} |
|
|
|
\BJP |
|
$B0L?t$,(B @var{p^n} (@var{p} $B$OG$0U$NAG?t(B, @var{n} $B$O@5@0?t(B) $B$O(B, |
|
$BI8?t(B @var{p} $B$*$h$S(B @var{GF(p)} $B>e4{Ls$J(B @var{n} $B<!B?9`<0(B @var{m(x)} |
|
$B$r(B @code{setmod_ff} $B$K$h$j;XDj$9$k$3$H$K$h$j@_Dj$9$k(B. |
|
$B$3$NBN$N85$O(B @var{m(x)} $B$rK!$H$9$k(B @var{GF(p)} $B>e$NB?9`<0$H$7$F(B |
|
$BI=8=$5$l$k(B. |
|
\E |
|
\BEG |
|
A finite field of order @var{p^n}, where @var{p} is an arbitrary prime |
|
and @var{n} is a positive integer, is set by @code{setmod_ff} |
|
by specifying its characteristic @var{p} and an irreducible polynomial |
|
of degree @var{n} over @var{GF(p)}. An element of this field |
|
is represented by a polynomial over @var{GF(p)} modulo @var{m(x)}. |
|
\E |
|
|
|
@item 9 |
|
\JP @b{$B0L?t(B @var{p^n} $B$NM-8BBN$N85(B ($B>.0L?t(B)} |
|
\EG @b{element of a finite field of characteristic @var{p^n} (small order)} |
|
|
|
\BJP |
|
$B0L?t$,(B @var{p^n} $B$NM-8BBN(B (@var{p^n} $B$,(B @var{2^29} $B0J2<(B, @var{p} $B$,(B @var{2^14} $B0J>e(B |
|
$B$J$i(B @var{n} $B$O(B 1) $B$O(B, |
|
$BI8?t(B @var{p} $B$*$h$S3HBg<!?t(B @var{n} |
|
$B$r(B @code{setmod_ff} $B$K$h$j;XDj$9$k$3$H$K$h$j@_Dj$9$k(B. |
|
$B$3$NBN$N(B 0 $B$G$J$$85$O(B, @var{p} $B$,(B @var{2^14} $BL$K~$N>l9g(B, |
|
@var{GF(p^n)} $B$N>hK!72$N@8@.85$r8GDj$9$k$3$H(B |
|
$B$K$h$j(B, $B$3$N85$N$Y$-$H$7$FI=$5$l$k(B. $B$3$l$K$h$j(B, $B$3$NBN$N(B 0 $B$G$J$$85(B |
|
$B$O(B, $B$3$N$Y$-;X?t$H$7$FI=8=$5$l$k(B. @var{p} $B$,(B @var{2^14} $B0J>e(B |
|
$B$N>l9g$ODL>o$N>jM>$K$h$kI=8=$H$J$k$,(B, $B6&DL$N%W%m%0%i%`$G(B |
|
$BAPJ}$N>l9g$r07$($k$h$&$K$3$N$h$&$J;EMM$H$J$C$F$$$k(B. |
|
|
|
\E |
|
\BEG |
|
A finite field of order @var{p^n}, where @var{p^n} must be less than |
|
@var{2^29} and @var{n} must be equal to 1 if @var{p} is greater or |
|
equal to @var{2^14}@, |
|
is set by @code{setmod_ff} |
|
by specifying its characteristic @var{p} the extension degree |
|
@var{n}. If @var{p} is less than @var{2^14}, each non-zero element |
|
of this field |
|
is a power of a fixed element, which is a generator of the multiplicative |
|
group of the field, and it is represented by its exponent. |
|
Otherwise, each element is represented by the redue modulo @var{p}. |
|
This specification is useful for treating both cases in a single |
|
program. |
|
\E |
|
|
@end table |
@end table |
|
|
\BJP |
\BJP |
$BBgI8?tAGBN$NI8?t(B, $BI8?t(B 2 $B$NM-8BBN$NDj5AB?9`<0$O(B, @code{setmod_ff} |
$B>.I8?tM-8BAGBN0J30$NM-8BBN$O(B @code{setmod_ff} $B$G@_Dj$9$k(B. |
$B$G@_Dj$9$k(B. |
$BM-8BBN$N85$I$&$7$N1i;;$G$O(B, |
$BM-8BBN$N85$I$&$7$N1i;;$G$O(B, @code{setmod_ff} $B$K$h$j@_Dj$5$l$F$$$k(B |
|
modulus $B$G(B, $BB0$9$kBN$,J,$+$j(B, $B$=$NCf$G1i;;$,9T$o$l$k(B. |
|
$B0lJ}$,M-M}?t$N>l9g$K$O(B, $B$=$NM-M}?t$O<+F0E*$K8=:_@_Dj$5$l$F$$$k(B |
$B0lJ}$,M-M}?t$N>l9g$K$O(B, $B$=$NM-M}?t$O<+F0E*$K8=:_@_Dj$5$l$F$$$k(B |
$BM-8BBN$N85$KJQ49$5$l(B, $B1i;;$,9T$o$l$k(B. |
$BM-8BBN$N85$KJQ49$5$l(B, $B1i;;$,9T$o$l$k(B. |
\E |
\E |
\BEG |
\BEG |
The characteristic of a large finite prime field and the defining |
Finite fields other than small finite prime fields are |
polynomial of a finite field of characteristic 2 are set by @code{setmod_ff}. |
set by @code{setmod_ff}. |
Elements of finite fields do not have informations about the modulus. |
Elements of finite fields do not have informations about the modulus. |
Upon an arithmetic operation, the modulus set by @code{setmod_ff} is |
Upon an arithmetic operation, i |
used. If one of the operands is a rational number, it is automatically |
f one of the operands is a rational number, it is automatically |
converted into an element of the finite field currently set and |
converted into an element of the finite field currently set and |
the operation is done in the finite field. |
the operation is done in the finite field. |
\E |
\E |