On Thu, 16 Apr 2009 15:43:41 -0700 (PDT)
Maurizio <maurizio.gran...@gmail.com> wrote:

> 
> > For people interested in helping out, a few words about integration is
> > in order. As we discussed on this list before, many problems in
> > integration can be handled with heuristics before calling more advanced
> > algorithms. The heuristics also give more user friendly answers in most
> > cases.
> >
> > Integration code in Sage should run through some preprocessing before
> > calling anything else, be it maxima, or a native implementation of the
> > Risch algorithm.
> >
> > There are some links to descriptions of heuristics used by maxima and maple 
> > at this page:
> >
> > http://wiki.sagemath.org/symbolics
> >
> > Pattern matching and rewriting capabilities of the new symbolics will
> > be very useful for this. Anybody interested in improving the
> > integration capabilities of Sage can help, no high level mathematical
> > knowledge is necessary.
> >
> 
> This is very interesting, indeed I have no high level mathematical
> knowledge :)
> 
> Just for fun, I was trying to implement the most basic examples (1.4
> and 1.5) of this page, linked in the wiki:
> http://www.cs.uwaterloo.ca/~kogeddes/papers/Integration/IntSurvey.html
> 
> Let me make this straight: I have not understood what is intended to
> be a resultant() and I have absolutely no experience with rings nor
> with multivariate polynomials. Nonetheless, I tried this code in SAGE:
> 
> reset()
> P.<x,y,z> = PolynomialRing(QQ)
> # P.<x,y,z> = GF(5)[]
> 
> A = -1

A is 1 in example 1.5.

> B = x^3 + x
> tores = A - z*B.derivative(x)
> res = tores.resultant(B,x); factor(res)
> 
> I get:
> (-1) * (z + 1) * (2*z - 1)^2

With A = 1:

sage: P.<x,z> = QQ[]
sage: b = x^3+x
sage: b.resultant(1-z*b.derivative(x),x)
-4*z^3 + 3*z + 1
sage: factor(_)
(-1) * (z - 1) * (2*z + 1)^2

which matches the maple result.

> That is somehow close to the result shown in the link, but why is it
> not identical?
> 
> Moreover, why if I use the second statement (the one in the comment)
> to define the ring, do I get a completely different answer? E.g.:
> (z + 1) * (z + 2)^2
> 
> Which is the correct way to define the ring in this case?

The theory only works over characteristic 0, i.e., your fields should contain 
QQ. Also note that,

sage: P.<x,z> = GF(5)[]
sage: (x+x^5).derivative(x)
1

What is the integral of 1 w.r.t x in this case?

> Finally, even assuming that I can get the right answer from this,
> which is the recommended way to get the roots of an equation given by
> a "univariate polynomials == 0"? This is supposed to be the next step
> of the algorithm.
> 
> The worst way I can think of is to use repr(), so that I can use solve
> (), but hopefully there's a better way, at least to convert a
> polynomials to a symbolic expression... Is there?

You can get this information from the factorization you compute above.


Cheers,
Burcin

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to