Skip to content
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

Implement tete-a-tete graphs #22016

Open
sagetrac-pportilla mannequin opened this issue Dec 3, 2016 · 73 comments
Open

Implement tete-a-tete graphs #22016

sagetrac-pportilla mannequin opened this issue Dec 3, 2016 · 73 comments

Comments

@sagetrac-pportilla
Copy link
Mannequin

sagetrac-pportilla mannequin commented Dec 3, 2016

In this ticket we will implement tete-a-tete graphs. These are ribbon graphs together with a metric on its edges satisfying a certain property (the tete-a-tete property). These are an original idea by the mathematician Norbert A'Campo in [A2009]. A tete-a-tete graph encodes the mapping class of an automorphism of a surface with boundary that restricts to the identity to the boundary of this surface and whose mapping class is periodic (when we allow isotopies to rotate the boundary components). Also some ideas were further developed by C. Graf, an student of A'Campo in [G2015]. Also, my current PhD thesis develops other aspects of these graphs.

These are some of the ideas that will be implemented in this ticket:

  • A class of objects called TatGraph (tat stands for tete-a-tete). This includes the notion of relative tat graph, which are a kind of graphs that allow to permute certain boundary components of the thickening of the underlying ribbon graph.
  • Numerous methods for the class above, for instance:
    • Rotation numbers around each boundary component
    • Matrix depicting the action on the first homology group of the ribbon graph with respect to the basis given by RibbonGraph.homology_basis()
    • Global method to find the end of a safewalk of a certain length.
    • Global method that produces examples of tat graphs. In particular it produces all Milnor fibers and monodromies of the Brieskorn-Pham singularities.
    • Orbit graph, this is a ribbon graph that corresponds to the orbit space resulting from taking the quotient of the original underlying ribbon graph by the action the the automorphism induced by the tat property.

[A2009] N. A'Campo, Tete-a-tete graphs and geometry monodromy.

[G2015] C.Graf, Tete-a-tete graphs and periodic automorphisms of surfaces.

CC: @tscrim @sagetrac-tmonteil

Component: geometry

Keywords: tat, ribbon graphs, tete-a-tete, periodic, automorphisms, surfaces, boundary

Author: Pablo Portilla

Branch/Commit: u/pportilla/tat_graph-22016 @ b3fb968

Issue created by migration from https://trac.sagemath.org/ticket/22016

@sagetrac-pportilla sagetrac-pportilla mannequin added this to the sage-7.5 milestone Dec 3, 2016
@sagetrac-pportilla
Copy link
Mannequin Author

sagetrac-pportilla mannequin commented Dec 3, 2016

Changed branch from public/geometry/tat_graphs to u/pportilla/tat_graphs

@sagetrac-pportilla
Copy link
Mannequin Author

sagetrac-pportilla mannequin commented Dec 3, 2016

Changed branch from u/pportilla/tat_graphs to u/pportilla/tat_graph

@sagetrac-pportilla

This comment has been minimized.

@sagetrac-pportilla
Copy link
Mannequin Author

sagetrac-pportilla mannequin commented Dec 3, 2016

Changed author from Pablo Portilla to pportilla

@sagetrac-pportilla sagetrac-pportilla mannequin self-assigned this Dec 3, 2016
@sagetrac-pportilla
Copy link
Mannequin Author

sagetrac-pportilla mannequin commented Dec 3, 2016

comment:5

I just created this ticket from the web interface but I can't checkout on it from the console in my compute by doing "git trac checkout 22016", it returns:

