Mathics – A free, light-weight alternative to Mathematica
mathics.github.io
mathics.github.io
Seriously, why is this not more common? When I go to your landing page I want to see how awesome your thing is. A few examples is all it takes.
Show me something like this
In[6]:= Derivative[1][Sin]
Out[6]= Cos[#1]&
In[7]:= Derivative[2][Sin]
Out[7]=-Sin[#1]&
Don't make me go to documentation. Also don't compare it to Mathematica if it isn't as intuitive as Mathematica (seriously, it is wildly popular because simple things you don't have to look up. It works like you expect. There was a lot of planning to make it this way. People note the "Zen" of Mathematica). Here's an example of where Mathics is non-intuitive (besides if you remove the [1] from the above example)
n[13]:= x = 5
Out[13]= 5
In[14]:= Derivative[1][x^2]
Out[14]= 25'
In[15]:= f[x] := x^2
In[16]:= Derivative[1][f]
Out[16]= 2 #1&
In[17]:= f'[x]
Out[17]= 10
I know no system is perfect, but try to sell me on your idea before I go through your documentation and get frustrated that it doesn't work like the thing you compare it to.
[0] https://pasteboard.co/IdIaJNo.png [1] https://pasteboard.co/IdIc7dc.png
Edit: Also that first example (from [1]) doesn't work for me
In[1]:= 1 + 2 - x * 3 x / y
Out[1]= 3 - 3 x ^ 2 / y
Is this a difference in the cli? I also notice I can't get any graphics there. No connection to matplotlib?
In[3]:= Plot[{Sin[x], Cos[x], Tan[x]}, {x, -3Pi, 3Pi}]
Out[3]= -Graphics-
1. host those images some where else than on pastebin, it's too slow to see them on your github page. Try anywhere else. 2. your instructions should tell the exact command to run it after installing it with pip on linux too, like you do on windows.
Other free general symbolic algebra systems are available, of course, like the venerable Reduce and Axiom.
This is definitely a project I can get behind.
Does anyone have an opinion on the software itself linked here?
[0] https://github.com/axkr/symja_android_library [1] https://github.com/axkr/symja_android_library/wiki/MMA-conso... [2] https://github.com/axkr/symja_android_library/tree/master/sy...
"Over the months after our first meeting, I had all sorts of interactions with Steve about Mathematica. Actually, it wasn’t yet called Mathematica then … For a while he wouldn’t suggest anything. But then one day he said to me: 'You should call it Mathematica.' … he told me his theory for a name was to start from the generic term for something, then romanticize it." (Wolfram, Idea Makers)
You mean romanize? And not just on the surface (latin alphabet), but even using the actual word from latin (which is already romanized greek I guess) and of course all the related living languages...
edit: I always felt strange naming a software exactly the same name (in many language) as the field it operates in. Like naming a music creation software Music, or a biology related software Biology, etc. It is like equates the software with the whole field, suggesting that there is no difference between the software and its disclipine. It is a marketing trick that have a bit of bragging side, but of course it is common pattern, e.g: https://www.amazon.co.uk/I-Am-Football-Zlatan-Ibrahimovic/dp...
(Though in this case the intended meaning is probably a little closer to "build mystique surrounding.")
I agree with your point about naming a product to cover the whole field. It does seem off-putting--although I think examples of it are pretty rare. (In fact, I can't think of any off hand...) In this case, "Mathematica" is far enough from anyone's ordinary English usage that it doesn't fall into that category for me. I don't believe I've ever heard anyone say the word "Mathematica" to refer to anything other than the product. It would be a different story, of course, if it were just called "Math."
Ok, I see. But it is not true for a large(not english speeking) part of the world. It is like calling your "pineapple" software Ananas[1], you just romanticize it in a small region while interfere with traditional word usage in the other part. [1] https://www.reddit.com/r/MapPorn/comments/2pp0s6/pineapple_p...
IIRC Microsoft did this (Word, Windows) with hope that the press would feel the need to use “Microsoft” to disambiguate, improving brand recognition.
https://en.wikipedia.org/wiki/Philosophi%C3%A6_Naturalis_Pri...
Shortest, simplest description I can give is that it is the best AI-less science-heavy digital brain out there. Or as Wikipedia puts it "a computational knowledge engine".
Edit: apparently Siri and Alexa sometimes query WolframAlpha.
It's a collection of queries that an AI could answer in theory, but are (probably) far beyond current technology. The questions are generally just super interesting.
Here's a few recent samples: "derivative of the shore length of Tasmania with respect to ocean depth" "total area enclosed by whole notes in a typical printing of the Brandenburg Concertos" "total duration of watch adjustments made by people changing time zones per day, if everyone had a watch and adjusted it" "volume of ink saved by the Times per year if they switched to American spelling"
Most of those questions are poorly specified, if you think about them, or they're trick questions with trivial answers (like zero) in some cases.
Then there's the occasional question that could be answered, not just by some future AI, but even current WolframAlpha if it had the right dataset. Like this:
> minimum distance between a place with a 2-letter name and Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch
Thought it's unclear if the intent is great-circle distance or 3d distance.
If there's any doubt that plenty of these are intended to be silly questions...
> focal length of the Eye of Sauron
Any question that is poorly specified can generally be augmented with reasonable assumptions or approximations, so that an AI could potentially give an answer. W|A is a natural language interface after all, and seeing all the "W|A can" posts on the account shows that it can certainly answer questions that don't have a precise mathematical definition. The intent behind each question is usually clear to me, and to have an AI that is useful to humans, we expect the AI to infer this intent and make reasonable assumptions.
Even "focal length of the Eye of Sauron" could conceivably be given a rough answer from estimates of the eye's geometry (either from descriptions in the books, or a visual comparison with other objects of approximately-known size in the movie).
The interesting part of the account IMO is thinking through how a hypothetical AI might answer each question. Take the latest question, "derivative of the shore length of Tasmania with respect to ocean depth". This is poorly specified in that "Tasmania" only exists for ocean depths that are low enough to not completely cover it and high enough to not have another land mass connect to it, and I'm sure there's tons of other assumptions that humans would implicitly make in answering a question like that. But the topography of the Earth is approximately known, and I can see how a rough answer could be calculated. Thinking through these assumptions, and comparing current technology with what we'd expect from an AGI, is quite illuminating, and is what makes that Twitter account so awesome IMO.
In that coastline question, what's the definition of shore length (isn't that a single a scalar) in terms of ocean depth (wouldn't ocean depth be zero at the shore)? If there's not a given mathematical relationship, the derivative with respect to ocean depth is zero, right? The question is confusing. I get the sense you're reading something else into the question, but it's not clear what. There's no clear definition of the variables shore length or ocean depth, there's no function relating those variables, and if there were a function I don't see why it would be likely to be differentiable.
I'll grant that some of the questions seem half serious and answerable... but mostly only if you have the obscure data necessary to answer them. Does anyone know the statistical distribution of blue whale length, or the armspan of Jesus (is that pre or post crucifixion armspan)? Does anyone know the font and font size used and ink weight and average characters per page and number of pages used by the Times in their print edition? That NYT question could be determined, but would take a fair amount of investigation to get those necessary estimates.
Questions like those are difficult for Wolfram Alpha not because it's too dumb, but because it doesn't have data needed to answer them. Not many humans, if any, have the data or knowledge to answer them either. If the questions were after ballpark figures, then the questions should be littered words like "average" and "typical", but they're not. You have questions about specific species, specific people.
Then, when it really matters, those specifics vanish: When asking the total time needed for everyone (everyone!) to adjust watches during DST changes, assuming everyone has a watch, there's no mention of watch type, or what to do about the few cripples who wouldn't be able to set the watch without assistance; would the total time be infinite then since for a few people the task can never be completed, and the question specifically said everyone, rather than asking about a typical case?
Those are just a few of the most recent questions. Given how quickly those can be torn apart, why is my original assertion even worth debating? That twitter account is, generally speaking, tweeting silly or poorly specified questions that even reasonably intelligent humans couldn't provide definitive answers for.
[1] https://scifi.stackexchange.com/questions/27657/was-the-eye-...
For the other examples you mention:
As ximeng mentioned, "ocean depth" here should refer to sea level. "Sea level" would probably have been a better wording.
Christ the Redeemer is a statue in Rio de Janeiro[1]. W|A can give answers for "length of blue whale", "number of blue whales", and "height of Christ the Redeemer" (but not arm span, which Wikipedia gives as 92 ft.). It's not much of a stretch to combine those to get an estimate of the answer.
The contents of every NYT issue should be available on the internet, and some of the other figures can be found on the internet without too much trouble: the font is 8.7pt Imperial[2], and there are on average 150k words per issue[3]. Of course, these are fairly obscure pieces of data, but W|A prides itself on pulling together lots of disparate data sources. And if you don't consider having a particular obscure piece of data to be intelligence, you could easily shift the question to be, "how might an AI pull this information from the internet using natural language processing?"
For the time zone example, I took it to mean time zone changes from traveling, not just from DST (hence "per day"), and the total duration refers to the amount the watch is changed, not how long it takes to change it. Though whether the question means "sum of absolute values of differences" or just "sum of differences" is unclear.
[1] https://en.wikipedia.org/wiki/Christ_the_Redeemer_(statue) [2] https://en.wikipedia.org/wiki/The_New_York_Times#Print_newsp... [3] https://www.quora.com/How-many-words-are-in-an-average-print...
That's a funny joke but it's not something for which any AI could provide a concrete answer. This is due to the fractal nature of coastlines and described as the coastline paradox [1].
My country is claimed to have the 9th longest coastline in the world despite being pretty small, and this makes me question that claim for sure.
EDIT: I downloaded the source just in case the author receives an offer he can't refuse.
Stephen Wolfram knows about this. He just hasn't taken action yet.
It takes ages to grow the sharks to full size, even with the extra heat from the volcano.
2. The originator of this (Jan Poetschko) has worked at Wolfram for several years now
3. I think at least a number of people at Wolfram understand that Octave has been an asset (or gateway drug if you prefer) for Matlab, rather than a threat
Usually companies are intelligent enough to use tactics that has the greatest likelihood of success: mafioso tactics. The developer won't, in all likelihood receive a lawsuit. He'll be given an offer he can't refuse.
It's a good thing they didn't pull the plug on the github page. Now it's possible for someone to carry the torch.
The lead developer up until 2 years ago, Angus Griffith's LinkedIn says he's at Google. [0]
In April 2016, Angus replied to a comment of mine "Mathics is still maintained. There are currently two of us working on it. The last release was v0.9 in March this year." [1].
The original creator Jan Pöschko's GitHub profile states "JavaScripter making the notebook interface of wolframcloud.com" [2]. His bulk contributions to Mathics stopped in 2012, but he still makes sporadic contributions to Mathics - see here he merged a pull request March 2019 [3] - suggests Wolfram tolerate the existence of Mathics because it's not a serious threat.
As the creator of Sage, what's your opinion of the legal risks of creating a Mathematica syntax compatible clone like Mathics in the light of Wolfram Research's fairly aggressive assertion of its IP "rights"?
[0] https://www.linkedin.com/in/angus-griffith-093433b0/
[1] https://news.ycombinator.com/item?id=11465064
[2] https://github.com/poeschko
[3] https://github.com/mathics/Mathics/commits?author=poeschko&s...
What I'm saying is that a syntax compatible Mathematica clone, with all the other stuff too, ever took off, then Wolfram Research's playbook would be:
1. try and hire the lead developers.
2. if that failed, call in their lawyers and assert their IP rights over the syntax.