Skip to content

pickle the paths of Rauzy diagrams #8388

@videlec

Description

@videlec

There is a pickle error with the nested class RauzyDiagram.Path in sage.combinat.iet.template

sage: p = iet.Permutation('a b c','c b a')
sage: r = p.rauzy_diagram()
sage: g = r.path(p, 't', 'b')
sage: dumps(g)
PicklingError Traceback(most recent call last)
...
PicklingError: Can't pickle <class 'sage.combinat.iet.labelled.Path'>: attribute lookup sage.combinat.iet.labelled.Path failed

A __metaclass__ must be defined for RauzyDiagram.

The ticket depends on #8386 which moves the module for interval exchange transformations from sage.combinat.iet to sage.dynamics.interval_exchanges

Apply only attachment: trac_8388_pickling_path.v2.patch

Depends on #8386

CC: @sagetrac-sage-combinat @sagetrac-tmonteil

Component: combinatorics

Keywords: pickle, nested class

Author: Vincent Delecroix

Reviewer: Frédéric Chapoton, Nathann Cohen

Merged: sage-5.13.beta0

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions