4
$\begingroup$

A recent Quora post on computing an integral used the Integral Calculator, the interface and display of which I found somewhat impressive. So I thought that I'd try the same computation in Rubi so as to compare the functionality and format.

Before getting started, I checked whether I had installed the latest version, which is 4.16.1.0 (which led me to making a suggestion on GitHub to the developers about automating this). I needed to update, so I executed the following code:

PacletUninstall["Rubi"]

PacletInstall["https://github.com/RuleBasedIntegration/Rubi/releases/download/\
    4.16.1.0/Rubi-4.16.1.0.paclet"]

path = First[PacletFind["Rubi"]]["Location"]

Get["Rubi`"]

However, this immediately results in a number of error messages of the type

LoadRules::inv: Could not load file or section:
    {/Users/paul/Library/Mathematica/Paclets/Repository/Rubi-4.16.1.0/IntegrationRules/\
     9 Miscellaneous\9.1 Integrand simplification rules.m}

etc. Is this a known problem?

Modifying the steps above to load the previous paclet that I'd installed (4.16.0.4), appeared to work fine. And I could generate the steps in the computation of the indefinite integral

Steps @ Int[Log[1-x] Log[1+x],x]

which have some advantages, and some disadvantages when compared to the Integral Calculator.

However, there is one weird issue that I cannot track down: Using paclet loading (as above) I get a different output for Information[Steps] to what I get if I load the paclet manually: For some reason, the paclet-loaded version has Removed[Int] instead of Int. And manual loading of the current version does not work at all.

$\endgroup$
6
  • 2
    $\begingroup$ so I executed the following code: why did y not use what it says at rulebasedintegration.org/downloadRubi.html which is PacletInstall["https://rulebasedintegration.org/Rubi-4.16.1.0.paclet"] ? This is the command I used and it worked ok for me, but I am on windows. V 12.1. it looks like you are on Linux system. fyi, The expert in issues with Rubi installations is Halirutan. $\endgroup$ – Nasser May 5 '20 at 9:48
  • 1
    $\begingroup$ Can you try <<Rubi` again after restarting the kernel? $\endgroup$ – Szabolcs May 5 '20 at 12:16
  • 2
    $\begingroup$ I'll have a look at it, but atm I have so many side-projects that I could easily stop working my real job :) Would anyone, who is in the best case also using Rubi regularly, be up to join maintaining the project? This would include taking care of building the paclet from Alberts integration rules. $\endgroup$ – halirutan May 5 '20 at 13:43
  • $\begingroup$ To @Nasser, I didn't make up the PacletInstall command I used. It was in the instructions (which appear to have been updated/corrected now). $\endgroup$ – TheDoctor May 8 '20 at 16:14
  • $\begingroup$ To @Szabolcs: I did multiple kernel restarts. But using PacletInstall["https://rulebasedintegration.org/Rubi-4.16.1.0.paclet"] seems to work fine—so I am wondering if there was a problem with the GitHub paclet (which does seem strange)... $\endgroup$ – TheDoctor May 8 '20 at 16:16
6
$\begingroup$

Here is what's happening: Albert uploaded a new 4.16.1.0 paclet to the website where the necessary fix of using FileNameJoin is already included. These changes were not backported to the GitHub repository and this is why you get the error with the same paclet version from the GitHub releases.

The solution is to use the installation instructions as given on the Rubi website

PacletInstall["https://rulebasedintegration.org/Rubi-4.16.1.0.paclet"]
$\endgroup$
2
  • $\begingroup$ One suggestion: instead of including the version number with the paclet name—and since when you load the paclet the version number is returned—why not just change the install to PacletInstall["https://rulebasedintegration.org/Rubi.paclet"] so that one can automatically install the latest version. One could, of course, load a specific version, if required, but most times one just wants to be sure to be using the latest version. $\endgroup$ – TheDoctor May 10 '20 at 14:03
  • 1
    $\begingroup$ My response won't fit in a single comment. I moved this conversation to chat. $\endgroup$ – halirutan May 10 '20 at 21:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.