Changeset 194409 in git


Ignore:
Timestamp:
Apr 22, 2013, 2:19:46 PM (9 years ago)
Author:
Martin Lee <martinlee84@…>
Branches:
(u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', '48f1dd268d0ff74ef2f7dccbf02545425002ddcc')
Children:
6fcd65b41235516be599e23554d96064636cb46c
Parents:
809d634e3370e14c61f7b1ee234231400c570c0f
git-author:
Martin Lee <martinlee84@web.de>2013-04-22 14:19:46+02:00
git-committer:
Martin Lee <martinlee84@web.de>2013-05-02 11:42:40+02:00
Message:
chg: docu + example
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/absfact.lib

    r809d63 r194409  
    2626PROCEDURES:
    2727  absFactorize();        absolute factorization of poly
     28  absBiFactorize();      absolute factorization of bivariate poly
    2829";
    2930
     
    609610}
    610611
     612////////////////////////////////////////////////////////////////////////////////
    611613proc absBiFactorize(poly p, list #)
     614"USAGE:  absBiFactorize(p [,s]);   p poly, s string
     615ASSUME: coefficient field is the field of rational numbers or a
     616        transcendental extension thereof
     617RETURN: ring @code{R} which is obtained from the current basering
     618        by adding a new parameter (if a string @code{s} is given as a
     619        second input, the new parameter gets this string as name). The ring
     620        @code{R} comes with a list @code{absolute_factors} with the
     621        following entries:
     622@format
     623    absolute_factors[1]: ideal   (the absolute factors)
     624    absolute_factors[2]: intvec  (the multiplicities)
     625    absolute_factors[3]: ideal   (the minimal polynomials)
     626    absolute_factors[4]: int     (total number of nontriv. absolute factors)
     627@end format
     628        The entry @code{absolute_factors[1][1]} is a constant, the
     629        entry @code{absolute_factors[3][1]} is the parameter added to the
     630        current ring.@*
     631        Each of the remaining entries @code{absolute_factors[1][j]} stands for
     632        a class of conjugated absolute factors. The corresponding entry
     633        @code{absolute_factors[3][j]} is the minimal polynomial of the
     634        field extension over which the factor is minimally defined (its degree
     635        is the number of conjugates in the class). If the entry
     636        @code{absolute_factors[3][j]} coincides with @code{absolute_factors[3][1]},
     637        no field extension was necessary for the @code{j}th (class of)
     638        absolute factor(s).
     639NOTE:   The input polynomial p is assumed to be bivariate or to contain one para-
     640        meter and one variable. All factors are presented denominator- and
     641        content-free. The constant factor (first entry) is chosen such that the
     642        product of all (!) the (denominator- and content-free) absolute factors
     643        of @code{p} equals @code{p / absolute_factors[1][1]}.
     644SEE ALSO: factorize, absPrimdecGTZ, absFactorize
     645EXAMPLE: example absBiFactorize; shows an example
     646"
    612647{
    613648  int dblevel = printlevel - voice + 2;
     
    726761  }
    727762
    728   MPo;
    729763  list tmpf=absBiFact (p);
    730764
     
    784818
    785819  dbprint( printlevel-voice+3,"
    786 // 'absFactorize' created a ring, in which a list absolute_factors (the
     820// 'absBiFactorize' created a ring, in which a list absolute_factors (the
    787821// absolute factors) is stored.
    788822// To access the list of absolute factors, type (if the name S was assigned
     
    790824        setring(S); absolute_factors; ");
    791825  return(MPo);
     826}
     827example
     828{
     829  "EXAMPLE:"; echo = 2;
     830  ring R = (0), (x,y), lp;
     831  poly p = (-7*x^2 + 2*x*y^2 + 6*x + y^4 + 14*y^2 + 47)*(5x2+y2)^3*(x-y)^4;
     832  def S = absBiFactorize(p) ;
     833  setring(S);
     834  absolute_factors;
    792835}
    793836
Note: See TracChangeset for help on using the changeset viewer.