Go to the first, previous, next, last section, table of contents.

## Files of user defined functions

There are several files of user defined functions under the standard library directory. (``/usr/local/lib/asir'` by default.) Here, we explain some of them.

``fff'`
  Univariate factorizer over large finite fields (See section Finite fields.)
``gr'`
  Groebner basis package. (See section Groebner basis computation.)
``sp'`
  Operations over algebraic numbers and factorization, Splitting fields. (See section Algebraic numbers.)
``alpi'`
``bgk'`
``cyclic'`
``katsura'`
``kimura'`
  Example polynomial sets for benchmarks of Groebner basis computation. (See section `katsura`, `hkatsura`, `cyclic`, `hcyclic`.)
``defs.h'`
  Macro definitions. (See section preprocessor.)
``fctrtest'`
  Test program of factorization of integral polynomials. It includes ``factor.tst'` of REDUCE and several examples for large multiplicity factors. If this file is `load()`'ed, computation will begin immediately. You may use it as a first test whether Asir at you hand runs correctly.
``fctrdata'`
  This contains example polynomials for factorization. It includes polynomials used in ``fctrtest'`. Polynomials contained in vector `Alg[]` is for the algebraic factorization `af()`. (See section `asq`, `af`, `af_noalg`.)

      [45] load("sp")$
      [84] load("fctrdata")$
      [175] cputime(1)$
      0msec
      [176] Alg[5];
      x^9-15*x^6-87*x^3-125
      0msec
      [177] af(Alg[5],[newalg(Alg[5])]);
      [[1,1],[75*x^2+(10*#0^7-175*#0^4-470*#0)*x+(3*#0^8-45*#0^5-261*#0^2),1],
      [75*x^2+(-10*#0^7+175*#0^4+395*#0)*x+(3*#0^8-45*#0^5-261*#0^2),1],
      [25*x^2+(25*#0)*x+(#0^8-15*#0^5-87*#0^2),1],[x^2+(#0)*x+(#0^2),1],
      [x+(-#0),1]]
      3.600sec + gc : 1.040sec

``ifplot'`
  Examples for plotting. (See section `ifplot`, `conplot`, `plot`, `polarplot`, `plotover`.) Vector `IS[]` contains several famous algebraic curves. Variables `H, D, C, S` contains something like the suits (Heart, Diamond, Club, and Spade) of cards.
``num'`
  Examples of simple operations on numbers.
``mat'`
  Examples of simple operations on matrices.
``ratint'`
  Indefinite integration of rational functions. For this, files ``sp'` and ``gr'` is necessary. A function `ratint()` is defined. Its returns a rather complex result.

      [0] load("gr")$
      [45] load("sp")$
      [84] load("ratint")$
      [102] ratint(x^6/(x^5+x+1),x);
      [1/2*x^2,
      [[(#2)*log(-140*x+(-2737*#2^2+552*#2-131)),161*t#2^3-23*t#2^2+15*t#2-1],
      [(#1)*log(-5*x+(-21*#1-4)),21*t#1^2+3*t#1+1]]]

  In this example, indefinite integral of the rational function `x^6/(x^5+x+1)` is computed. The result is a list which comprises two elements: The first element is the rational part of the integral; The second part is the logarithmic part of the integral. The logarithmic part is again a list which comprises finite number of elements, each of which is of form `[root*log(poly),defpoly]`. This pair should be interpreted to sum up the expression `root*log(poly)` through all root's `root`'s of the `defpoly`. Here, `poly` contains `root`, and substitution for `root` is equally applied to `poly`. The logarithmic part in total is obtained by applying such interpretation to all element pairs in the second element of the result and then summing them up all.
``primdec'`
  Primary ideal decomposition of polynomial ideals and prime compotision of radicals (see section `primadec`, `primedec`).

Go to the first, previous, next, last section, table of contents.