Alejandro Jakubi

MaplePrimes Activity

These are replies submitted by Alejandro Jakubi

@Axel Vogt 

The Dirac delta is a function on some space of test functions, not a function on the reals, what numerical integration is intended to handle, your point (1). So, in my opinion, any such numerical integration command with Dirac in the integrand should return an error message, Float(undefined) or something like that. Actually, using the integral notation for distributions/generalized functions like Dirac is a handy abuse of language, prone to excesses as shown here.

@Thomas Richard 

But as I understand it, your argument precisely shows a problem with the design of the system in regards to updates. Namely, that the whole or large part of the help database, thousands of help pages probably, should be downloaded again, even for any change in a single help page. If it were modular, updating/adding a handful of help pages documenting dot version changes should imply only a small change in the download size. Publishing dot version changes in the download web page is OK, but it is not a replacement to corresponding system documentation updates. Really, this issue needs to be addressed.

About "Edit", no, for me it clearly means input code edit, something that user does. Changes produced by execution of this input are done by the system, which is something completely different. E.g. depending on the settings, they may involve launching a separated plot window, a help browser, etc. So, no "Execute" entries should be under "Edit", in my opinion. And, probably, a top-level "Execute" menu, is the best or only solution.


@Mac Dude 

As I read the OP's questions they are well posed and clear, looking for available mechanisms of collaboration, rather than getting a "free copy" or the like. But, as I read your wording here:

Are you looking for a free license for the student, or Maplesoft picking up his/her salary or a fraction thereof, or ??

it sounds to me clearly as mocking at him.

Certainly, I would expect somebody from Maplesoft to contact him (perhaps this contact has occured already privately). Missing a published channel to start such potential collaboration contacts, this forum seems fine to me as a starting point.

By the way, about tech support and money, what is this site nowadays? Two excerpts from Jacques:

Why should they?

The counter to that is that the value of ``expert users'' is often under-estimated. In some sense, this whole website should be proof of the high value of these users. If nothing else, the reduction in support costs is a tangible effect of mapleprimes.


And most definitely, the design discussions all but disappeared.  The site seemed to be more than a great technical support (for free!) site for Maplesoft's products, especially for the questions that did not have to do with installation support, etc.  But whatever that more was, seems to have gone away, at least in my opinion.

@Mac Dude 

What chuiko is asking makes full sense. As Roman stated some time ago:

The actual development of Maple is spread across labs all over the world, for example, in Moscow, Paris, Vancouver, London Ontario, and of course Waterloo. These labs contribute most of the specialized packages and routines. The Maplesoft company maintains and enhances the core routines (such as simplify, int, solve, etc), develops the Maple kernel, and oversees development of the system as a whole.

And you could find by a web search documents explaining development agreements between Maplesoft and academic organizations.

@Thomas Richard 

But where in the documentation of the system is this keyboard shortcut shown? I think that the natural places are the help pages ?worksheet,reference,hotwin/unix/mac . By the way, note that there are ?updates,... help pages after major versions, but none after dot versions, and I think that the dot updates should also have their place there.

About its location, I would better place it under "File" menu as an action that involves the whole worksheet, similarly to "Print", "Open", "Export As" etc.  In any case "Execute" under "Edit" makes no sense to me, as execute is no edit-like action. But, in my opinion, a much more sensible design would include a top level "Execute" menu.

@Mac Dude 

You have described the responsability of the user. But what do you think about the responsability of a software company selling a product on which the user cannot trust? This issue has been discussed in this forum, several times, years ago. For instance, here Jacques has stated:

...In other words, you are not allowed to sell bad toasters or bad cars, but it is perfectly OK to sell bad software...

How could this situation be improved? One action would be implementing good engineering practices. Note, in particular, that Maplesoft does not have a quality control department. Another action would be increasing transparency, for instance providing an open bug tracker, something that has been requested many times, see e.g. here. And you may have read that this is precisely one of the complaints of the authors:

Often there is no clear way to communicate such difficulties, and if one does persist in contacting the vendor, one often receives no feedback or follow-up response. This clearly should be improved.

And about the mindset of these authors, yes they have been very naive in trusting. But what is the message that the software vendors send to the users? As I see it, it amounts to something like: "you can trust in our product". Under this influence, how long could it take users to realize that the correct mindset is not to trust? I guess that it much depends on their social environment.


