New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
twographs and Seidel switching #18972
Comments
comment:1
Hellooooooo,
Nathann |
comment:2
Replying to @nathanncohen:
why, why... Tutte won't complain from the grave, but, you know, to me this feels like dancing on his tombstone... And I actually happened to know Jaap Seidel; I was a postdoc in Eindhoven, and he (and Jack van Lint, whose name just popped up on your 2-weights code ticket) were still there...
ok, I will fix it.
that's what you write as an 1:30am prototype, you know; thanks for pointing this out :-)
Seidel adj.mat. has interesting spectral properties, and that's why it is there. So it is very useful on its own right.
OK; should there also be something done in src/doc ? Dima |
comment:3
Well, I don't like much that all graphs constructors end with "Graph" but it's like a 'standard' problem. We either change them all, or none of them. And in the case of upper cases for family names, I expect that Sage has many occurrences of that.
I personally don't see the added value with respect to the adjacency matrix. For sure it is not needed as far as the switching method is concerned.
nonono, that's only needed when you create a new file. Nathann |
comment:4
Replying to @nathanncohen:
I just posted a question on sage-devel: perhaps it's only me, and then I'll have to live with this :-)
In a similar vein you can say that Laplacian matrix should not be there, as it is a simple variation of the adjacency matrix, too... It is there because we want to have readable code with readable documentation. It is syntactic sugar, if you wish. Of course you can say that all syntactic sugar is a waste of time and space, but without it you end up with obscure unreadable implementation... |
comment:5
Good idea. I prefer it in small case, but I want it to be somehow consistent.
I would not say that, for there are books written about the laplacian matrix is .... well. More confidential.
The only guy who uses this expression is Nicolas Thierry. If you want me to believe you are just trying to trick me into acting the way you want it, there is no better way.
Obscure? The 4 lines code? Nathann |
comment:6
Replying to @nathanncohen:
There are many papers and book chapters written about Seidel adjacency matrix and Seidel switching. And there are no books written
I don't know what you are talking about: go read https://en.wikipedia.org/wiki/Syntactic_sugar Anyhow, if you are not willing to allow |
comment:7
I had never heard of it before today. Hard to miss the laplacian matrix, though.
It was mostly a joke. I did not expect him to have invented the sentence.
Did you hear me say that I "would not allow it"? For sure I don't like it, but that did not stop me from accepting code that other thought useful. Also, you add long lines of code to an already very very heavy constructor, while you could turn it into an adjacency matrix with a one-liner.. But that would result in possibly misleading error messages. What I said is that I do not see the added value and it is true. I said that the best way to write seydel_switching was to not use this new function. And also that it should be in small case unless a new standard is decided that applies to all of sage. Nathann |
comment:8
Replying to @nathanncohen:
Really? #18785 comment:5 :-)
OK, OK, I just was learning from your approach to ticket writing/abandoning ;-) |
comment:9
You have a talent for turning any conversation into a pointless word battle. But really, I don't think I heard of "Seydel adjacency matrix" before your ticket. And with good reason, it's almost equal to the adjacency matrix...
If you feel a bit of responsibility for that, perhaps you could help me get these tikets through instead of letting this code rot because of unsufferable reviewers. Nathann |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:17
we now can build not yet known to Sage
|
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
|
comment:125
Come on Dima, don't build up on top of this idea. Do you really need to be convinced that "sometimes, we make mistakes"? Never saw one? Never did one? In this case it is even easier. I am 100% sure (did not check) that I did this myself Or that I was the one who reviewed it.
Excellent. Then let us say that I disregard my own authority.
I just did it in my head.
I found it acceptable
Oh, I plan to remove it, no problem there.
Please do. And I will remove the others, unless the thread on Sage-devel indicates that we should keep them instead. Nathann |
comment:126
Replying to @nathanncohen:
An "error" resulting in an improvement of the situation is not an error.
sometimes what you find acceptable pisses many people off, and you are perfectly aware of this :-)
get it approved; e.g. try asking me to review it ;-)
there is at least one more voice of reason, agreeing with me, and none agreeing with you. |
comment:127
I did it myself, and I claim that it was an error. I shouldn't have, and I regret it. That makes it an error, at the very least in the intent.
True, but I would like to have a solution with respect to these things in the global namespace too. We do need a way to define new classes without exporting them to the global namespace. At least that would give us a way to get rid of the 10 000 combinat things exported in the wild: if catalogs change and are made able to gather all kind of classes and not only 'famous constructions', there will be a lot of deprecation ahead. Nathann |
comment:128
Replying to @nathanncohen:
You are not alone, for many scientific discoveries were made this way, by mistake...
well, you have invented it already, with
At the moment on this ticket you pursue the line that the classes must be hidden from the user, and this is totally unreasonable, you admit it yourself. |
comment:129
Let me sum it up:
I just see you bend the truth wherever it can help you.
That's a design decision for sage-devel.
I spent weeks writing code that has to be imported manually. Nobody died.
I am the only reference, when it comes to figure out what I think.
This is not the choice we have to make. The choice it between:
So we are not stuck. If you pick 2, we can have this ticket pass right now and discuss 3 on sage-devel while being able to continue the development of this SRG module. You will easily admit that it does not block us for anything. Nathann |
comment:130
Replying to @nathanncohen:
You somehow see |
comment:131
I am cooking. Give me thirty minutes and I will add a ticket. If I do, will you review it or block it? Don't make me write it only to complain on the ticket afterwards because you don't want it to be done. Nathann |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:133
Helloooo again Dima, Thank you for what you just did. I am not even against the idea of moving all About your branch, I noticed several last things:
AAAAnd then we should be done with this ticket, at long long last.. Nathann |
comment:134
Replying to @nathanncohen:
what is the guideline? 80 chars, less, more?
Removing will cause a doctest failure, hopefully... How does one mix |
comment:135
The "official" rule, if I remember correctly, is to follow "yet another senseless" PEP. If I make no mistake, it is something like 80 characters for the code and 72 characters for the doc (no joke). In Sage it seems that we apply 80 characters everywhere, which is already rather boring to enforce.
Err, right...
In the natural way:
Nathann |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:137
Replying to @sagetrac-git:
I will mess with |
comment:138
No prob, thanks! Nathann P.S.: Please fill in your name in the Author field |
Author: Dima Pasechnik |
Changed branch from u/dimpase/seidelsw to |
Implement twographs and Seidel switching to realise more entries in Brouwer database
Depends on #18960
Depends on #18948
Depends on #18988
Depends on #18991
Depends on #18986
Depends on #19018
Depends on #19019
CC: @nathanncohen
Component: graph theory
Author: Dima Pasechnik
Branch/Commit:
1e8e0b4
Reviewer: Nathann Cohen
Issue created by migration from https://trac.sagemath.org/ticket/18972
The text was updated successfully, but these errors were encountered: