Web REDUCE
Web REDUCE mobile version
Emscripten Makefile
My development version of Web REDUCE will mangle UTF-8 characters in general. It is only intended to accept ASCII plus some special cases (mostly Greek letters) that I use in some of the menus. I hadn't realised until fairly recently that text copied from a web page or HTML email can contain ASCII characters (possibly only space, but maybe others) with the high bit set, which REDUCE doesn't like. So as a quick hack I now truncate unrecognised non-ASCII characters to something that REDUCE accepts....
This problem of pasting from formatted sources is fixed in my development version of Web REDUCE, which I hope to release soon. I modified the function asciify so that if it doesn't recognise a non-ASCII character to be translated, it truncates the character to 7 bits instead of just returning it unmodified. That seems to work when copying and pasting examples from the HMTL REDUCE manual although I haven't tried it with other formatted source text. Francis From: discussion@reduce-algebra.p.re.sourceforge.net...
I think you should doubt the result of a definite integration if there is the possibility that it has taken the wrong branch of a complex-valued function, perhaps within some transformed version of the integrand, which may be what has gone wrong here; I haven't investigated. That's much less likely to happen with numeric integration when the integrand is real throughout the integration range. Francis From: discussion@reduce-algebra.p.re.sourceforge.net discussion@reduce-algebra.p.re.sourceforge.net...
Fix typo in example in gnuplot.tex
I think Arthur meant that you should use get('foo, 'saved); It's very unusual to have a doubled single quote in Lisp. But the above doesn't seem to produce any output in Web REDUCE either. The REDUCE parser generates Lisp code, which by default is saved in the system and interpreted when you call a function. This is probably the closest that REDUCE gets to Javascript. You can see the saved Lisp for your procedure foo by doing getd 'foo; but it doesn't look much like the REDUCE input. However, most...
REDUCE IDE Version 1.12
You might like to take a look at https://github.com/orgs/reduce-algebra/teams/reduce-algebra. I have no idea how well it works, but at least it has provided a home for some REDUCE code that would otherwise have disappeared. Francis [https://github.githubassets.com/assets/github-logo-55c5b9a1fe52.png]https://github.com/orgs/reduce-algebra/teams/reduce-algebra Build software better, togetherhttps://github.com/orgs/reduce-algebra/teams/reduce-algebra GitHub is where people build software. More than...
Improve redcsl.bat
Web site
Web Site
Working directory support
Web site update for REDUCE IDE 1.11
REDUCE IDE version 1.11
Using ln to represent natural logarithm (again)
Web site
Minor web site updates
Minor manual additions
Web site
Revert LN change
Using ln to represent natural logarithm
Fix redpsl man page typos
I don't think REDUCE has an analogue of the Maple latex function. However, I also don't think it would be too hard to provide one, so I'll add that to my todo list. In the meantime, I can't think of any much better process than what you are doing. It shouldn't be too hard to post-process the output with something like sed to remove the LaTeX markup that you don't want. One minor improvement would be to swap the out file and on latex commands, which will avoid the first two lines of LaTeX going into...
Reduce has a rather large number of switches that tune is simplification. For instance "on/off combineexpt;" which incluences cases like x^(1/3)*x^(1/6). Many such were implemented when somebody had a genuine calculation they were doing but altering behaviour for everybody else would not necessarily make sense. Finding out what they all are is tough. Even when the documentation in the manual is explicit finding what you need in those 1200 or so pages can be tough! A few years ago I added a Switch...
Web site: minor updates
The model solution to the last question in the Vectors and Linear Algebra tutorial on the web at https://reduce-algebra.sourceforge.io/tutorials/veclinalg-tutorial.php shows one way to perform the substitution that you want, without explicitly determining the arbcomplex index. It uses this code (revised for your variable names): let arbcomplex(~j) => 1; myv := v; clear arbcomplex(~j); However, it would be better to use myv := (v where arbcomplex(~j) => 1); (I'll revise the tutorial.) Francis
Manual formatting
Minor manual corrections
REDUCE on Common Lisp: improve REDUCE revision number detection
REDUCE on Common Lisp: REDUCE revision
Mobile Web REDUCE
Definite integral of sqrt
Emacs REDUCE
REDUCE IDE version 1.10
Another possible solution might be to use my Run-REDUCE graphical user interface (GUI) instead of the CSL GUI. I just checked this using Ubuntu 20.04.5 LTS with Run-REDUCE running CSL REDUCE. I copied and pasted the assignment at the start of this thread into Run-REDUCE and it displayed it without any drama. I also copied and pasted the assignment into the CSL REDUCE GUI, which didn't display anything until I input a semicolon by hand and then displayed a clearly different assignment to g. You can...
REDUCE IDE version 1.9
REDUCE does this a lot internally but there is no algebraic-mode analogue of the eval facility that some other languages provide. For your specific example, you might like to try the following. First, in algebraic mode, determine the internal (Lisp) form of the expression or statement you want to eval, which you can do like this: algebraic; % just to be sure! on defn; x := k; off defn; This should give the output (setk 'x (aeval 'k)) Now go into symbolic mode and assign the above form to some variable...
Interactive Lessons: fix a syntax error
REDUCE IDE version 1.8
Web Site: Support page
Web Site: REDUCE IDE
New release of REDUCE IDE for GNU Emacs
Gun Emacs REDUCE IDE version 1.7
Try assigning !E as you have done, but do not assign !J. Instead, use the assignment to !J the other way around, i.e. let - eta*x1*y2 + eta*x1*y3 + eta*x2*y1 - eta*x2*y4 - eta*x3*y1 + eta*x3*y4 + eta*x4*y2 - eta*x4*y3 - x1*xi*y3 + x1*xi*y4 + x1*y2 - x1*y4 + x2*xi*y3 - x2*xi*y4 - x2*y1 + x2*y3 + x3*xi*y1 - x3*xi*y2 - x3*y2 + x3*y4 - x4*xi*y1 + x4*xi*y2 + x4*y1 - x4*y3 = !J; Then evaluate !E. I find that !J appears in the result. You could replace !J by 8 in the above let rule. Does that help? If so,...
REDUCE Web Site: update Bibliography
Update web site README
Web Site: replace RSS feeds
Thanks to you both for your responses. I think this ticket can now be closed. Francis
Cannot access RSS feeds from SF web server
If you look up ^ (or **) in the REDUCE manual index, it takes you to the start of Chapter 3, whereas the discussion about operator precedence and associativity is in Chapter 2. So I have updated the REDUCE manual to add a reference from Chapter 3 back to the details of operator precedence and associativity in Chapter 2. I have also indexed Associativity, Operator associativity and Precedence. (Operator precedence was already indexed). The online versions of the manual reflect these updates. If any...
REDUCE Manual: operator precedence and associativity
From a current perspective, I agree that ^ being left associative seems strange, and I've been caught out by assuming it was right associative. The REDUCE manual says: "Unlike ALGOL and PASCAL, ^ is left associative. In other words, a^b^c is interpreted as (a^b)^c." So it was clearly a considered decision, which leaves me wondering why it was made. I suspect the reason might be that is left associative in FORTRAN. REDUCE can generate FORTRAN code, and it would be awkward having to translate a left...
REDUCE Manual
REDUCE Manual
Revise distributed redpsl.bat
Update REDUCE IDE web page
REDUCE IDE version 1.6
REDUCE IDE for GNU Emacs
Common Lisp Reduce 6286 compilation problems
Marco has advised me that: * The r6304 version of psl reduce, csl reduce, sbcl reduce, clisp reduce and ccl reduce compile without problems under X86_64 macOS Catalina version 10.15.7. * The r6304 version of csl reduce, sbcl reduce and ccl reduce compile without problems under M1 macOS Monterey v12.3.1. Building REDUCE on ABCL is work in progress and not yet fully supported, so I think it is fair to close this bug report. Francis
This time you want to see all solution branches. Your first solution represents an infinite set constructed by replacing arbint(1) and arbint(2) by all integers. For example, replacing both of them by 0 gives the solutions 2pi, 0, 2pi/3, 0. The last solution gives 4pi/3 if you replace arbint(1) by 1. Francis Get Outlook for Androidhttps://aka.ms/ghei36 From: Yi Zhao yzhao156@users.sourceforge.net Sent: Wednesday, 11 May 2022, 11:36 pm To: [reduce-algebra:discussion] 899363@discussion.reduce-algebra.p.re.sourceforge.net...
off allbranch does what you want. Francis Get Outlook for Androidhttps://aka.ms/ghei36 From: Yi Zhao yzhao156@users.sourceforge.net Sent: Wednesday, May 11, 2022 6:16:53 PM To: [reduce-algebra:discussion] 899363@discussion.reduce-algebra.p.re.sourceforge.net Subject: [reduce-algebra:discussion] solve for real solution When I "off complex" and "solve(2^x=1, x)", I get an solution with complex number. Is there any way I can get just 0? solve for real solutionhttps://sourceforge.net/p/reduce-algebra/discussion/899363/thread/aaddc21f3e/?limit=25#f19e...
REDUCE on CLISP on macOS
REDUCE on Common Lisp
REDUCE on Clozure Common Lisp
Minor update to pm package
REDUCE on Common Lisp
REDUCE on Clozure Common Lisp (CCL)
I searched DLMF for erf but didn't notice that there was more than one page of results.7.17 Inverse Error Functions https://dlmf.nist.gov/7.17 is on the second page! You could streamline your definition of probit as procedure probit p; sqrt(2)rhs first num_solve(erf x=2p-1, x=0); This avoids a procedure call and so should be a bit faster. Francis On 25/04/2022 5:07 am, m-stgt wrote: Thank you both for your kind replies. Arthur: that solves my problem. Using your |inverf| I'm able to define a |probit|...
I'm not aware of an inverse error function in REDUCE. I can't find any reference to it in the NIST Digital Library of Mathematical Functions (https://dlmf.nist.gov/) either, so I guess it's fair to say that it's a fairly obscure function. If you want a numerical root finder in REDUCE then I suggest you look at "Chapter 17: Solving numerical problems" in the REDUCE manual, in particular, solution of algebraic equations by Newton’s method, e.g. num_solve({sin x=cos y, x + y = 1},{x=1,y=2}). I wouldn't...
Common Lisp Reduce 6286 compilation problems
Hi, Marco Thanks for your report. It's useful to know what happens on macOS, which I don't use. I hope I have fixed the pasf error that upset SBCL, and that Arthur has fixed the paraset error that upset CLISP, but I have not seen that error myself. As I explain in the README file, support for ABCL is incomplete. I am currently working on it. The problem is that ABCL does not provide a way to preserve a Lisp image in the way that all other Lisps I have used do. An approach using ASDF might work and...
REDUCE on Common Lisp: README
Trivial redlog fix
REDUCE on Common Lisp
REDUCE on Common Lisp: revise the build process
Web REDUCE: ODESolve Template
REDUCE on Common Lisp: update for current REDUCE version
Web REDUCE: Load Packages dialogue
Web Site: SF badge and manual-lookup
CSL loadable!-packages!* value
CSL loadable!-packages!* value
REDUCE Manual: MathJax version
REDUCE manual on the web
Web REDUCE: Fix menu check boxes
Web REDUCE: minor build updates
Web REDUCE: minor improvements
Web REDUCE: GUI on mobile devices
load_package numeric; on rounded; num_solve(2x+SIN(x)=2pi, x); gives the solution {x=3.14159265359} Francis
Web REDUCE: mobile version
Web REDUCE: build mobile version
I have succeeded in building a version of Web REDUCE with smaller memory use, which runs on my Android phone, so I hope it will run on other mobile devices. The mobile version allocates 256MB of memory instead of the 1GB allocated by the desktop version, which I think is the key modification. If I allocate 512MB then it fails on my phone, so I could probably allocate a bit more than 256MB if necessary. The memory allocation is currently fixed. I suspect that allowing it to increase would cause more...
Web REDUCE on chromebook fails
Web REDUCE: fix a typo
Web REDUCE: improved startup
Web REDUCE: about
Web REDUCE on chromebook fails
Thanks for the bug report and the attached console log. I say on the About Web REDUCE page that "Web REDUCE ... does not seem to run on mobile devices." That was based on brief attempts on my Android phone and a Chromebook, but I don't have access to a Chromebook for debugging. I'll make this warning a bit more prominent now that you have confirmed that there is a problem on Chromebooks. I believe that there is a general problem with memory management affecting mobile browsers; see Wasm needs a better...