Sat Jul 11 23:14:07 MDT 1998 aquarius% reduce REDUCE 3.6, 15-Jul-95, patched to 15 Apr 96 ... 1: % ----------[ R e d u c e ]---------- % ---------- Initialization ---------- on time; Time: 0 ms % ---------- Numbers ---------- load_package(assist)$ Time: 40 ms % Let's begin by playing with numbers: infinite precision integers % => 30414 0932017133 7804361260 8166064768 8443776415 6896051200 0000000000 factorial(50); 30414093201713378043612608166064768844377641568960512000000000000 Time: 10 ms % => 2^47 3^22 5^12 7^8 11^4 13^3 17^2 19^2 23^2 29 31 37 41 43 47 factorize(ws); {2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7, 7, 7, 7, 7, 7, 7, 7, 11, 11, 11, 11, 13, 13, 13, 17, 17, 19, 19, 23, 23, 29, 31, 37, 41, 43, 47} Time: 30 ms frequency(ws); {{2,47}, {3,22}, {5,12}, {7,8}, {11,4}, {13,3}, {17,2}, {19,2}, {23,2}, {29,1}, {31,1}, {37,1}, {41,1}, {43,1}, {47,1}} Time: 80 ms % Double factorial => 10!! = 10*8*6*4*2 = 3840, 9!! = 9*7*5*3*1 = 945 %{10!!, 9!!}; % ABC base 16 => 2748 base 10 abc; abc Time: 0 ms % 123 base 10 => 234 base 7 123; 123 Time: 0 ms % 677 base 8 => 1BF base 16 677; 677 Time: 10 ms % [log base 8](32768) => 5 log(32768)/log(8); log(32768) ------------ log(8) Time: 0 ms on rounded; Time: 0 ms ws; 5.0 Time: 0 ms off rounded; Time: 10 ms % 5^(-1) mod 7 => 3; 5^(-1) mod 6 => 5 on modular; Time: 0 ms setmod 7$ Time: 0 ms 5^(-1); 3 Time: 0 ms setmod 6$ Time: 0 ms 5^(-1); ***** Conversion between modular integers and modular not defined Cont? (Y or N) ?y Time: 0 ms off modular; Time: 0 ms % Greatest common divisor => 74 gcd(gcd(1776, 1554), 5698); 74 Time: 0 ms % Infinite precision rational numbers => 4861/2520 1/2 + 1/3 + 1/4 + 1/5 + 1/6 + 1/7 + 1/8 + 1/9 + 1/10; 4861 ------ 2520 Time: 0 ms % Complete decimal expansion of a rational number => 0.142857 ... load_package(rataprx)$ Time: 330 ms rational2periodic(1/7); ______ 0.142857 Time: 30 ms % Multiply two complete decimal expansions and produce an exact result => 2 periodic2rational(rational2periodic(7/11) * rational2periodic(22/7)); ______ __ periodic2rational(3.142857*0.63) Time: 20 ms % This number should immediately simplify to 3^(1/3) 10/7 * (1 + 29/1000)^(1/3); 1/3 3 Time: 0 ms % Simplify an expression with nested square roots => 1 + sqrt(3) sqrt(2*sqrt(3) + 4); sqrt(3) + 1 Time: 20 ms % Try a more complicated example (from the Putnam exam) => 3 + sqrt(2) sqrt(14 + 3*sqrt(3 + 2*sqrt(5 - 12*sqrt(3 - 2*sqrt(2))))); sqrt(2) + 3 Time: 20 ms % See D.J. Jeffrey and A.D. Rich, ``The nesting habits of radicals'', draft of % 1998 => sqrt(2) + sqrt(3) + sqrt(5) sqrt(10 + 2*sqrt(6) + 2*sqrt(10) + 2*sqrt(15)); sqrt(sqrt(15) + sqrt(10) + sqrt(6) + 5)*sqrt(2) Time: 50 ms % Rationalize the denominator => 5 + 2 sqrt(6) (sqrt(3) + sqrt(2))/(sqrt(3) - sqrt(2)); sqrt(3) + sqrt(2) ------------------- sqrt(3) - sqrt(2) Time: 10 ms % A factorization of 3 in the integers extended by sqrt(-5) sqrt(-2 + sqrt(-5)) * sqrt(-2 - sqrt(-5)); sqrt(sqrt(5)*i - 2)*sqrt( - sqrt(5)*i - 2) Time: 10 ms % => 3 + sqrt(7) [Jeffrey and Rich] (90 + 34*sqrt(7))^(1/3); 1/3 1/3 (17*sqrt(7) + 45) *2 Time: 20 ms % This is a nontrivial way of writing 12 ! ((135 + 78*sqrt(3))^(2/3) + 3)*sqrt(3)/(135 + 78*sqrt(3))^(1/3); 2/3 2/3 sqrt(3)*((26*sqrt(3) + 45) *3 + 3) ----------------------------------------- 1/3 1/3 (26*sqrt(3) + 45) *3 Time: 20 ms on rounded; Time: 0 ms ws; 12.0 Time: 0 ms off rounded; Time: 0 ms % See David Jeffrey, ``Current Problems in Computer Algebra Systems'', talk % => 1 + sqrt(2) (49 + 21*sqrt(2))^(1/5); 1/5 1/5 (3*sqrt(2) + 7) *7 Time: 20 ms % A nasty example generated by Axiom => [log(sqrt(2) + 1) + sqrt(2)]/3 ((6 - 4*sqrt(2))*log(3 - 2*sqrt(2)) + (3 - 2*sqrt(2))*log(17 - 12*sqrt(2)) + 32 - 24*sqrt(2)) / (48*sqrt(2) - 72); ( - 2*sqrt(2)*log( - 12*sqrt(2) + 17) - 4*sqrt(2)*log( - 2*sqrt(2) + 3) - 24*sqrt(2) + 3*log( - 12*sqrt(2) + 17) + 6*log( - 2*sqrt(2) + 3) + 32)/(24 *(2*sqrt(2) - 3)) Time: 10 ms on rounded; Time: 0 ms ws; 0.765195716464 Time: 10 ms (log(sqrt(2) + 1) + sqrt(2))/3; 0.765195716464 Time: 10 ms off rounded; Time: 0 ms % Cardinal numbers => infinity 2*infinity - 3; 2*infinity - 3 Time: 0 ms % 2^aleph_0 => aleph_1 2^infinity; infinity 2 Time: 0 ms % ---------- Quit ---------- quit; Quitting real 14.67 user 0.82 sys 1.64