Open-Source Algebraic Geometry and more in particular the stacks project ------------------------------------------------------------------------ The purpose of this note is to describe an open-source web-based project aimed at producing an ``introductory'' text on algebraic stacks. Namely, I have a somewhat worked out plan about how to set up a collaborative algebraic geometry web site here at Columbia. My idea is to have it very similar to the way software developement is done -- see e.g. the linux kernel web-site www.kernel.org and its associated mailing list archived at: http://www.ussg.iu.edu/hypermail/linux/kernel/ To jump start it, I imagine writing an introductory text on algebraic stacks, putting it on the web-site and then hopefully having graduate students and colleagues contribute ``patches'' correcting and adding to it (for example people could send in TeX-files giving examples of things talked about in the main text and they could be linked in). Part of the idea is that the license for this text and the patches is open (for example the GFDL) and that therefore anybody can in principle take the TeX sources and change it. Hopefully people will and they will then submit their changes to the public mailing list. The maintainer (for the linux kernel this is Torvalds) will decide whether they go in the text or not. This is all preliminary. Also, the text may be more a kind of ``Hartshorne for algebraic stacks'' then an introduction to stacks: Namely, you think of a scheme as an example of an algebraic stack. (So in other words, you technically don't have to know what a scheme is to start reading this thing allthough then it would probably be very difficult to follow.) Technology ---------- Please bear with me as I describe the "technology" a little more, I'll come to the point eventually. Obviously, technology isn't the answer to the problem of writing a good introductory text, and I understand that it is an incredible amount of hard work. On the other hand, the hard work doesn't actually have to be done all by one person or a small group of people. The idea to publish under an open license is to invite people to modify (and hopefully improve) the text. The idea of having a web-site and a mailing list associated to a project is to make it easy for people to download the text and to send in ``patches'' (proposed changes -- these should be submitted under an open license as well). Some of these will be improvements and some of these will be the opposite. As the patches are submitted to a public mailing list, there can be public discussion as to the merit of the patches. Finally, however, it is up to the maintainer to decide what goes in the new version on the web. (I guess there can be multiple maintainers, but I think this won't work as well.) Let's look at some aspects of how mathematics research is done now. Suppose a group of authors post a paper on the preprint server at Xarchiv. In this case, mathematician X can download the TeX file, and can start editing it. However, traditionally this is looked upon as bad manners and the original authors will not appreciate it, even when X sends the authors a clearly improved version of their manuscript (partly due to the ``credit issue'' which I will get back to later). Furthermore, copyright law probably prohibits X from redistributing the modified version of your file in any way. (I'm not sure on the precise details here.) So X is stuck. There are two sides to the credit issue. One is that to get a (good, research) job you need to publish articles in good journals. Simplified it means that you should have a good idea, and have the technical ability to work it out completely. It is usually better if you wrote the paper singlehandedly. On the other hand, very little or no credit is given to people who do a good job at refereeing papers, fixing or pointing out technical difficulties. I believe the publication record, or perhaps I should say the quality of the papers, is usually a good measure of the strength of a mathematician (and not the citation index). Maybe it is simply the definition. Of course, there are cases like Ofer Gabber... On the other hand, imagine a collaborative web-based project like I have been trying to describe (badly, I'm afraid). There it would be easy for the maintainer and others closely related to the project to say whose contributions had a real impact on the development. These contributions could range from hard work fixing up mistakes etc to brilliant new ideas. Initially (and maybe long term) this won't be a good way to do cutting edge research, partly because of the ``credit issues'' alluded to above. This is why I thought of starting with a project on an introductory text on algebraic stacks. So what I am trying to say is that next to the usual research publications in Journals and on the preprint servers, we can have large scale collaborative projects where credit gets distributed just a little differently, and where everybody is invited to try and contribute. Oh, well... I'm just going to try! Mathematics, briefly -------------------- Briefly about math. My initial ideas for writing a text are that it will prove all lemmas, propositions, theorems from scratch modulo some set theory, commutative algebra, sheaf theory, and perhaps alluding to some key results that have a clear exposition in the liturature (e.g., Popescu's result on general N\'eron approximation which is explained in an expository paper by Swan that I have lectured about). To keep things from growing out of bounds I will need a ``reasonable level of generality'' now and then. For example one could impose Noetherian hypotheses and/or finite type assumptions in the proof of certain key facts if this leads to significant simplifications (as in Hartshorne). This does mean the end result is not an EGA/SGA for stacks. More Comments ------------- The maintainer should have a clear idea about what to aim for. Also, the initial submission -- the starting point -- should be large enough so that it is somewhat clear from reading it what the philosophy/goals are of the project. There can also be a manifest explaining the aim of the project if that is desired. > It seems very likely to me, that if I submit a chapter or two, the next > one to work on it will think that is a completely dumb way to approach > the subject, and will rewrite it in a way according to his philosophy. Or her philosophy:) More seriously, there are several ways to deal with in the setup that I have in mind. The first is that apart from the main text that describes the main line of the buildup of the material there can be auxiliary texts (hyper)linked to it. Thus for example, a complete rewrite of a chapter or proof could be linked to from the main text as an alternative description of the mathematics. It is up to the maintainer to decide whether it is valuable to do this, and it won't work if somebody started a complete rewrite of the project. The second solution is to clone the project, in effect starting a new one. Of course, since the source files are published under an open license (and I will keep coming back to this) ANYBODY can do this. Looking at the Linux kernel development you see that it doesn't happen. The reason for this is simply I think that www.kernel.org is the place where it all happens and it is where up-and-coming programmers who want to contribute look for advice and inspiration etc. Now, still using the Linux kernel development as an example, in some sense there has been a ``branch'' split of from the official sources, which is run from the web-site www.kernel.org. Namely, Andrew Morton maintains the so-called mm sources, where more experimental development takes place. (It is true that the results of this development, if usefull, end up in Torvalds kernel later, but that is perhaps besides the point here.) This possibility really makes sense to me also in mathematics. Suppose you are maintaining a branch of the project that does things the way we touched upon in our correspondence sofar. Now suppose that Brian and others start submitting lot's of material that aims at turing the manuscript into an EGA for stacks. You are not going to accept all of this material into your project. Probably one of the things you have to do in this situation is to explain on the mailing list why you are not incorporating those changes, i.e., explain your philosophy once again. Also, and I should have mentioned this before, since the ``patches'' are submitted under an open license as well you can edit them to suit your needs and then apply them. This is completely appropriate and should not be frowned upon, or the thing won't work! (As for credit: all submissions are to the mailing list, and a complete archive of the mailing list is kept. Again: earning credit works differently in this model.) Still, if on the mailing list people keep clamoring for an ``EGA-for-stacks'' version then we clone the project and make one of those clamoring (or some likeminded person) the maintainer. So, I think the philosophy, the basic idea for writing the text is very important, and somebody has to make sure the project doesn't deviate from it. Another thing that helps the maintainer decide what goes in, is to ask for small patches. Suppose somebody submits a patch that affects many places (or files) in the document (or project) and changes many mathematical arguments. The maintainer just immediately mails back and asks the person to split it into several patches. Each small patch should make sense all by itself. (Usually patches are ordered because applying them isn't commutative.) Of course, I understand that there are mathematical interdependencies, etc and it may not always be possible to split a change into several small ones, but I think often you actually can do this. There is a bit of technology that goes into mailing only the change to the e-mail list and not the whole revised document, but I can explain that later. There are also programs that can help you view the differences between versions. > In short, my reaction, the more I think about it, is this: > Johan's idea is great, but he couldn't have picked a worse topic to > try to do it with! Yes and no. Yes, people have different points of view as to how to write the material. But I think I explained above how it could be dealt with. The reason that it is the right topic to start with, is that there is a strong need for a text such as you have in mind and that many people would be interested in contributing (selflessly). > Do you think it is conceivable that one could set out the goals and ground > rules so clearly that there would be some clear sense of direction? That > would seem to be required to have any chance at all. Again, it is up to the maintainer to give direction to the project. As you say this is absolutely essential. More Technical stuff -------------------- OK, I have started writing some TeX files and documentation as a kind of proof of concept. My suggestion, and this is only a suggestion for putting it on the web, would be that the chapters and even sections and or subsections go in different tex files that are processed (latexed+bibtexed) all by themselves (so they can also have their own preample and style files if necessary). To make links to Theorems etc between files there are some latex packages which can be used to make references and links between the dvi and pdf files. So what does this mean when you are reading the ``web-book''. Well, you navigate to the web-site and there is some web-page there with a contents pointing to the dvi/pdf/ps files of the chapters or sections or appendices etc. You click on one of these and you start reading the chapter. If in this chapter there is a references to a theorem from another chapter then you click on it and your browser opens the other dvi/pdf/ps file at the place of the theorem. I suggest we also have a running head with a link to the source file in the pdf file. Very Very Rudimentary Example (really a proof of concept) of what it will look like: Start at http://www.math.columbia.edu/algebraic_geometry/stacks-0.1/stacks.html Example: Open sites.pdf and click on the link in Lemma 3.1.1 which should automatically open conventions.pdf at Lemma 3.1.1. Technical problems with this so far: -- You need ACROBAT READER + its plugin into your browser (freely available for both windows and linux) for the links between pdf files to work. (I can't get my xpdf viewer to do it yet.) If you are on a windows computer this won't be a problem. -- Links between dvi files don't seem to work yet. -- Links in ps-files don't seem to work yet. Also, take a look at http://www.math.columbia.edu/algebraic_geometry/ for this document and some procedural stuff in the file Manifesto. Any help writing this stuff is appreciated. Wikipedia --------- > On Wikipedia anyone can edit anything at any time, yet the results seem > to be surprisingly good. Contrary to what one might expect. Actually, I've gone and visited a number of these Wiki pages and most of them are not mathematically speaking very good at all (just my opinion). Wikipedia is fine but it basically just lists definitions which is not really what I am after. But, note that if click edit in Wikipedia then it says: "You're encouraged to create, expand, and improve upon articles; however, bad edits to articles are watched for and will be quickly removed." So, actually it is moderated! There is also the point that the next editor may change completely the idea of the previous one in effect completely rewriting the page/article. If your idea is to prove and build up completely the material from some welldefined set of intial mathematics, then I think you need a maintainer. Still ANYBODY can suggest changes in my model since anybody can e-mail to the mailing list. Also, ANYBODY can start there own version of the project, as I explained before. I believe this is open enough. Here is one more property of the open-source development scheme that I have in mind. It is that the project is never finished. There is no need to say this is it. Of course after a while a pretty much complete proof of Theorem X is written and you don't need to change it. But, for example in the stacks case, future developments in the theory may become candidates to be added to the manuscript as new chapters (e.g. such as the recent work of Martin Olsson) and they might require small changes earlier in the document. Also some specific theorem might be improved upon and this may be something you want to put in. You can add examples (in additional files, not necessarily in the main text). Etc, etc.