Only superficially similar as these "rolling" libraries posted by Edgardo are, as he has stressed, official, rather than independent. Consequently "closed" code, rather than open (though certainly it could be inspected). But certainly, they are a showcase of the higher rate of improvement and maintainance that Maple could achieve with a more modern approach to system development. Moreover, within an open-like source framework. 

@Axel Vogt 

The point is cultural. And who is "we"? We, veteran users, do know all this stuff. But newer users may not be aware, and marketing narrative might produce distorted perceptions on them. So, I think that such "papers" do play a useful role in counterbalancing that narrative, even when not containing anything new from the academic point of view.

Clearly, the case of this integral was introduced to the paper at the review stage, because it was of concern to the referee. Otherwise, it should have deserved a bit more of analysis from those mathematicians... The argument to abs is a sum of points on the unit circle, and its value can only depend on the difference y-x. One approach is factoring out exp(2*Pi*I*x), so that this integral remains:

> int(abs(1+exp(2*Pi*I*y)),y=0..1);

The next observation is that this referee may have used Maple 17 or earlier. In Maple 18.01 this statement:

> int(abs(exp(2*Pi*I*x)+exp(2*Pi*I*y)),[x=0..1,y=0..1]);

does not produce an answer within 1000s or so, while earlier versions return 0 in a few seconds. This huge time is spent mostly at computing one-sided limits at discontinuities of the primitive function returned by the method FTOC. And the previous behavior is recovered bypassing the discontinuity check as in:

> int(abs(exp(2*Pi*I*x)+exp(2*Pi*I*y)),[x=0..1,y=0..1],continuous=true);

Is this change of behavior a regression? Certainly, it would be of concern if it affects integrals that were correctly computed.

That paper raises though several points that would deserve further discussion here. For instance how far results from a CAS could be trusted, and strategies for checking results. Also, the clash between "open" science and closed source.


Indeed, the LaTeX code facilities have many problems and complaints have been posted frequently. This is just one example. Note, by the way, that a workaround that I have posted to that thread was removed...

About export to Word, see e.g. this thread. Do not expect wonders though.



Matrices A and B are not identical as computational objects as they have different memory adresses, like:

> addressof~([A,B]);
                            [3033813634, 3033813698]

So, memory equality tests yield false, as with evalb:

> evalb(A=B);

Now, is ends up calling an evalb check, so that it returns also false:

> stopat(`property/ConvertRelation`,3):
> is(A=B);
   3*      return evalb(rel)

I think that this is bad design, as is should check on "properties", meaning at the higher semantic/mathematical level, rather than the lower syntactic level of a memory check. But this is as is...


Certainly, by increasing the infolevel value you will get more information on the steps/algorithms being used and the intermediate results. See how it works in this toy polynomial system:

> infolevel[solve]:=3:
> eqs:={y^2-x^3=0,y-x=1}:
> solve(eqs,{x,y});
Main:   Entering solver with 2 equations in 2 variables
Main:   attempting to solve as a linear system
Main:   attempting to solve as a polynomial system
Main:   subsystem is essentially univariate
UnivariateHandler:   subsystem has only one equation
UnivariateHandler:   solving as if univariate in y
Main:   Polynomial solver successful. Exiting solver returning 1 solution
                3       2                               3       2
  {x = RootOf(_Z  - 4 _Z  + 3 _Z - 1) - 1, y = RootOf(_Z  - 4 _Z  + 3 _Z - 1)}

In particular, you will find whether Groebner of something else was used. About level value conventions used in the library see ?userinfo .


It is a matter of design, that Maple returns NULL by default in such cases:

> eqs:={y-x=0,y-x=1}:
> evalb(NULL=solve(eqs,{x,y}));

instead of being "verbose" and informing to the user precisely what is the case. Certainly, I do not like this default behavior. What I have shown you before is how to raise this verbosity level for what solve does by means of infolevel.


Actually many SCRs have been submited for years about problems with worksheet export to PDF (file size, fonts, etc). 

@Markiyan Hirnyk 

Certainly, simplify works with polynomial side rules. Meaning that it has a large overlap with algsubs in their application target.

First 10 11 12 13 14 15 16 Last Page 12 of 109