Exploring the newer GUI front-end, for use with SageMath.

One of the subjects which I had written about only yesterday, is that the Computer Algebra / Numerical Tool System called ‘SageMath‘ was available in the repositories, for Debian / Stretch – which is in itself news – and that additionally, the default way to use it under Debian is through a Web-interface called ‘SageNB’. Well what I’ve now learned is that the SageMath developers no longer support SageNB, and are continuing their work with the graphical front-end called ‘Jupyter‘.

But, installing Jupyter under Debian is a bit of a chore, because unlike how it is with custom-compiles, Debian package maintainers tend to break major software down into little bits and pieces. At one point, I had Jupyter running, but with no awareness of the existence of SageMath. What finally did the trick for me today, was to install the following packages:

  • python-notebook
  • jupyter-nbextension-jupyter-js-widgets
  • sage-math-jupyter

Needless to say, that last package out of the three is the most important, and may even pull in enough of the other packages, to be selected by itself. It’s just that I did not know immediately, to install that last package.

So this is what SageMath 7.4 looks like, through Jupyter:

screenshot_20180916_165217

(Corrected 09/18/2018, 3h50 … )

(Updated 09/18/2018, 5h40 … )

(As of 09/16/2018, 20h10 : )

Frankly, I was a bit disappointed at first. My main disappointment seemed to be with the fact, that this GUI did not offer to typeset the Math. It does allow us to ‘download’ our Notebooks as PDF-Files, but when we do, we simply get the same, highlighted text, and graphics, only as a PDF – in code – or with whatever appearance the browser-view is already showing us. Also, the support for 3D plots is lackluster, as the plot above is non-interactive. At least with SageNB, I was able to select the ‘canvas3d’ viewer, which allowed the plot to be rotated. Also, if we use SageMath from the command-line, it defaults to using ‘JMol’ as its viewer, which is full-featured.

But as it turns out, I have discovered ‘the trick’, to getting Jupyter to typeset the users’ Math…

Continue reading Exploring the newer GUI front-end, for use with SageMath.

I just installed Sage (Math) under Debian / Stretch.

One of the mundane limitations which I’ve faced in past years, when installing Computer Algebra Systems etc., under Linux, that were supposed to be open-source, was that the only game in town – almost – was either ‘Maxima’ or ‘wxMaxima’, the latter of which is a fancy GUI, as well as a document exporter, for the former.

Well one fact which the rest of the computing world has known about for some time, but which I am newly finding for myself, is that software exists called ‘SageMath‘. Under Debian / Stretch, this is ‘straightforward’ to install, just by installing the meta-package from the standard repositories, named ‘sagemath’. If the reader also wants to install this, then I recommend also installing ‘sagemath-doc-en’ as well as ‘sagetex’ and ‘sagetex-doc’. Doing this will literally pull in hundreds of actual packages, so it should only be done on a strong machine, with a fast Internet connection! But once this has been done, the result will be enjoyable:

screenshot_20180915_201139

I have just clicked around a little bit, in the SageMath Notebook viewer, which is browser-based, and which I’m sure only provides a skeletal front-end to the actual software. But there is a feature which I already like: When the user wishes to Print his or her Worksheet, doing so from the browser just opens a secondary browser-window, from which we may ‘Save Page As…’ , and when we do, we discover that the HTML which gets saved, has its own, internal ‘MathJax‘ server. What this seems to suggest at first glance, is that the equations will display typeset correctly, without depending on an external CDN. Yay!

I look forward to getting more use out of this in the near future.

(Update 09/15/2018, 21h30 : )

Continue reading I just installed Sage (Math) under Debian / Stretch.

The failings of low-end consumer software, to typeset Math as (HTML) MathML.

One of the features which HTML5 has, and which many Web-browsers support, is the ability to typeset Mathematical formulae, which is known as ‘MathML’. Actually, MathML is an extension of XML, which also happens to be supported when inserted into HTML.

The “WiKiPedia” uses some such solution, partially because they need their formulae to look as sharp as possible at any resolution, but also, because they’d only have so much capacity, to store many, many image-files. In fact, the WiKiPedia uses a number of lossless techniques, to store sharp images as well as formulae. ( :1 )

But from a personal perspective, I’d appreciate a GUI, which allows me to export MathML. It’s fine to learn the syntax and code the HTML by hand, but in my life, the number of syntax-variations I’d need to invest to learn, would be almost as great, as the total number of software-packages I have installed, since each software-package, potentially uses yet-another syntax.

What I find however, is that if our software is open-source, very little of it will actually export to MathML. It would be very nice if we could get our Linux-based LaTeX engines, to export to this format, in a way that specifically preserves Math well. But what I find is, even though I posses a powerful GUI to help me manage various LaTeX renderings, that GUI being named “Kile”, that GUI relies back on a simple command-line tool named ‘latex2html’. Whatever that command-line outputs, that’s what all of Kile will output, if we tell it to render LaTeX specifically to HTML. ‘latex2html’ in turn, depends on ‘netpbm’, which counts as very old, legacy software.

One reason ‘latex2html’ will fail us, is the fact that in general, its intent is to render LaTeX, but not Math in any specific way. And so, just to posses the .TEX Files, will not guarantee a Linux user, that his resulting HTML will be stellar. ‘latex2html’ will generally output PNG Images, and will embed those images in the HTML File, on the premise that aside from the rasterization, PNG Format is lossless. Further, if the LaTeX code was generated by “wxMaxima”, using its ‘pdfLaTeX’ export format, we end up with incorrectly-aligned syntax, just because that dialect of LaTeX has been optimized by wxMaxima, for use in generating .PDF Files next.

(Updated 05/27/2018 : )

Continue reading The failings of low-end consumer software, to typeset Math as (HTML) MathML.