The following section gives examples of SQL commands on the CAS integration tests database. In
these examples rowid
is the main unique key for each row in the table. There is one row per
integral. So total number of rows is 85963. Basically any valid SQL command can be used to query
the test results.
sqlite> select rowid from main where rubi_grade="A" and mma_grade="C"; 41 98 113 175 ....
sqlite> select mma_leafsize,rubi_leafsize from main where rubi_grade="A" and mma_grade="C"; 34|172 37|22 24|21 17|103 ....
sqlite> select optimal_leafsize,optimal_in_maple from main where input_file_number=1; 13|1/3*(1+2*x)^(3/2) 18|-2/27*(1+3*x)^(3/2)+2/45*(1+3*x)^(5/2) 21|2/3*(1+x)^(3/2)-4/5*(1+x)^(5/2)+2/7*(1+x)^(7/2) 18|2/27*(2-3*x)^(3/2)-4/9*(2-3*x)^(1/2) 14|-1/4/(x^2+2*x+2)^2 ....
Find all integrals with optimal antiderivative that has the function polylog in them, and show the file number and the integral number in that file.
sqlite> select input_file_number,integral_number_in_file, command_in_fricas,optimal_in_maple from main where optimal_in_maple LIKE '%polylog%'; |156|integrate(log(t)/(1+t),t, algorithm="fricas")|ln(t)*ln(1+t)+polylog(2,-t) 2|7|....
Find all integrals with optimal antiderivative that has FresnelS or FresnelC in the optimal, and show the file number and the integral number in that file.
sqlite> select input_file_number,integral_number_in_file, command_in_fricas,optimal_in_maple from main where optimal_in_maple LIKE '%FresnelS%' OR'%FresnelC%'; 2|4|integrate(sin(x)/(1+x)^(1/2),x, algorithm="fricas")|cos(1)*FresnelS(2^(1/2)/Pi^(1/2)*(1+x)^(1/2))*2^(1/2)*Pi^(1/2)-FresnelC(2^(1/2)/Pi^(1/2)*(1+x)^(1/2))*sin(1)*2^(1/2)*Pi^(1/2) ...
sqlite> select input_file_number,integral_number_in_file, rubi_number_of_steps from main where rubi_number_of_steps =(SELECT max(rubi_number_of_steps) from main); 210|5294|1980
sqlite> select input_file_number,integral_number_in_file, rubi_number_of_rules from main where rubi_number_of_rules =(SELECT max(rubi_number_of_rules) from main); 210|6214|43
sqlite> select rowid,input_file_name,input_file_number, integral_number_in_file,optimal_leafsize from main where optimal_leafsize =(SELECT max(optimal_leafsize) from main); 66679|7_Inverse_hyperbolic_functions/7.3_Inverse_hyperbolic_tangent/7.3.2-d_x-^m-a+b_arctanh-c_x^n-^p.txt|192|93|6520 sqlite> select command_in_mma from main where rowid=66679; Integrate[(a + b*ArcTanh[c*x^2])^2/(d*x)^(5/2),x] sqlite> select rubi_time,rubi_grade,rubi_number_of_rules, rubi_rules_used from main where rowid=1509; 8.0726703|A|33|{6051, 6043, 6041, 2507, 2521, 212, 2520, 12, 266, 6857, 6131, 6055, 2449, 2352, 6139, 6057, 2497, 209, 5048, 4966, 5040, 4964, 2505, 218, 6874, 217, 1179, 642, 1176, 631, 210, 30, 2637}
sqlite>select command_in_mma from main where rubi_number_of_steps=1; Integrate[(-1 + 2*x)^(-1) - (1 + 2*x)^(-1),x] Integrate[x/(1 - x^2)^5,x] ...
sqlite>select command_in_mma from main where rubi_number_of_steps=2; Integrate[(-3 + x)*(-7 + 4*x^2),x] Integrate[(-7 + 4*x^2)/(3 + 2*x),x] ...
sqlite>select command_in_mma,rubi_rules_used from main where rubi_number_of_steps=4; Integrate[(a*x^2 + b*x^3)/(c*x^2 + d*x^3),x]|{1607, 1598, 45} Integrate[x^4/(4 + 5*x^2 + x^4),x]|{1136, 1180, 209} ...
sqlite> select rowid,input_file_number,integral_number_in_file, rubi_number_of_steps,rubi_number_of_rules, command_in_mma from main where rubi_number_of_steps =(SELECT max(rubi_number_of_steps) from main); 80438|210|5294|1980|17|Integrate[(-24*x^3*Log[20] + E^x*(x^3 - 2*x^4)*Log[20])/(-2641807540224*E^2 + 990677827584*E^(2 + x) - 165112971264*E^(2 + 2*x) + 16052649984*E^(2 + 3*x) - 1003290624*E^(2 + 4*x) + 41803776*E^(2 + 5*x) - 1161216*E^(2 + 6*x) + 20736*E^(2 + 7*x) - 216*E^(2 + 8*x) + E^(2 + 9*x)),x]
Find how all CAS system scored on the above problem (1 is pass, 0 is failed)
sqlite> select mma_pass,rubi_pass,maple_pass,fricas_pass,maxima_pass,mupad_pass,giac_pass,sympy_pass from main where rowid=80438; 1|1|1|1|1|1|1|1
So all solved it
sqlite> SELECT DISTINCT rubi_number_of_rules from main where rubi_number_of_rules =(SELECT max(rubi_number_of_rules) from main); 43
SELECT COUNT(*) from main where rubi_number_of_rules =9; 1
select rowid,optimal_leafsize from main where optimal_leafsize =(SELECT max(optimal_leafsize) from main); 66679|6520
The above says it is problem #66679 in the database, with leaf size for optimal of 6520
select rowid,optimal_leafsize from main where optimal_leafsize =(SELECT max(optimal_leafsize) from main); 66679|6520
The above says it is problem #66679 in the database, with leaf size for optimal of 6520
select rubi_leafsize,maple_leafsize,fricas_leafsize,mma_leafsize,maxima_leafsize,giac_leafsize,sympy_leafsize from main where rowid=66679; 6520|0|0|0|0|0|0
zero for leaf size means it was not solved. The above means only Rubi solved it.
sqlite> select command_in_maple from main where rowid=66679; int((a+b*arctanh(c*x^2))^2/(d*x)^(5/2),x)
Find how many problem Fricas uses special functions Frensel in its solution
sqlite> select COUNT(*) from main where fricas_anti LIKE '%fresnel_sin%' OR'%fresnel_cos%'; 395
Find how many problem Fricas uses Weierstrass special functions in its solution
sqlite>select COUNT(*) from main where fricas_anti LIKE '%weierstrass%'; 4501
sqlite> select COUNT(*) from main where maple_anti LIKE '%fresnel%'; 644
sqlite> select count(*) from main where fricas_pass=1; 69536
>sqlite3 cas_integration_tests.db sqlite> select count(*) from main where giac_grade="F(-2)"; 6314
>sqlite3 cas_integration_tests.db sqlite> select count(*) from main; 106812 sqlite> select count(*) from main where giac_grade="F(-2)"; 6314
So the percentage is \(5.9113\)