The ArXiv is a popular pre-print article server for physics, mathematics, and computer science (and other subjects) hosted by Cornell University. It is a fairly common practice for academics to upload a preliminary version of their articles (or other works) to the ArXiv to make them publicly available before they are formally published in a journal. (The process of publication is often lengthy, and many consider it best to make the article available in advance, even though it probably has not yet been peer-reviewed.)
At present, there are around 1.4 million articles hosted on the ArXiv, and more are added every day. (Should you wish to see a visual representation of the articles on the ArXiv, which I assume you do, you should visit paperscape.) In the sub-topics that I watch, there are (approximately) between 4-10 new papers added per day, and these topics are not amongst the most active on the ArXiv. The problem then is to filter the daily uploads to find the papers that are likely to be of interest for me. Luckily, about the same time that I started to think of an automated solution to this problem, I discovered that the ArXiv has some tools that can help with this problem.
Continue reading “The ArXiv and me (Part 1)”
The use of computers in mathematics for long and complex calculations has allowed us to use mathematical tools to model the real world in detail that would have been unimaginable in past decades. In recent years, computational mathematical tools have been used for a huge variety of tasks, from detecting gravitational waves to contactless payment. All of these tasks are computational problems, usually involving very long or complex calculations, but the link between mathematics and computer science is much deeper than as a tool for solving computational problems.
Mathematics and computers share the same basic language, the language of logic, but they also share a philosophy. In object orientated programming, objects are created according to a template called a class. A class outlines the properties and operations that can be performed on the corresponding objects, and can inherit properties from parent classes. This allows the programmer to ensure objects that are similar in some way to share a common collection of properties and operations. This process of abstraction is very powerful and flexible, and is precisely the same as the process of abstraction that has been employed by mathematicians. Continue reading “Abstract Python”