Changeset 194409 in git
- Timestamp:
- Apr 22, 2013, 2:19:46 PM (10 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'ad2543eab51733612ba7d118afc77edca719600e')
- 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
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/absfact.lib
r809d63 r194409 26 26 PROCEDURES: 27 27 absFactorize(); absolute factorization of poly 28 absBiFactorize(); absolute factorization of bivariate poly 28 29 "; 29 30 … … 609 610 } 610 611 612 //////////////////////////////////////////////////////////////////////////////// 611 613 proc absBiFactorize(poly p, list #) 614 "USAGE: absBiFactorize(p [,s]); p poly, s string 615 ASSUME: coefficient field is the field of rational numbers or a 616 transcendental extension thereof 617 RETURN: 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). 639 NOTE: 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]}. 644 SEE ALSO: factorize, absPrimdecGTZ, absFactorize 645 EXAMPLE: example absBiFactorize; shows an example 646 " 612 647 { 613 648 int dblevel = printlevel - voice + 2; … … 726 761 } 727 762 728 MPo;729 763 list tmpf=absBiFact (p); 730 764 … … 784 818 785 819 dbprint( printlevel-voice+3," 786 // 'abs Factorize' created a ring, in which a list absolute_factors (the820 // 'absBiFactorize' created a ring, in which a list absolute_factors (the 787 821 // absolute factors) is stored. 788 822 // To access the list of absolute factors, type (if the name S was assigned … … 790 824 setring(S); absolute_factors; "); 791 825 return(MPo); 826 } 827 example 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; 792 835 } 793 836
Note: See TracChangeset
for help on using the changeset viewer.