Skip to main content

Copyrighting Algorithms



Each morning, as soon as I arrive in front of my computer, I generally spend a couple of minutes browsing articles of the day on arxiv.org, in particular in the "Numerical Analysis" section (and sometimes on Computational Physic, but that's when I'm in tramping mode). This systematically browsing might look a bit fastidious, but I like to have an large overview of the newest developpements.

In that topic I came across an article named "General Complex Polynomial Root Solver and Its Further Optimization for Binary Microlenses" which has a very interesting appendix (B, page 20) about the utility of patenting algorithms, in particular the discussion stands on the classical book "Numerical Recipes". In fact the author happened to write this article because they needed a different method to compute roots of complex polynomials than the one proposed in the NR book, because of copyright violation. So in some sense, they argue that "copyright and patent law are stimulating intellectual innovation".

But they point out a more general problem about the reluctance of researchers to release publicly their research code, in particular for Intellectual Property concerns which poses an other problem: reproduciability of [numerical] experiments, which is at heart of the scientific method. I thought that was interesting, so I decided to have a post on that topic.

Moreover, the cite the four page article "Practices in Code Discoverability". The title says it all.

Comments

Popular posts from this blog

Shear waves, medecine and brain

Yesterday evening, too bored by what TV was proposing to me, I decided to watch a conference of Mathias Fink , a french researcher working on multidisciplinary application of waves. Specially shear waves.  Here is a brief summary of his talk. In solids, waves have two principal components:  compression waves (P-waves for primary) moving in the direction of propagation, and shear waves (S-waves, for secondary) that make ripples in the plane orthogonal to that direction. Since compression waves propagate in the direction of propagation, they move faster than shear waves. Usually ultrasound equipment in medicine only use compressional waves. But since human tissues have a high bulk modulus, the P-wave speed is relatively constant (around 1580 m/s). Human tissues are very stiff if you apply isotropic constraints on them (like pressure of water). However M. Fink and his colleagues proposed a new way to investigate human tissues by first sending a strong compressional wave in ...

Hypnothic patterns of integrer decomposition

http://www.datapointed.net/visualizations/math/factorization/animated-diagrams/

MultiThreading and Direct Solvers

The next step towards an efficient Hybrid Solver is to optimize the computation of the Schur complement on each subdomain. Actually this part of the algorithm is the slowest, and it can be very slow. First of all the reordering is special, since the degrees of freedom on the interior must be numbered first. I use the CAMD ordering by Tim Davis and al., that provide satisfaying enough orderings. After that, I am concentrating on the code that computes the Schur complement. There is much work to do here. At the begining I was thinking about using MUMPS for this, since it has a subroutine for Schur complement computation and it is multithreaded. By googling around I found there is may be a (slightly) better solution, that would be to implement a sparse Cholesky solver based on the Direct Acyclic Graph (DAG) of the tasks. The computational tasks and their dependencies are expressed as an acyclic graph which is used to organize the thread hierachy to compute the Cholesky decompositio...