Loading ticket #22016...
Checking out Trac #22016 remote branch u/pportilla/tat_graph -> local branch t/22016/tat_graph...
Traceback (most recent call last):
File "/usr/local/bin/git-trac", line 18, in
cmdline.launch()
File "/usr/local/lib/python2.7/dist-packages/git_trac/cmdline.py", line 215, in launch
app.checkout(args.ticket_or_branch, args.branch_name)
File "/usr/local/lib/python2.7/dist-packages/git_trac/app.py", line 116, in checkout
self._checkout_ticket(int(ticket_or_branch), branch_name)
File "/usr/local/lib/python2.7/dist-packages/git_trac/app.py", line 144, in _checkout_ticket
self.repo.checkout_new_branch(ticket.branch, branch)
File "/usr/local/lib/python2.7/dist-packages/git_trac/git_repository.py", line 136, in checkout_new_branch
self.git.fetch('trac', remote)
File "/usr/local/lib/python2.7/dist-packages/git_trac/git_interface.py", line 341, in meth
return self.execute(git_cmd, *args, **kwds)
File "/usr/local/lib/python2.7/dist-packages/git_trac/git_interface.py", line 328, in execute
popen_stderr=subprocess.PIPE)
File "/usr/local/lib/python2.7/dist-packages/git_trac/git_interface.py", line 263, in _run
raise GitError(result)
git_trac.git_error.GitError: git returned with non-zero exit code (128) when executing "git fetch trac u/pportilla/tat_graph"
STDERR: fatal: Couldn't find remote ref u/pportilla/tat_graph
STDERR: fatal: The remote end hung up unexpectedly

I can, however fetch other tickets like for example 21587. Any ideas?

@sagetrac-pportilla
Copy link
Mannequin Author

sagetrac-pportilla mannequin commented Dec 3, 2016

Changed branch from u/pportilla/tat_graph to u/pportilla/tat_graph-22016

@tscrim
Copy link
Collaborator

tscrim commented Dec 3, 2016

comment:8

Were you able to fix the git trac command issue? If not, have you tried using git directly?

@tscrim
Copy link
Collaborator

tscrim commented Dec 3, 2016

Changed author from pportilla to Pablo Portilla

@sagetrac-pportilla
Copy link
Mannequin Author

sagetrac-pportilla mannequin commented Dec 3, 2016

comment:9

Replying to @tscrim:

Were you able to fix the git trac command issue? If not, have you tried using git directly?

No I haven't been able to solve it and yes, I have also tried "git fetch -v trac u/pportilla/tat_graph-22016 && echo OK" and it returns the same kind of error " fatal: Couldn't find remote ref u/pportilla/tat_graph-22016"

I can checkout other tickets so I don't know what can be the problem.

@tscrim
Copy link
Collaborator

tscrim commented Dec 3, 2016

comment:10

Can you send me the results of git remote -v to my e-mail (tscrimsh at umn * edu, with * = dot)?

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 3, 2016

Commit: 87e3342

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 3, 2016

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

4cd202eSuggested changes commited
72ef663Fixed similar lines and turned them more "pythonic"
f4a419cMerge branch 'u/pportilla/ribbon_graphs' of trac.sagemath.org:sage into public/geometry/ribbon_graphs-21587
6b0f5fcReworking some things with the documentation and internal structures.
4e3b676Added extra test to _find.
0075562Added one method and one function. Both were already included in the next work I will be uploading when this is positively reviewed, but since they refer strictly to ribbon graphs I think that they suit better here.
6f4b8a6Added a missing example.
82b52ebFixed typos and normalized name of method.
b22ef55Merge branch 'public/geometry/ribbon_graphs-21587' of trac.sagemath.org:sage into public/geometry/ribbon_graphs-21587
87e3342Moving the bipartite construction into the RibbonGraph constructor.

@sagetrac-pportilla
Copy link
Mannequin Author

sagetrac-pportilla mannequin commented Dec 3, 2016

comment:12

I just updated the branch with all the commits from #21587 (since it depends on it)

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 3, 2016

Changed commit from 87e3342 to af006ae

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 3, 2016

Branch pushed to git repo; I updated commit sha1. New commits:

af006aeIncluded main file and changes so that I can start trying compilation.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 3, 2016

Changed commit from af006ae to 7d46117

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 3, 2016

Branch pushed to git repo; I updated commit sha1. New commits:

