Talk:Risch algorithm: Difference between revisions

Content deleted Content added
Line 38:
:::''Also, the Risch algorithm is not an "algorithm" literally, because it needs as a part to check if some expression is equivalent to zero. And for a common meaning of what an "elementary function" is it's not known whether such an algorithm exists or not''
:: That sentence needs to be put into the intro if its correct, it needs to be sourced, and if its true we need to stop calling it an algorithm. [[User:Fresheneesz|Fresheneesz]] ([[User talk:Fresheneesz|talk]]) 07:40, 18 November 2008 (UTC)
Basically, these problems arise in the constant field. So you can have some function c*f(x), and c == 0 will be undecidable. Therefore, the Risch Algorithm requires that the constant field be computable. For example, for Q, the rational numbers it ''is'' decidable if a == 0, but this also the case, for example, in Q(a), the field or rational functions on a with rational coefficients, where a is some variable not dependent on x, the integration variable, or even Q(a1, a2, …, an), where the ai do not depend on each other or on x. The actual result of course does not apply to the function field, because abs() is non-elementary. Even if you get a function that is really 0, and try to Risch integrate it, you will get as your result a function that is really an element of the constant field. For example, the integral of sin(x)^2 + cos(x)^2 - 1 is (integrating term wise), x/2 - sin(x)*cos(x)/2 + sin(x)*cos(x)/2 + x/2 - x, which is of course 0. But the algorithm never needed to know or care that the integrand was really identically 0 to get to that. Also, you should know that basic things like the division algorithm, which are essential to algorithms like the Risch Algorithm or even Euclid's gcd algorithm, do not work correctly if they cannot determine zero-equivalence in their coefficients. --<font color="#008888">[[User:Asmeurer|Asmeurer]] ([[User talk:Asmeurer|talk]] ♬ [[Special:Contributions/Asmeurer|contribs]])</font> 03:37, 17 July 2010 (UTC)
 
== Possibly an error? ==