12

I am in the final stages of writing my first paper, in dynamical systems. The paper is purely theoretical but I use Mathematica for some images and graphical simulations (none of the actual results depend on a computation by Mathematica). The paper will be presented in a conference, where I will show some of these simulations in real time.

My question is whether I need or should cite Mathematica in my paper somehow.

More generally - had I used, say, Matlab, or an open source python library instead, would I need to cite them?

2
  • 2
    FYI: support.wolfram.com/kb/472 in case you decided to. Commented May 9, 2017 at 16:52
  • 6
    In my experience(neuroscience) it is typical to refer to the analysis software you use in your methodology, mentioning at least the software version and company, but not typically included in the list of references (this is the same approach used for physical technical equipment, such as amplifiers, key microscope components, etc). Something like "Simulations were performed in Mathematica Version 11.1, Wolfram Research, Champaign, IL."
    – Bryan Krause
    Commented May 10, 2017 at 4:55

7 Answers 7

8

I would recommend to always cite software that you use in your calculations (no need for LaTeX, obviously). A screw driver will always stay a screw driver, but software is a little bit more complex.

Have you heard of the little bug that may invalidate 15 years of brain research? I think in that case it would be quite nice to know which version of the software you used.

And in your case: can you really be sure that Mathematica has not a specific bug that you haven't noticed? In Version 10, I noticed that some linear-log plots were messed up and that was fixed in a later version 10.1. It could have easily happened that I had published a wrong graph, and thus I think it is quite important to give detailled information about the software that you use.

4
  • 2
    A screw driver might stay a screw driver, but what about the hardware you run the software on? Something like a new Pentium floating point bug could affect calculations quite a bit as well. It's pretty crazy how well things seem to work despite all these layers we take on trust.
    – Anyon
    Commented Sep 7, 2018 at 18:23
  • Funny, as a neuroscientist, my response to this question was "duh" so I was surprised to see so many people saying "no." Commented Sep 9, 2018 at 5:51
  • @AzorAhai I could not comprehend your comment above. Would you please elaborate a little more? (I am not a neuroscientist). Would you please confirm this answer if you agree with it or telling us this answer is wrong if you disagree, or somewhere in between. Thanks.
    – Nobody
    Commented Sep 9, 2018 at 7:31
  • I'm not sure what was confusing, but I agree with this answer. In other words: Because I come from neuroscience, I took it as a given you would cite things like Mathematica, so I was surprised that so many people suggested not citing it when I clicked on this question. Commented Sep 9, 2018 at 16:55
7

You generally don´t need to "cite" the software you are using. (Would you "cite" Word/LaTeX for writing the paper or Windows/Linux for running Word/LaTeX...?)

Although for some cases you can and should cite. Just look up the software homepage/documentation. Many even give instructions on how to cite (for example the Caffe library under "Citing Caffe"). Sometimes there are papers describing the software that can also often be found on the homepage, see TensorFlow for example. Sometimes even a mix of the approaches can be found, see AMBER as pointed out by @dendodge. They provide instructions on how to cite and provide papers you can cite if you used specific parts of the software.

I would consider it normal to at least mention the software and (software-)libraries/packages you used somewhere in the text, maybe even the aknowledgements. If you think it was somehow important to your work you can and should cite.

As @mhwombat points out it is also a good idea to always include the specific version/buildnumber/revision of the software used so people are able to reproduce your results if the implementation of specific methods was replaced or bugs that influenced calculations were fixed.

4
  • 3
    I'd say that very much depends on the nature of the software. There's a lot of scientific software that's been thoroughly described in associated papers or explicitly tells you how to cite it. (See, for example, the AMBER homepage, or try typing citation() into R.) In those cases, the citation acknowledges the work of the contributors, and also unambigiously describes the methods used. This is a good thing. Commented May 9, 2017 at 15:30
  • Yes, you are totally right. I haven´t thought about that. I will edit the answer.
    – asquared
    Commented May 9, 2017 at 15:42
  • 1
    Also, if you're presenting results that might depend on the version number of the software, you'll definitely want to include that information.
    – mhwombat
    Commented May 9, 2017 at 15:56
  • @mhwombat This is a nice additional tip. I will add it.
    – asquared
    Commented May 9, 2017 at 15:59
3

Do I need to cite Mathematica in my paper?

No. You don't cite your screwdriver or your mechanical pencil, even if you couldn't have done your work without them. You don't cite the night custodian or your spouse, even if you couldn't have done your work without them.

If the validity of your work depends completely on untested assumptions about the correctness of Mathematica, then you have a serious problem, and that problem exists regardless of whether you state in your paper that you used Mathematica. This is why we use a variety of methods to test our work, and we need to do so regardless of whether our work is done using Mathematica, a cell phone, a slide rule, a table of logarithms, or a stick with which we scratch diagrams in the sand. You test your Mathematica code by running it on simple test cases, or by reproducing the results of other people's calculations, or by reproducing the results of experiments, or by doing consistency and sanity checks on its output.

1
  • 4
    It's often really handy to know what type and size screw driver was used for something...
    – Fomite
    Commented Sep 8, 2018 at 0:37
1

It may depend on the norms in your field. For example, in mine it is quite commonplace to cite the software used to obtain results, including if you're using a specific library in something like R or Python. For example:

All analysis was done using SAS 9.2 (SAS Institute, Cary, NC).

This is often helpful as even if you're using a canned package, defaults and the like may be different. It's also a useful guide for people as to whether or not to get in contact with you to ask about your code - if they'd like to see it, but they don't have a license for Mathematica/MATLAB/SAS what's really the point?

Now is it necessary? Likely depends on the journal, but usually no.

1

Whether you should cite data analysis software depends on the norms of your field.

In psychology (APA style in particular), the general rule is to only cite data analysis software for highly specialised data analyses where the particular software implementation may be particularly relevant.

So, for example, if you are just doing correlations, descriptives statistics, and linear regressions, then you would typically not cite SPSS, Mathematica, R, SAS, etc. However, if you were doing multilevel modelling or structural equation modelling, you would often cite the particular package that you are using.

Citing software also allows you to indicate the version number.

A desire to give recognition for academics who develop open source software can also inform who you cite. Citations are a form of currency in academia, so if a particular open source package has been useful and important in your work, then it can be respectful to cite the package.

Furthermore, in many fields, it wont be wrong to cite generic data analysis software. It will just look a little unnecessary.

Equally, another option is to state the software used without a formal citation.

-1

No, you don't need to cite the software generating your plots. As you stated, your results do not depend on any calculation performed by this software nor would it help others to reproduce your result if they know you used the software for its plots. This would be different if you rely on some software extracting lab data or specific simulation tool. But even then, it is more important to name the used method, less the used software.

Cite as many software as necessary and as few as possible.

-2

Wolfram Mathematica is a proprietary software, that means the publisher (i.g. Wolfram Research Inc.) retains intellectual property rights and you should cite it. You can check this page how to do it properly.

Beyond the law point of view, listing specification of software may help other people to easier reproduce your results in some cases.

1
  • 1
    I don't see how intellectual property rights are related in any way to the need for citations. OP is not including parts of Mathematica - the software itself - in the paper.
    – user9646
    Commented Sep 8, 2018 at 14:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .