I started to look into one of the problems 
(https://github.com/sagemath/sage/issues/37813):

res := integrate((x^2+1)^(1/2)/(x^2+(x+(x^2+1)^(1/2))^(1/2)), x);

works nicely, but converting to InputForm (which I use to do the 
translation to sage) fails.  Is there a good reason for that - i.e., is 
this a bug, or just a problem with memory?

Best wishes,

Martin

(2) -> inform := res :: INFORM

Heap exhausted during garbage collection: 0 bytes available, 16 requested.
Gen  Boxed   Code    Raw  LgBox LgCode  LgRaw  Pin       Alloc     Waste   
     Trig      WP GCs Mem-age
 1   16426      0      0      0      0      0   12   269054560     69024   
172047802       0   1  1.3993
 2   46668      0    145      0      0      0   68   766811856    172336   
  2000000   30615   0  0.9840
 3       0      0      0      0      0      0    0           0         0   
  2000000       0   0  0.0000
 4       0      0      0      0      0      0    0           0         0   
  2000000       0   0  0.0000
 5       0      0      0      0      0      0    0           0         0   
  2000000       0   0  0.0000
 6    1430      6    631    172      0     58    0    36868464    765584   
  2000000    2156   0  0.0000
           Total bytes allocated    =    1072734880
           Dynamic-space-size bytes =    1073741824
GC control variables:
   *GC-INHIBIT* = true
   *GC-PENDING* = true
   *STOP-FOR-GC-PENDING* = false
fatal error encountered in SBCL pid 829857 tid 829857:
Heap exhausted, game over.

Welcome to LDB, a low-level debugger for the Lisp runtime environment.


On Tuesday 16 April 2024 at 23:05:09 UTC+2 Nasser M. Abbasi wrote:

> FYI;
>
> I entered few issues at sagemath related to these exception. Here is 
> summary and links to sagemath tracking
>
> sqlite3 cas_integration_tests.db 
> SQLite version 3.45.0 2024-01-15 17:01:13
>
> sqlite> select count(*) from main where fricas_anti LIKE '%maximum 
> recursion depth exceeded%';
> 3
>
> sqlite> select command_in_fricas from main where fricas_anti LIKE 
> '%maximum recursion depth exceeded%';
> integrate((1-x)^2014*x,x, algorithm="fricas")
> integrate((1-x)^2014*x,x, algorithm="fricas")
> integrate((1-x)^2020*x,x, algorithm="fricas")
>
> Bug entered at sagemath
>
> https://github.com/sagemath/sage/issues/37812
> ----------------------------------------------------------
> sqlite> select count(*) from main where fricas_anti LIKE '%NoneType object 
> has no attribute replace%';
> 6
>
>
> sqlite> select command_in_fricas from main where fricas_anti LIKE 
> '%NoneType object has no attribute replace%';
>
> integrate((x^2+1)^(1/2)/(x^2+(x+(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate((x^2+1)^(1/2)/(x^2+(x+(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate((x^2-(x^2+1)^(1/2))/(x^2+(x+(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate((x^2-(x^2+1)^(1/2))/(x^2+(x+(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate((1-(x-(x^2+1)^(1/2))^(1/2))/(x^4-2*x^2*(x^2+1)^(1/2)),x, 
> algorithm="fricas")
> integrate(x^4/(1-x*(x^2+1)^(1/2)*(x-(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
>
> Bug entered at sagemath
>
> https://github.com/sagemath/sage/issues/37813
>
> -------------------------------------------------------------------
>
> sqlite> select count(*) from main where fricas_anti LIKE '%no explicit 
> roots found%';
> 16
>
> sqlite> select command_in_fricas from main where fricas_anti LIKE '%no 
> explicit roots found%';
> integrate(1/(b*x^7+a),x, algorithm="fricas")
> integrate(1/(-b*x^7+a),x, algorithm="fricas")
> integrate(x^4/(b^3*x^6+9*a*b^2*x^4+27*a^2*c*x^3+27*a^2*b*x^2+27*a^3),x, 
> algorithm="fricas")
> integrate(x^3/(b^3*x^6+9*a*b^2*x^4+27*a^2*c*x^3+27*a^2*b*x^2+27*a^3),x, 
> algorithm="fricas")
> integrate(x/(b^3*x^6+9*a*b^2*x^4+27*a^2*c*x^3+27*a^2*b*x^2+27*a^3),x, 
> algorithm="fricas")
> integrate(1/(b^3*x^6+9*a*b^2*x^4+27*a^2*c*x^3+27*a^2*b*x^2+27*a^3),x, 
> algorithm="fricas")
> integrate(1/(a-b*sin(x)^5),x, algorithm="fricas")
> integrate(1/(a+b*sin(x)^5),x, algorithm="fricas")
> integrate(1/(a-b*cos(x)^5),x, algorithm="fricas")
> integrate(1/(a+b*cos(x)^5),x, algorithm="fricas")
> integrate((e*x+d)^2*(a+b*arctan(c*x^3)),x, algorithm="fricas")
> integrate((e*x+d)*(a+b*arctan(c*x^3)),x, algorithm="fricas")
> integrate(1/(a+b*sinh(x)^5),x, algorithm="fricas")
> integrate(1/(a+b*cosh(x)^5),x, algorithm="fricas")
> integrate(1/(a-b*cosh(x)^5),x, algorithm="fricas")
> integrate((-a*x^5+b)/(b*x+a)^(1/2)/(x^5+a*b),x, algorithm="fricas")
>
>
> https://github.com/sagemath/sage/issues/37814
>
>
> --------------------------------------------------------------------------------------
>
> sqlite> select count(*) from main where fricas_anti LIKE '%Exception 
> raised: AttributeError%';
> 12
>
> sqlite> select command_in_fricas from main where fricas_anti LIKE 
> '%Exception raised: AttributeError%';
>
> integrate((x^2+1)^(1/2)/(x^2+(x+(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate((x^2+1)^(1/2)/(x^2+(x+(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate(1/(x-(a*x+b)^(1/2)*(c+(a*x+b)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate(1/(x-(a*x+b)^(1/2)*(c+(a*x+b)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate((x^2-(x^2+1)^(1/2))/(x^2+(x+(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate((x^2-(x^2+1)^(1/2))/(x^2+(x+(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate(x/(x+(c+(a*x+b)^(1/2))^(1/2)),x, algorithm="fricas")
> integrate(x/(x+(c+(a*x+b)^(1/2))^(1/2)),x, algorithm="fricas")
> integrate((1-(x-(x^2+1)^(1/2))^(1/2))/(x^4-2*x^2*(x^2+1)^(1/2)),x, 
> algorithm="fricas")
> integrate(x^4/(1-x*(x^2+1)^(1/2)*(x-(x^2+1)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate(x/(x-(a*x+b)^(1/2)*(c+(a*x+b)^(1/2))^(1/2)),x, 
> algorithm="fricas")
> integrate(x/(x-(a*x+b)^(1/2)*(c+(a*x+b)^(1/2))^(1/2)),x, 
> algorithm="fricas")
>
>
>
> https://github.com/sagemath/sage/issues/37816
>
>
> --------------------------------------------------
>
> sqlite> select count(*) from main where fricas_anti LIKE 
> '%SparseUnivariatePolynomial(Expression(Complex(Integer)))%';
> 2
>
> sqlite> select command_in_fricas from main where fricas_anti LIKE 
> '%SparseUnivariatePolynomial(Expression(Complex(Integer)))%';
> integrate(cot(x)/(a+b*sin(x)^3)^(1/2),x, algorithm="fricas")
> integrate(tan(x)/(a+b*cos(x)^3)^(1/2),x, algorithm="fricas")
>
> These come from Fricas itself
>
> 5) -> integrate(cot(x)/(a+b*sin(x)^3)^(1/2),x)                    
>
>  
>    >> Error detected within library code:
>    "failed" of mode 
> Union(SparseUnivariatePolynomial(Expression(Complex(Integer))),"failed") 
>    cannot be coerced to mode 
> SparseUnivariatePolynomial(Expression(Complex(Integer)))
>
>
> (5) -> integrate(tan(x)/(a+b*cos(x)^3)^(1/2),x)
>
>  
>    >> Error detected within library code:
>    "failed" of mode 
> Union(SparseUnivariatePolynomial(Expression(Complex(Integer))),"failed") 
>    cannot be coerced to mode 
> SparseUnivariatePolynomial(Expression(Complex(Integer)))
>
> ------------------------------------------------
> sqlite> select count(*) from main where fricas_anti LIKE 
> '%exp_integral_e%';
> 18
> sqlite> select command_in_fricas from main where fricas_anti LIKE 
> '%exp_integral_e%';
>
>
> integrate(x^100*exp_integral_e(1,a*x),x, algorithm="fricas")
> integrate(x^2*exp_integral_e(1,a*x),x, algorithm="fricas")
> integrate(x*exp_integral_e(1,a*x),x, algorithm="fricas")
> integrate(exp_integral_e(1,a*x),x, algorithm="fricas")
> integrate(exp_integral_e(1,a*x)/x,x, algorithm="fricas")
> integrate(exp_integral_e(1,a*x)/x^2,x, algorithm="fricas")
> integrate(exp_integral_e(1,a*x)/x^3,x, algorithm="fricas")
> integrate(exp_integral_e(1,a*x)/x^4,x, algorithm="fricas")
> integrate((d*x)^m*exp_integral_e(1,b*x),x, algorithm="fricas")
> integrate((d*x+c)^3*exp_integral_e(1,b*x+a),x, algorithm="fricas")
> integrate((d*x+c)^2*exp_integral_e(1,b*x+a),x, algorithm="fricas")
> integrate((d*x+c)*exp_integral_e(1,b*x+a),x, algorithm="fricas")
> integrate(exp_integral_e(1,b*x+a),x, algorithm="fricas")
> integrate(exp_integral_e(1,b*x+a)/(d*x+c),x, algorithm="fricas")
> integrate(exp_integral_e(1,b*x+a)/(d*x+c)^2,x, algorithm="fricas")
> integrate(exp_integral_e(1,b*x+a)/(d*x+c)^3,x, algorithm="fricas")
> integrate(exp_integral_e(1,b*x+a)/(d*x+c)^4,x, algorithm="fricas")
> integrate((d*x+c)^m*exp_integral_e(1,b*x+a),x, algorithm="fricas")
>
> This error happens since Fricas has no exp_integral_e. This needs to be
> translated correctly to Fricas. See discussion at 
>
> https://groups.google.com/g/fricas-devel/c/A9f4li7gq84
>
>
> Added bug report
>
> https://github.com/sagemath/sage/issues/37817
>
> --Nasser
>
>
>
>
> On Tuesday, April 16, 2024 at 8:21:03 AM UTC-5 Nasser M. Abbasi wrote:
>
>>
>> " riCAS does not allows floating point numbers in integrands. This
>> causes errors like:
>>
>> Exception raised: TypeError >> An error occurred when FriCAS evaluated
>> (x)*(exp((x)*(((-0.10000000000000001)::EXPR INT)))): Cannot convert the
>> value from type Float to Expression(Integer) ."
>>
>> I found there is only one such input
>>
>> sqlite> select count(*) from main where fricas_anti LIKE '%Cannot convert 
>> the value from type Float%';
>> 1
>>
>> It turns out this is how it was in the original Mathematica Rubi input 
>> file:
>>
>> {x/E^(0.1*x), x, 3, -100/E^(x/10) - (10*x)/E^(x/10), 1}
>>
>> May be Albert Rich had typo when he wrote this one. I will fix it in a 
>> future update. I did not
>> see this myself before.
>>
>> For the other ones you say they look like interface errors, will look at 
>> these as well and see what I can find.
>> If they are sagemath interface issues, will report then to sagemath,
>>
>> --Nasser
>>
>>
>>
>> On Tuesday, April 16, 2024 at 7:56:51 AM UTC-5 Waldek Hebisch wrote:
>>
>>> On Tue, Apr 16, 2024 at 03:17:18AM -0700, 'Nasser M. Abbasi' via FriCAS 
>>> - computer algebra system wrote: 
>>> > FYI, 
>>> > 
>>> > This page 
>>> > <
>>> https://12000.org/my_notes/CAS_integration_tests/reports/summer_2024/indexchapter2.htm>
>>>  
>>>
>>> > 
>>> > 
>>> > Has now updated list of all exceptions generated by FriCAS 1.3.10 
>>> built 
>>> > with sbcl 2.3.11 on Linux via sagemath 10.3. 
>>> > 
>>> > Percentage of integrals which generated an exception is 2.19% 
>>> > 
>>> > Total number of integrals tested is now 106,812 
>>> > 
>>> > The page above shows the commands and the exceptions generated. 
>>> > 
>>> > Individual tests Reports are not yet completed, they are building now 
>>> from 
>>> > Latex and it will take may be 3-4 weeks to finish. But the main top 
>>> level 
>>> > report 
>>> > <
>>> https://12000.org/my_notes/CAS_integration_tests/reports/summer_2024/index.htm>
>>>  
>>>
>>> > is completed now. 
>>> > 
>>> > Fricas did well. 4th place out of 9 CAS systems with 77.117% solved. 
>>> > 
>>> > The SQL database is also fully build and contains all the result of 
>>> all 
>>> > tests. Link to the database page to download is here 
>>> > <
>>> https://12000.org/my_notes/CAS_integration_tests/reports/summer_2024/DATA_BASE/index.htm>
>>>  
>>> the 
>>> > database can be used to obtain more information about each test made. 
>>> Some 
>>> > examples 
>>> > 
>>> > Find number of integrals failed by Fricas with exception 
>>> > 
>>> > sqlite> select count(*) from main where fricas_grade="F(-2)"; 
>>> > 2339 
>>> > 
>>> > Get list of all exceptions by Fricas. The sagemath-Fricas interface is 
>>> much 
>>> > better now than before (I am using sagemath 10.3). 
>>> > 
>>> > I see very few exceptions due to sagemath interface issues now. (such 
>>> > as exp_integral_e) 
>>>
>>> Thanks for information. The exceptions below look like Sage 
>>> errors: 
>>>
>>> Exception raised: RecursionError >> maximum recursion depth exceeded 
>>>
>>> Exception raised: RuntimeError >> no explicit roots found 
>>>
>>> Exception raised: AttributeError >> NoneType object has no attribute 
>>> replace 
>>>
>>> Exception raised: AttributeError 
>>>
>>> and (as you mentioned) a bunch of errors like: 
>>>
>>> Exception raised: TypeError >> An error occurred when FriCAS evaluated 
>>> ((x)^(((100)::EXPR INT)))*(exp_integral_e(((1)::EXPR INT),(a)*(x))): 
>>> There are no library operations named exp_integral_e Use HyperDoc 
>>> Browse or issue 
>>>
>>> FriCAS does not allows floating point numbers in integrands. This 
>>> causes errors like: 
>>>
>>> Exception raised: TypeError >> An error occurred when FriCAS evaluated 
>>> (x)*(exp((x)*(((-0.10000000000000001)::EXPR INT)))): Cannot convert the 
>>> value from type Float to Expression(Integer) . 
>>>
>>> The one below look as borderline case: here "failed" comes from FriCAS, 
>>> but fishy type, that is: 
>>>
>>> SparseUnivariatePolynomial(Expression(Complex(Integer))) 
>>>
>>> suggests that there is something wrong with "user input", that is 
>>> with Sage interface. 
>>>
>>> -- 
>>> Waldek Hebisch 
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to fricas-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/fricas-devel/ddb4615c-18d6-4691-95a1-3f48273cf8cen%40googlegroups.com.
  • [fricas-devel] fyi... 'Nasser M. Abbasi' via FriCAS - computer algebra system
    • Re: [fricas-d... Waldek Hebisch
      • Re: [fric... 'Nasser M. Abbasi' via FriCAS - computer algebra system
        • Re: [... 'Nasser M. Abbasi' via FriCAS - computer algebra system
          • R... 'Martin R' via FriCAS - computer algebra system
            • ... Waldek Hebisch
              • ... 'Martin R' via FriCAS - computer algebra system
                • ... 'Nasser M. Abbasi' via FriCAS - computer algebra system
                • ... 'Martin R' via FriCAS - computer algebra system
                • ... 'Martin R' via FriCAS - computer algebra system
                • ... Dima Pasechnik
                • ... 'Martin R' via FriCAS - computer algebra system
                • ... dimpase
                • ... 'Martin R' via FriCAS - computer algebra system
                • ... 'Nasser M. Abbasi' via FriCAS - computer algebra system

Reply via email to