Hence I decided writing my own program to do the job. For the moment, it may probably crash at any time, and seriously lack essential features, but it satisfies my daily purposes, which are:

- have a quick overview of the articles I have on my computer
- have a way of opening them without having to know where it is
- in case it is not stored on my computer, open a suitable URL without having to search through MathSciNet

The result is called Mathkaba, and is hosted on GitHub. For the moment, it works by reading metadata which is not stored in a database as usual (I hate databases), but in plain text files along with the PDF files, which should have the same syntax as the ASCII output of ZentralBlatt. MathSciNet can also output entries in the endNote format, which seems equally interesting. Any comments are welcome.

]]>Next you need a cross-compiler: it’s just a compiler, except that instead of creating executable files you could run, it creates executables in another format (e.g. Win32 `.exe`

files). But since Windows is very different from GNU/Linux, some code or one of its dependencies has to use Windows-specific functions: so you need source headers, and maybe additional libraries.

MinGW aims at providing all of this: a compiler, a linker and other necessary utilies, headers and libraries for Windows basic functions… Standard distributions include a package for installing MinGW. Mine is ArchLinux, and the needed package is `mingw32-gcc`

. If you are using `autoconf`

, there is then an easy way of using the cross-compilation tools instead of the traditinoal ones.

Suppose the name of the cross-compiler is `i486-mingw32-gcc`

, as it is the case with ArchLinux: then the option `--host=i486-mingw32`

will tell the configure script to use i486-mingw32-xxx programs instead of xxx. It allows installing all GTK libraries as DLLs, and compiling a GTK program as a .exe binary. I have not yet tested the resulting file on a real Windows system, but it works under Wine.

When testing with Wine, you need to make the needed DLLs accessible: this can either be done using the `drive_c`

directory tree which holds programs installed under Wine, or by including in the PATH variable the folder containing the binaries and DLLs compiled by MinGW, for example `/usr/i486-mingw32/bin`

(this should be done in `$HOME/.wine/system.reg`

, using Wine conventions for path names).

`gtk_show_uri`

to open files using default programs: on the computer I am using at work, this results in opening Acrobat Reader over an XDMCP connection, which is really distasteful. Even using GNOME’s control center, there does not seem to be a way to change that. What should I look at?There does not seem to be an official XDG standard for defining preferred applications, but standard environments (in my case, the culprit is the GIO library) use the following mechanism: look for a

`mimeapps.list`

file in the XDG directories. It should contain user preferences, for example

~/.local/share/applications/mimeapps.list:

[Added Associations]

application/pdf=xpdf.desktop

[Removed Associations]

application/pdf=AdobeReader.desktop

It specifies preferred or unpreferred applications to be used with a given MIME type. The (system) default choices are stored in a `defaults.list`

file, which can be found at `/usr/share/applications/defaults.list`

for example.

Thus, goodbye bloated Acrobat Reader.

]]>Instead, I talked about the perhaps less known appearances of elliptic functions as solutions of classical ODEs (even if I don’t really know much about these myself). The simplest mechanical system whose motion is governed by an elliptic curve is the pendulum: the reason for this is that the ODE which classically describes the time evolution of the angle of the pendulum is best rewritten in terms of the altitude of the pendulum: the law of energy conservation is then written as

where 0 and *2l* are the extremal values of the altitude , is the highest altitude which can be reached with a given energy (even if , which corresponds to the pendulum make full rotations around its axis), and is the vertical momentum of the pendulum.

In this setting, there are classical Hamilton relations , , so the differential form turns out to be the canonical non-vanishing abelian differential on the elliptic curve. This explains why the period of the pendulum is an elliptic integral, which can be calculed by an arithmetic-geometric mean, and why the position of the pendulum at can be deduced from its position at times and by the classical secant-tangent law.

The notes for the talk (in French) are available here.

]]>Given four factors, there are exactly five ways of multiplying them using a binary operation: by moving parentheses according to the associativity rule, you go through five different trees in a cyclic way. This is known as MacLane’s pentagon coherence rule, which states that in not too weak notions of monoid, checking coherence for pentagon diagrams ensures that the definition of the product is well-behaved.

This associahedron can also be used to define -algebras: such an algebra is a differential graded vector space (or abelian group), with a binary multiplication, and ternary operation whose boundary is the difference between and . Trees of operations containing a ternary vertex are represented in the associahedron are edges (there are 21 of them) between the corresponding binary trees. There is also a quaternary operation whose boundary is the sum of the five operations represented by the edges of the associated pentagonal diagram, and a quinary operation whose boundary is the sum of trees containing either a quaternary vertex (representing by 6 pentagons) or two ternary vertices (represented by 3 squares).

