On Monday, September 5, 2016 at 3:30:53 PM UTC+1, Travis Scrimshaw wrote:

>
>>    - The class KontsevichGraph is a subclass of DiGraph; however, it 
>>    would only ever be used in calculating the Star product of a Poisson 
>>    bracket. Should it live in the new poisson module or in the graphs module?
>>
>> Depends on how long the code is and what you plan to use it for. One safe 
> way is to have its own file/module in src/sage/graphs.
>

The code is currently about 2000 lines including comments. I will leave it 
in src/sage/graphs for now and move it later if needed.

>
>>    - The list of graphs generated by KontsevichGraphList has no 
>>    particularly natural ordering defined on it. It also uses a list of 
>> regular 
>>    graphs (which currently is loaded from an external file). Should both of 
>>    these generators be added to the digraph_generators module?
>>    
>> I'm split. There is no way to parameterize these graphs, correct? This 
> would be the first instance in which we have an iterator/list as output 
> from digraphs.*. However, if they are interesting graphs, then we should 
> expose them.
>
> Also, you should look into making it be an iterator instead of a list, 
> unless you only need the full list
>

The graphs themselves are quite complex and I don't know of any way of 
parameterising them. As I say, they are interesting but only for a very 
small area.

As for making them an iterator: I agree that this would be a nice way of 
doing things. I have spent some time today thinking about it but I have yet 
to come up with an effective way of doing this. At the moment we only 
generate one graph per isomorphism class. These are generated by applying a 
series of operations (such as moving an edge) to "simpler" graphs (either 
2-regular digraphs of Kontsevich graphs of lower degree). However, these 
operations don't guarantee uniqueness up to isomorphism, so we then remove 
any graphs which are isomorphic to ones that have already been generated. 
This procedure doesn't seem to lend itself to producing an iterator as the 
full list of graphs is needed to check isomorphism at the end.

I would also recommend creating a trac ticket, pushing your code to the 
>> trac server, and linking the branch on the ticket so we can take a look at 
>> the code.
>>
>
I will do this soon - there are a few problems with the code I want to get 
fixed first, and then I will go about adding relevant tickets.

Best,
Peter

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to