Returns a ribbon tableau object.
A ribbon is a skew tableau that does not contain a 2x2 box. A ribbon is given by a list of the rows from top to bottom.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]])
[[2, 3], [1, 4, 5]]
sage: Ribbon([[2,3],[1,4,5]]).to_skew_tableau()
[[None, None, 2, 3], [1, 4, 5]]
Bases: sage.combinat.combinat.CombinatorialObject
Returns the evaluation of the word from ribbon.
EXAMPLES:
sage: Ribbon([[1,2],[3,4]]).evaluation()
[1, 1, 1, 1]
Returns the height of the ribbon.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]]).height()
2
Returns True is the ribbon is standard and False otherwise. ribbon are standard if they are filled with the numbers 1...size and they are increasing along both rows and columns.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]]).is_standard()
True
sage: Ribbon([[2,2],[1,4,5]]).is_standard()
False
sage: Ribbon([[4,5],[1,2,3]]).is_standard()
False
Returns the ribbon shape. The ribbon shape is given just by the number of cells in each row.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]]).ribbon_shape()
[2, 3]
Returns the skew partition corresponding to the shape of the ribbon.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]]).shape()
[[4, 3], [2]]
Returns the size ( number of cells ) in the ribbon.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]]).size()
5
Returns the spin of self.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]]).spin()
1/2
Returns the permutation corresponding to the ribbon tableau.
EXAMPLES:
sage: r = Ribbon([[1], [2,3], [4, 5, 6]])
sage: r.to_permutation()
[4, 5, 6, 2, 3, 1]
Returns the skew tableau corresponding to the ribbon tableau.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]]).to_skew_tableau()
[[None, None, 2, 3], [1, 4, 5]]
An alias for Ribbon.to_word_by_row().
EXAMPLES:
sage: Ribbon([[1],[2,3]]).to_word_by_row()
word: 231
sage: Ribbon([[2, 4], [3], [1]]).to_word_by_row()
word: 1324
Returns the word obtained from a column reading of the ribbon
EXAMPLES:
sage: Ribbon([[1],[2,3]]).to_word_by_column()
word: 132
sage: Ribbon([[2, 4], [3], [1]]).to_word_by_column()
word: 4231
Returns a word obtained from a row reading of the ribbon.
EXAMPLES:
sage: Ribbon([[1],[2,3]]).to_word_by_row()
word: 231
sage: Ribbon([[2, 4], [3], [1]]).to_word_by_row()
word: 1324
Returns the width of the ribbon.
EXAMPLES:
sage: Ribbon([[2,3],[1,4,5]]).width()
4
Returns the combinatorial class of standard ribbon tableaux of shape shape.
EXAMPLES:
sage: StandardRibbons([2,2])
Standard ribbon tableaux of shape [2, 2]
sage: StandardRibbons([2,2]).first()
[[2, 4], [1, 3]]
sage: StandardRibbons([2,2]).last()
[[1, 2], [3, 4]]
sage: StandardRibbons([2,2]).cardinality()
5
sage: StandardRibbons([2,2]).list()
[[[2, 4], [1, 3]],
[[2, 3], [1, 4]],
[[1, 4], [2, 3]],
[[1, 3], [2, 4]],
[[1, 2], [3, 4]]]
sage: StandardRibbons([3,2,2]).cardinality()
155
Bases: sage.combinat.combinat.CombinatorialClass
Returns the first standard ribbon of ribbon shape shape.
EXAMPLES:
sage: StandardRibbons([2,2]).first()
[[2, 4], [1, 3]]
Returns the first standard ribbon of ribbon shape shape.
EXAMPLES:
sage: StandardRibbons([2,2]).last()
[[1, 2], [3, 4]]
Returns a standard ribbon of size len(p) from a Permutation p. The lengths of each row are given by the distance between the descents of the permutation p.
EXAMPLES:
sage: import sage.combinat.ribbon as ribbon
sage: [ribbon.from_permutation(p) for p in Permutations(3)]
[[[1, 2, 3]], [[2], [1, 3]], [[1, 3], [2]], [[1], [2, 3]], [[1, 2], [3]], [[1], [2], [3]]]
Returns the ribbon corresponding to the given ribbon shape and word.
EXAMPLES:
sage: import sage.combinat.ribbon as ribbon
sage: ribbon.from_shape_and_word([2,3],[1,2,3,4,5])
[[1, 2], [3, 4, 5]]