Associahedra exist in all dimensions, they have vertices corresponding to the Catalan number of possible binary trees. In low dimensions, they look like a point, an interval, a pentagon, and the cardboard associahedron. Composition of trees defines an operad structure on the associahedra (maybe a cellular operad, or a topological operad).

The whole theory of -algebras is encoded by a differential graded operad, which is the chain complex of the operad of associahedra. It was used by Stasheff to define homotopy-associative monoids (thus the associahedra are also called Stasheff polytopes).

]]>If you draw 5-coloured stars on all facets, by choosing smartly the colours, you can get five coloured cubes whose vertices are vertices of the dodecahedron. This trick can be used to show that the symmetry group of the dodecahedron is the alternate symmetric group : it replaces a star by a star with a different arrangement of colours.

Since there are 12 facets and 5 ways of rotating each of them, 60 colourings can be seen by rotating the dodecahedron by direct isometries. However, it is NOT true that you can see the 120 possible colourings by allowing also reflections (the full isometry group of the dodecahedron is the symmetric group on five colours). An easy reason for this is that the colouring is invariant under symmetry through the central point (which is a determinant -1 transformation). You can also argue that reflections act as double transpositions of the colours of a star.

People also talk about five tetrahedra in a isocahedron, which can also be obtained in the dodecahedron by choosing a tetrahedron in each cube in a consistent way. The tetrahedra have faithful action of the isometry group: there are two sets of five tetrahedron, which are exchanged under signature -1 transformations, and even permutations of the tetrahedra correspond to direct isometries.

]]>A testcase :

`import Data.Polynomial`

import Data.Ring

import Algebra.GroebnerBasis

import Algebra.Elimination

type R = Polynom QQ VarXYZ

[x,y,z,t,u,v] = map returnp [X,Y,Z,T,U,V] :: [R]

-- projection from a point on the intersection of quadrics

main = do

print $ step_eliminate [T] $ MakeIdeal

[x^2 - 3*y*z + z*t + 2*x*t,

z^2 + 5*y^2 + z*x - 2*t*z]

The output should be :

`[x*y^2+2/5*x^2*z+1/2*y^2*z+3/10*x*z^2+-3/5*y*z^2+1/10*z^3]`

The projective space is the simplest example of an algebro-geometric object which cannot be described by the prime spectrum or the functor of points of a ring. For example, there is no obvious ring whose ideals describe varieties in projective space, which come from *homogeneous* equations. We would like to give a correct definition of gluing affine lines (with coordinates and ) to define the projective line as the gluing of with given by . For functors of points, the latest article by Alain Connes and Caterina Consani, gives a definition. For prime spectra, one has to be aware that gluing only topological spaces do not give meaningful information on algebraic properties. This is illustrated by the case of differentiable manifolds, which are not the same as topological manifolds: gluing differentiable manifolds has to induce a correspondance between differentiable functions (this is equivalent to the requirement that gluing maps between charts be differentiable).

An elegant way of making the answers clear is to consider prime spectra to have not only a ring of functions (equations of subvarieties), but a *sheaf* of functions. For example, given an open set which is the complement of , the functions on this domain are defined to be fractions of the form . This ring of fractions is called the localised ring of along . The correct notion of gluing schemes is then the gluing of affine schemes (affine charts) along open subschemes with isomorphic sheaves of functions (this is Grothendieck’s definition of schemes in EGA1). This gives a consistent way of defining subschemes in a general scheme: this is the data of ideals of equations in each affine piece of the scheme, which define the same subscheme on intersections of charts. Another interesting property of affine schemes is the fact that a natural class of sheaves (quasi-coherent sheaves) has no cohomology for the Zariski topology: affine covers can be used to compute cohomology. The relevance of cohomology of coherent sheaves in the Zariski topology is not really trivial: it is especially interesting for projective varieties, where it coincides with cohomology of holomorphic sheaves, and allows to compute the dimension of linear systems. The Zariski topology also allows to define the algebraic de Rham cohomology, which is the same as ordinary de Rham cohomology for complex projective varieties.

This definition of prime spectra and gluing schemes is not restrictive, and there is no reason not to consider a scheme , or a scheme , which is topologically equivalent to . Such a non-reduced ring is useful to model finite Taylor expansions of functions, and has its own use when defining tangent spaces, multiplicities of intersections, or finite-order deformations. If I recall correctly, the main reason Grothendieck to look for a definition of schemes which would work with any ring was the will to prove Weil conjectures (but schemes were not enough, since étale cohomology was eventually needed). However, most of the schemes encountered in classical algebraic geometry are *locally of finite type*, which means they are obtained by gluing subschemes of affine spaces (with rational functions as gluing maps).

The availability of gluing gives the *category of schemes* nice properties: it has fibred products (given by taking tensor products of rings), and several coproducts (given by gluing schemes). These properties mirror standard properties of sets: that’s why working with schemes is usually as simple as working with sets (with several annoying complications though).