7d46117silly mistake on the lazy imports

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 4, 2016

Changed commit from 7d46117 to 8088978

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 4, 2016

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

809412efixed indentation on docstring
f8339daIncluded main file and changes so that I can start trying compilation.
8088978silly mistake on the lazy imports

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 23, 2017

Branch pushed to git repo; I updated commit sha1. New commits:

6dbbf00Merge branch 't/22016/tat_graph-22016' into develop
ec1b5a2Merge branch 'develop' into t/22016/tat_graph-22016

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 23, 2017

Changed commit from 8088978 to ec1b5a2

@tscrim
Copy link
Collaborator

tscrim commented Jan 24, 2017

comment:17

Is this ready for review?

@tscrim tscrim modified the milestones: sage-7.5, sage-7.6 Jan 24, 2017
@sagetrac-pportilla
Copy link
Mannequin Author

sagetrac-pportilla mannequin commented Jan 24, 2017

comment:18

Replying to @tscrim:

Is this ready for review?

Hi. No, it is not. I have been busy. This is my last PhD year and, as you can imagine, I lack of time. Nevertheless, I will be back on this soon (I hope).

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 18, 2019

Branch pushed to git repo; I updated commit sha1. New commits:

5011758Forgot to run docbuild and produced some errors, now fixed.

@fchapoton
Copy link
Contributor

comment:46

(1) This is not the right way:

while (finish_cycle == False):

should rather be

while not finish_cycle:

(2) idem here

while (len(aux_orbits_rho) > 0):

could be

while aux_orbits_rho:

(3)
This

+    darts = [x for i in range(len(aux_sigma)) for x in aux_sigma[i]]

could be

darts = [x for y in aux_sigma for x in y]

(4)
This

+    for i in range(len(aux_sigma[orb_vertex[0]])):
+        assert tat_graph._metric[aux_sigma[orb_vertex[0]][i]] > epsilon

could be

+    for y in aux_sigma[orb_vertex[0]]:
+        assert tat_graph._metric[y] > epsilon

@tscrim
Copy link
Collaborator

tscrim commented Jan 18, 2019

comment:47

I just want to expand slightly on (1) that there are a few places where you are checking if foo == True:/if foo == False: and all of those should be changed appropriately to ``if foo:/if not foo:`.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 18, 2019

Changed commit from 5011758 to ee1c35b

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 18, 2019

Branch pushed to git repo; I updated commit sha1. New commits:

ee1c35bMore examples, cleaning code in the direction indicated.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 18, 2019

Changed commit from ee1c35b to b3fb968

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 18, 2019

Branch pushed to git repo; I updated commit sha1. New commits:

b3fb968A couple more of changes suggested by tscrim

@fchapoton
Copy link
Contributor

comment:50

This has not been corrected:

while (len(darts) > 0):

@fchapoton
Copy link
Contributor

comment:51

and the branch is now red, meaning some conflicts with the latest develop version of sage

@fchapoton fchapoton modified the milestones: sage-8.6, sage-9.2 May 13, 2020
@mkoeppe mkoeppe modified the milestones: sage-9.2, sage-9.3 Sep 5, 2020
@mkoeppe
Copy link
Member

mkoeppe commented Feb 13, 2021

comment:54

Setting new milestone based on a cursory review of ticket status, priority, and last modification date.

@mkoeppe mkoeppe modified the milestones: sage-9.3, sage-9.4 Feb 13, 2021
@mkoeppe
Copy link
Member

mkoeppe commented Jul 19, 2021

comment:55

Setting a new milestone for this ticket based on a cursory review.

@mkoeppe mkoeppe modified the milestones: sage-9.4, sage-9.5 Jul 19, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.5, sage-9.6 Dec 18, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.6, sage-9.7 Apr 2, 2022
@mkoeppe mkoeppe modified the milestones: sage-9.7, sage-9.8 Sep 19, 2022
@mkoeppe mkoeppe removed this from the sage-9.8 milestone Jan 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants