Live data from Hacker News

Symbolica Computer Algebra System

symbolica.io

91–100 of 126 posts

Re: Symbolica Computer Algebra System

#91
> Students and hobbyists can use Symbolica for free. Once Symbolica is being used professionally, either in an academic context or in a commercial company, a license is required. The preferred license model for academic use is an institution-wide license.

while i do not believe the author has any obligation to license it under an open-source license, i think people who use it under a proprietary license are being foolish. a cas is an essential tool for day-to-day work, and becoming dependent on a proprietary software vendor for that usually ends badly

(repost from elsethread)

Re: Symbolica Computer Algebra System

#92

Earlier quoted context omitted.

Author of Symbolica here: Symbolica is used in physics calculations to do arithmetic on rational polynomials that are hundreds of megabytes long. For my physics research I have worked with expressions that was just shy of a terabyte long and had > 100M terms. The way that works is that you stream terms from disk, perform manipulations on them and write them to disk again. Using a mergesort, terms that add up can be i…

I love how merge-sort which was once used on punch cards because RAM was tight is still relevant. :)

Knuth's section on sorting data on tape drives is surprisingly relevant to big data running over S3 buckets and streaming into compute.

Re: Symbolica Computer Algebra System

#93
post #52

Earlier quoted context omitted.

This is fascinating. What is the real-world application of these polynomials? I mean, what technical-scientific problems can only be solved with such large objects? I love the thought of "if I don't solve this enormous polynomial, this solar panel won't have very good efficiency" or something like that.

These polynomials appear when computing Feynman diagrams, which are used to make predictions for the Large Hadron Collider. The collider can measure collisions with such astonishing precision ( The large polynomials appear in the middle of the computation, often referred to as intermediate expression swell. This also happens when you do a Gaussian elimination or compute greatest common divisors: the final result will…

Is there a document/book you can recommend that includes a simplified example/tutorial of this computation process from beginning to end? (Or, what are the right keywords to search for such a thing?)

I'm looking for something like: here's the particle interaction we will work on, this is a very simple Feynman diagram, and here's the simplified data the LHC gave us about it, here's the resulting equation from which we'll derive a series, etc.

Not looking for how to program it, but actually for seeing the problem structure, and the solution design from beginning to end. (Familiar with high level physics concepts, and comfortable with any math).

Re: Symbolica Computer Algebra System

#94

I feel like this is missing some comparisons to Sympy and Mathematica. Probably it's more polished than Sympy, but if I'm going to closed-software software why would I pick this over MMA?

The most obvious comparison is in syntax. Easier syntax means less user time spent. In Symbolica, an example from the documentation from symbolica import Expression x = Expression.var('x') f = Expression.fun('f') e = x + f(x) + 5 e = e.replace_all(x, 6) print(e) In Mathematica, the same thing is e = x + f[x] + 5 e /. x -> 6 What I find striking is that, we know that Python is the most popular language because you don…

You can also just use

    Expression.parse('x+f(x)+5')

Of course, to refer to a specific variable of the CAS in Python, you need to bind it to a Python variable. There is no way around this.

In the end most of the time of the user is not spent on syntax, but on designing algorithms. With Mathematica, you are locked into the Mathematica ecosystem. With Symbolica / sympy and other CASs that are libraries, you can use all the familiar data structures of the language you are coding in.

Re: Symbolica Computer Algebra System

#96

How does source-available work together with license keys? Can I not just compile it myself and be done with the license key?

It works by allowing the project to deal with honest people and ignore assholes efficiently.

And for a small team (in this case, one person), getting rid of assholes who just want to rip the project off with minimal effort is a big win.

After all, if you just want to play around with the system you are a hobbyist and can get it for free anyway. Why go to the extra effort of stealing the code?

And if you actually are creating value with the system, don't you think you might want some support?

If your answer in either case is that you would rather cheat the author then there is nothing tangible stopping you, but you just defined who you are and selected yourself out of the class of people the maintainer has to deal with.

Re: Symbolica Computer Algebra System

#97
post #91

> Students and hobbyists can use Symbolica for free. Once Symbolica is being used professionally, either in an academic context or in a commercial company, a license is required. The preferred license model for academic use is an institution-wide license. while i do not believe the author has any obligation to license it under an open-source license, i think people who use it under a proprietary license are being foo…

[deleted]

Re: Symbolica Computer Algebra System

#98
post #82

Earlier quoted context omitted.

Symbolica is only a year old, however most features are already in there. What is a Sage feature you'd like to see in Symbolica? Note that there are also features in Symbolica that are not in Sage, such as numerical integration, pattern matching and term streaming.

while i do not believe you have any obligation to license it under an open-source license, i think people who use it under a proprietary license are being foolish. a cas is an essential tool for day-to-day work, and becoming dependent on a proprietary software vendor for that usually ends badly so in a sense that's a 'sage feature i'd like to see'

I feel similarly. While I myself might gamble on learning a tool like this, I'd be reluctant to recommend it to students unless I was very confident that it would always be there when they reached for it. Source-available does scratch that itch more or less, but it creates some reluctance.

Re: Symbolica Computer Algebra System

#99

Earlier quoted context omitted.

Thanks for the feedback! I will see if I can slow down the slideshow. You can see more demos in the docs and the live notebook. An expression is very general. Each variable and function is commutative and should hold for the complex numbers. For functions you can set if they are symmetric, linear or antisymmetric. Non-commutativity can be emulated by adding an extra argument that determines the ordering or by giving…

Thanks for the quick answer! I had only looked at the python API docs, so I missed that. I’ve just been wrapping up learning a bunch of Lie theory and will keep symbolica in mind next time I want to play with some big nasty expressions! > Non-commutativity can be emulated by adding an extra argument that determines the ordering or by giving them different names. Would you mind giving an example? (or just tell me it’s…

It's not a language specific feature, but you can do the bookkeeping yourself. In the simplest form you can write:

    f(1,...)*f(2,...)
Then when you do pattern matching with wildcards x_ and y_ you can do

   f(x_,...)*f(y_,..)
with the requirement that x_ < y_. This way you will know you match them in the expected order and not the other way around.

Re: Symbolica Computer Algebra System

#100
post #92

Earlier quoted context omitted.

I love how merge-sort which was once used on punch cards because RAM was tight is still relevant. :)

Knuth's section on sorting data on tape drives is surprisingly relevant to big data running over S3 buckets and streaming into compute.

I can remember the days! I suppose as problems grow in size, it's not too surprising that older methods of coping with what seemed like lots of data are still applicable.
Post reply on HN