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
Triconnectivity linear time algorithm #25598
Comments
comment:1
I have added the basic class structure of the Triconnectivity module. As discussed, we will first code it in Python and then convert to Cython. Harsh and I will together add functions to the module. |
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:7
For the function
Irrespective of the order of source and target given in the parameter of Hence, as of now, I have stored an additional dictionary named I don't think this is the best method. I am still looking for other methods. Please advice if SageMath has some feature which can be used here. Also, the function |
comment:8
Using dictionary here is a good option. Another solution could be to use a directed graph. I'll let you know if I think about a better solution. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:10
Instead of using the |
comment:11
Just a few comments on coding style
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:13
I have made the changes. We will follow the same style from now on. |
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:141
Excellent ! Thank you. We no longer need to count the number of vertices per components, so I removed that part. I did several tests and for me every thing is going well now. If you also agree, I will finally set this ticket to positive review. It was quite a lot of work. |
comment:142
Yes, I think we can set the ticket to positive review. |
comment:143
This ticket was a big piece of work and you did a great job. Thanks to both of you. |
comment:144
Author name... |
Author: Meghana M. Reddy, Sai Harsh Tondomker, David Coudert |
comment:146
hey, ladies and gentlemen ! coverage is supposed to be 100%
|
comment:147
perhaps a follow-up ticket to address testing? |
comment:148
We implement a big algorithm that is split into sub methods. I don't know how to add doctests that are meaningful for the sub methods. Any suggestion is more than welcome. But for sure I plan to continue working on it (remove recursions, cythonise what I can, etc.). |
Changed branch from public/graphs/triconnectivity to |
Changed commit from |
Changed author from Meghana M. Reddy, Sai Harsh Tondomker, David Coudert to Meghana M Reddy, Sai Harsh Tondomker, David Coudert |
comment:151
This is certainly something technical but I'll be happy to know (learn) what's going on. Thanks. |
comment:152
This should be re-targeted for 8.5. |
Addition of the linear time algorithm for building triconnected components of a biconnected graph. This is a huge algorithm and we will be coding it one function at a time.
Depends on #22157
CC: @dcoudert @dimpase @sagetrac-saiharsh
Component: graph theory
Keywords: connectivity, decomposition, gsoc2018
Author: Meghana M Reddy, Sai Harsh Tondomker, David Coudert
Branch:
65f2da3
Reviewer: David Coudert, Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/25598
The text was updated successfully, but these errors were encountered: