Dear Rudi,
Thank you for your suggestions. I'll be tempted also to re-read Bill Tutte's "How to Draw a Graph".
The electrical network approach might well carry over in some sense to matroids.
I am just finishing the uphill road following surgery 2/8 on the bladder/prostate. All is well,
but it will be September before I am back home for a good spell, ready to open my math books
and programs.
Perhaps there's a big-bang approach, starting from all points at centre screen, and searching for
directions and relative degrees of separation for points, or some sense of relative anti-gravity repulsion (vectorial,
that is, directional), either of pipartitions of the set of points, or simply for pairs of points. (Tiong Seng and I did this when
defining "shelling" for isostatic graphs.)
Is that crazy enough for a Saturday morning? (Given that two points not want to sit one upon another,
in which compass direction should they prefer to separate? This being a question of neighbours.)
I haven't yet been able to get my photos together for the blog, but have not forgotten.
with best wishes,
Henry
On 4 May 2013, at 09:53, Rudi Pendavingh <
rudi.pe...@gmail.com> wrote:
> Dear Henry,
>
> You and I briefly discussed the visualization of matroids of higher rank than 4 in Maastricht, last year. One idea was to picture the connectivity properties, e.g the tree that visualizes the 3-separations of the matroid. But this 'advanced connectivity' should first be implemented itself. Also, this can never be the only visualization option, since most matroids will have no low-rank separations.
>
> I agree with Stefan that we should focus on drawing 'projective' pictures of low-rank matroids first.
>
> The graph theory package has a 'show' option, and it is perhaps interesting to see how they decide the placement of vertices. That placement of points (within a 'picture frame') seems to be a tough problem, for both graphs and matroids.
>
> Cheers,
>
> Rudi
>
> On 4 mei 2013, at 00:51, Stefan van Zwam <
stefan...@gmail.com> wrote:
>
>> Dear Henry,
>>
>> I only asked for visualization of the rank-3 matroids. In rank 4 geometric pictures are already insufficient sometimes. However, for some of the fixed rank-4 ones from our catalog (such as the Vámos), we might want to include a standard picture, maybe allowing the labels of the points to be added in dynamically.
>>
>> I'm looking forward to the meeting too! We will discuss this further then.
>>
>> Cheers,
>>
>> Stefan.
>>
>> On 3 mei 2013, at 03:17, Moutons Matheux wrote:
>>
>>> Dear Stefan,
>>>
>>> It is splendid, the rapid progress in bringing the matroid code to this level. Surely the only way to proceed is to start using it.
>>> That's what we do anyway, when writing code. First level errors are all over the place, and rapidly come to light. This has already
>>> been the case. If somewhat later, up comes a counterexample to Rota's conjecture, there will then be a furious and deep verification of the code,
>>> with many enthusiastic participants burning the midnight oil.
>>>
>>> Looking forward to our gathering in June.
>>>
>>> I have never been able to come up with a satisfactory definition of an "screen image" of a matroid of rank higher than four,
>>> though I did struggle to produce one or two in the old book. Perhaps I'll just write some postscript code that will work for low-rank
>>> matroids, and leave it at that. I promised to do this, but have so far made no steps in that direction. Does anyone have
>>> a heuristic for placing points? Or for determining in what sense an image can be "improved" by moving points around?
>>> In writing Postscript code for drawings of matroids, I have always done this by "hand". This usually amounts simply to
>>> minimising the number and degree of distortions of hopefully-straight lines, and to grouping coplanar points so they
>>> can be sensed as polygonal faces of 3-d structural forms.
>>>
>>> On the other hand, I did update to Python 3 my code for studying the Whitney algebra of a matroid,
>>> and in particular, for straightening in that algebra, i.e.: finding integer linear relations among monomials (tensor products
>>> of independent sets, as words, of given shape and content), in particular, those relating an arbitrary such monomial to
>>> a set of "standard" monomials, the earliest such adequate set of monomials, in lexicographic order. Rudi tells me this
>>> must have something to do with Mr Groebner. I would be delighted to include this in the Sage package.
>>>
>>> best wishes,
>>> Henry
>>>
>>> On 02 May 2013, at 20:40, Stefan van Zwam <
stefan...@gmail.com> wrote:
>>>
>>>> Dear Sage developers,
>>>>
>>>> Over the past two years I've been working with several people on bringing Matroid Theory to Sage. We wanted this to be research-level code that will remain relevant for a long time, so we decided to have the design mature for a while before integrating it with Sage. By now we have test-driven the code (it produces output consistent with the theory and with computations carried out by other software for matroid theory), and it is already in use by people in the matroid theory community who install it separately on top of Sage.
>>>>
>>>> The code has now been submitted, see
>>>>
>>>>
http://trac.sagemath.org/sage_trac/ticket/7477
>>>>
>>>> There are about 21,000 lines of code, and 500 functions with docstrings. While it is doable to check that it plays nice with the rest of Sage and follows all coding conventions (I'm sure it does), a full code review sounds like a hard task. So I write you to solicit opinions on how to proceed. Four suggestions have been made on the ticket:
>>>>
>>>> 1) Treat it as if it were an spkg, and accept with only a cursory review
>>>> 2) Try to assemble a team of reviewers, each responsible for part of the code
>>>> 3) Chop it up into separate, smaller pieces and have those submitted as separate tickets
>>>> 4) Get the authors of the package to review each others' code
>>>>
>>>> Options (3) and (4) are not very feasible. The core part of the code has close links all over the place, and I think I can't get it much below 9,000 lines of code without a lot of extra work. It would also mean rewriting all docstrings since we can't use the catalog of matroids for our examples. As for (4), Rudi Pendavingh and I are responsible for the bulk of this code, and each of us has had a hand in pretty much every part of it.
>>>>
>>>> That leaves (1) and (2). I hope to get the other users/developers to review parts of it, but so far I have not heard of any commitments, and I fear it would still take a long time to get it accepted. I'd rather see that time spent building a user base and ironing out any bugs uncovered in actual use.
>>>>
>>>> What do you all think?
>>>>
>>>> Regards,
>>>>
>>>> Stefan.
>>>>
>>>> P.S. The impact on the rest of Sage is the following:
>>>>
>>>> * add a directory sage.matroids
>>>> * lazy_import two items, a function "Matroid" and a package "matroids", on startup
>>>> * add an entry "Matroid theory" to the reference manual.