[BACK]Return to type.texi CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-doc / parts / builtin

Diff for /OpenXM/src/asir-doc/parts/builtin/type.texi between version 1.1 and 1.2

version 1.1, 1999/12/08 05:47:44 version 1.2, 1999/12/21 02:47:34
Line 1 
Line 1 
   @comment $OpenXM$
   \BJP
 @node $B7?$r5a$a$kH!?t(B,,, $BAH$_9~$_H!?t(B  @node $B7?$r5a$a$kH!?t(B,,, $BAH$_9~$_H!?t(B
 @section $B7?$r5a$a$kH!?t(B  @section $B7?$r5a$a$kH!?t(B
   \E
   \BEG
   @node Types,,, Built-in Function
   @section Types
   \E
   
 @menu  @menu
 * type::  * type::
Line 7 
Line 14 
 * vtype::  * vtype::
 @end menu  @end menu
   
 @node type,,, $B7?$r5a$a$kH!?t(B  \JP @node type,,, $B7?$r5a$a$kH!?t(B
   \EG @node type,,, Types
 @subsection @code{type}  @subsection @code{type}
 @findex type  @findex type
   
 @table @t  @table @t
 @item type(@var{obj})  @item type(@var{obj})
 :: @var{obj} $B$N(B $B7?(B ($B@0?t(B) $B$rJV$9(B.  \JP :: @var{obj} $B$N(B $B7?(B ($B@0?t(B) $B$rJV$9(B.
   \EG :: Returns an integer which identifies the type of the object @var{obj} in question.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 $B<+A3?t(B  \JP $B@0?t(B
   \EG integer
 @item obj  @item obj
 $BG$0U(B  \JP $BG$0U(B
   \EG arbitrary
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
   \BJP
 @item  @item
 @var{obj} $B$N(B $B7?$NCM$O<!$NDL$j(B.  @var{obj} $B$N(B $B7?$NCM$O<!$NDL$j(B.
 @table @t  @table @t
Line 47 
Line 59 
 $B9=B$BN(B  $B9=B$BN(B
 @item 9  @item 9
 $BJ,;6I=8=B?9`<0(B  $BJ,;6I=8=B?9`<0(B
   @item 10
   32bit $BId9f$J$7@0?t(B
   @item 11
   $B%(%i!<%*%V%8%'%/%H(B
   @item 12
   GF(2) $B>e$N9TNs(B
   @item 13
   MATHCAP $B%*%V%8%'%/%H(B
   @item 14
   $B0l3,=R8lO@M}<0(B
   @item -1
   VOID $B%*%V%8%'%/%H(B
 @end table  @end table
 @item  @item
 $B?t$N7?$r5a$a$k$K$O(B, @code{ntype} $B$rMQ$$$k(B.  $B?t$N7?$r5a$a$k$K$O(B, @code{ntype} $B$rMQ$$$k(B.
 $BITDj85$N7?$r5a$a$k$K$O(B, @code{vtype} $B$rMQ$$$k(B.  $BITDj85$N7?$r5a$a$k$K$O(B, @code{vtype} $B$rMQ$$$k(B.
   \E
   \BEG
   @item
   Current assignment of integers for object types is listed below.
   @table @t
   @item 0
   0
   @item 1
   number
   @item 2
   polynomial (not number)
   @item 3
   rational expression (not polynomial)
   @item 4
   list
   @item 5
   vector
   @item 6
   matrix
   @item 7
   string
   @item 8
   structure
   @item 9
   distributed polynomial
   @item 10
   32bit unsigned integer
   @item 11
   error object
   @item 12
   matrix over GF(2)
   @item 13
   MATHCAP object
   @item 14
   first order formula
   @item -1
   VOID object
   @end table
   @item
   For further classification of @var{number}, use @code{ntype()}.
   For further classification of @var{variable}, use @code{vtype()}.
   \E
 @end itemize  @end itemize
   
 @table @t  @table @t
 @item $B;2>H(B  \JP @item $B;2>H(B
   \EG @item References
 @fref{ntype}, @fref{vtype}.  @fref{ntype}, @fref{vtype}.
 @end table  @end table
   
 @node ntype,,, $B7?$r5a$a$kH!?t(B  \JP @node ntype,,, $B7?$r5a$a$kH!?t(B
   \EG @node ntype,,, Types
 @subsection @code{ntype}  @subsection @code{ntype}
 @findex ntype  @findex ntype
   
 @table @t  @table @t
 @item ntype(@var{num})  @item ntype(@var{num})
 :: @var{num} ($B?t(B) $B$N(B $B7?(B ($B@0?t(B) $B$rJV$9(B.  \JP :: @var{num} ($B?t(B) $B$N(B $B7?(B ($B@0?t(B) $B$rJV$9(B.
   \EG :: Classifier of type @var{num}.  Returns a sub-type number, an integer, for @var{obj}.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 $B<+A3?t(B  \JP $B<+A3?t(B
   \EG integer
 @item obj  @item obj
 $B?t(B  \JP $B?t(B
   \EG number
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
   \BJP
 @item  @item
 $B?t$N7?$NCM$O<!$NDL$j(B.  $B?t$N7?$NCM$O<!$NDL$j(B.
 @table @t  @table @t
Line 90 
Line 162 
 $BJ#AG?t(B  $BJ#AG?t(B
 @item 5  @item 5
 $BM-8BBN$N85(B  $BM-8BBN$N85(B
   @item 6
   $BBgI8?tAGBN$N85(B
   @item 7
   $BI8?t(B 2 $B$NM-8BBN$N85(B
 @end table  @end table
 @item  @item
 @code{newalg(x^2+1)} $B$G@8@.$7$??t$H(B, $B5u?tC10L(B @code{@@i} $B$O(B,  @code{newalg(x^2+1)} $B$G@8@.$7$??t$H(B, $B5u?tC10L(B @code{@@i} $B$O(B,
 $B0[$J$k$b$N$H$7$F07$o$l$k(B.  $B0[$J$k$b$N$H$7$F07$o$l$k(B.
 @item  @item
 $BBe?tE*?t$K4X$7$F$O(B, @xref{$BBe?tE*?t$K4X$9$k1i;;(B}.  $BBe?tE*?t$K4X$7$F$O(B, @xref{$BBe?tE*?t$K4X$9$k1i;;(B}.
   \E
   \BEG
   @item
   Sub-types for type number are listed below.
   @table @t
   @item 0
   rational number
   @item 1
   floating double (double precision floating point number)
   @item 2
   algebraic number over rational number field
   @item 3
   arbitrary precision floating point number (@b{bigfloat})
   @item 4
   complex number
   @item 5
   element of a finite field
   @item 6
   element of a large finite prime field
   @item 7
   element of a finite field of characteristic 2
   @end table
   @item
   When arithmetic operations for numbers are performed,
   type coercion will be taken if their number sub-types are different
   so that the object having smaller sub-type number will be transformed
   to match the other object, except for algebraic numbers.
   @item
   A number object created by @code{newalg(x^2+1)} and the unit of
   imaginary number @code{@@i} have different number sub-types, and
   it is treated independently.
   @item
   @xref{Algebraic numbers} for algebraic numbers.
   \E
 @end itemize  @end itemize
   
 @example  @example
Line 112 
Line 222 
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  \JP @item $B;2>H(B
   \EG @item References
 @fref{type}.  @fref{type}.
 @end table  @end table
   
 @node vtype,,, $B7?$r5a$a$kH!?t(B  \JP @node vtype,,, $B7?$r5a$a$kH!?t(B
   \EG @node vtype,,, Types
 @subsection @code{vtype}  @subsection @code{vtype}
 @findex vtype  @findex vtype
   
 @table @t  @table @t
 @item vtype(@var{var})  @item vtype(@var{var})
 :: @var{var} ($BITDj85(B) $B$N(B $B7?(B ($B@0?t(B) $B$rJV$9(B.  \JP :: @var{var} ($BITDj85(B) $B$N(B $B7?(B ($B@0?t(B) $B$rJV$9(B.
   \EG :: Type of indetarminates @var{var}.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 $B<+A3?t(B  \JP $B@0?t(B
   \EG integer
 @item var  @item var
 $BITDj85(B  \JP $BITDj85(B
   \EG indeterminate
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
   \BJP
 @item  @item
 @var{var} ($BITDj85(B) $B$N7?$NCM$O<!$NDL$j(B. $B>\:Y$O(B @xref{$BITDj85$N7?(B}.  @var{var} ($BITDj85(B) $B$N7?$NCM$O<!$NDL$j(B. $B>\:Y$O(B @xref{$BITDj85$N7?(B}.
 @table @t  @table @t
Line 151 
Line 267 
 @item  @item
 @code{@@pi}, @code{@@e} $B$OITDj85$H$7$F07$o$l$k$,(B, @code{eval()}, @code{pari()}  @code{@@pi}, @code{@@e} $B$OITDj85$H$7$F07$o$l$k$,(B, @code{eval()}, @code{pari()}
 $B$K$*$$$F$O?t$H$7$F07$o$l$k(B.  $B$K$*$$$F$O?t$H$7$F07$o$l$k(B.
   \E
   \BEG
   @item
   Classify indeterminates into sub-types by giving an integer value as follows.
   For details  @xref{Types of indeterminates}.
   @table @t
   @item 0
   ordinary indeterminate, which can be directly typed in on a keyboard
   (a,b,x,afo,bfo,...,etc.)
   @item 1
   Special indeterminate, created by @code{uc()}
   (@code{_0}, @code{_1}, @code{_2}, ... etc.)
   @item 2
   function form (@code{sin(x)}, @code{log(a+1)}, @code{acosh(1)}, @code{@@pi}, @code{@@e}, ... etc.)
   @item 3
   functor (built-in functor name, user defined functor, functor for
   the elementary functions)
    : @code{sin}, @code{log}, ... etc)
   @end table
   @item
   Note: An input `@code{a();}' will cause an error, but it changes
   the system database for identifiers.  After this error, you will find
   `@code{vtype(a)}' will result 3. (Identifier @code{a} is registered as
   a user defined functor).
   @item
   Usually @code{@@pi} and @code{@@e} are treated as indeterminates,
   whereas they are treated as numbers within functions @code{eval()} and
    @code{pari()}.
   \E
 @end itemize  @end itemize
   
 @table @t  @table @t
 @item $B;2>H(B  \JP @item $B;2>H(B
   \EG @item References
 @fref{type}, @fref{ntype}, @fref{uc}.  @fref{type}, @fref{ntype}, @fref{uc}.
 @end table  @end table
   

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>