combinat::ribbons – ribbons and tableaux of ribbon shape

The library combinat::ribbons provides functions for counting, generating, and manipulating ribbons and tableaux of ribbon shape. These objects are typed objects.

→ Examples

Superdomain

Dom::BaseDomain

Categories

Cat::CombinatorialClassWith2DBoxedRepresentation

Axioms

Ax::canonicalRep

Related Domains:

combinat::ribbonsTableaux, combinat::skewTableaux

Details:

Entries

"typeFilling"

type for a filling without increasing conditions between cells. Type::ListOf(Type::ListOf(Type::NonNegInt)) .

"typeRibbon"

type for a filling with semi-standard conditions (checked with the isA function).Type::Predicate("Ribbon", dom::isA) .

"typeStandardRibbon"

type for a filling with standard conditions (checked with the isAStandard function).Type::Predicate("StandardRibbon", dom::isAStandard) .

new – creating a new ribbon as a typed object or listing all the standard ribbons of a given shape

combinat::ribbons::new(Type::Union(combinat::compositions, dom::typeFilling ) x)

If the type is a typeFilling, creates the typed object for the corresponding ribbon x and returns its external representation.

If the argument is a shape, returns the list of all standard ribbons of shape x.

isA – test if an object is a tableau of ribbon shape

combinat::ribbons::isA(tableau of ribbon shape ribShapeTab, <composition shp>)

Returns whether ribShapeTab is a tableau of ribbon shape or not.

If the optional argument is present, it returns whether ribShapeTab is a tableau of shape the given ribbon shp or not.

isAStandard – test if an object is a standard tableau of ribbon shape

combinat::ribbons::isAStandard(tableau of ribbon shape ribShapeTab, <composition shp>)

Returns whether ribShapeTab is a standard tableau of ribbon shape or not.

If the optional argument is present, it returns whether ribShapeTab is a standard tableau of shape the ribbon shp or not.

fromShapeAndWord – tableau from its ribbon shape and natural reading

combinat::ribbons::fromShapeAndWord(composition shape, word w)

Returns the filling of the shape whose natural reading is the word w. Please note that the result is not necessarily a tableau of ribbon shape.

list – list of standard tableaux of a given ribbon shape

combinat::ribbons::list(composition shp)

Returns the list of the standard tableaux of shape the ribbon shp. We use the list function of permutation from descents (see combinat::permutations)

count – number of standard tableaux of ribbon shape

combinat::ribbons::count(composition shp)

Returns the number of standard tableaux of ribbon shape shp.

first – first standard tableaux of ribbon shape

combinat::ribbons::first(composition shp)

Returns the smallest standard tableaux of ribbon shape shp.

last – last standard tableaux of ribbon shape

combinat::ribbons::last(composition shp)

Returns the biggest standard tableaux of ribbon shape shp.

toWord – composition from a given tableau of ribbon shape

combinat::ribbons::toWord(tableau of ribbon shape ribTab)

Returns the composition corresponding to a given tableau of ribbon shape.

fromWord – tableau of ribbon shape from a composition

combinat::ribbons::fromWord(composition comp)

Returns the tableau of ribbon shape corresponding to a given composition. This function is the inverse of the previous function.

Example 1:

Ribbons are typed objects, which can be constructed as follows:

   combinat::ribbons([[2, 3], [1, 4]])

+---+---+

| 2 | 3 |

+---+---+---+

    | 1 | 4 |

    +---+---+

 

Example 2:

These are two examples of testing whether an object is a tableau of ribbon shape. In the second one we provide the optional argument shape

    combinat::ribbons::isA([[2, 3], [1, 4]],[2,2]);

    combinat::ribbons::isA([[5, 6], [2, 3], [1,4]], [2, 2])

math

math

These are two examples of standard tableaux of ribbon shape:

    combinat::ribbons::isAStandard([[3,4],[1,2]]);

    combinat::ribbons::isAStandard([[2,4],[2,3]])

math

math

Example 3:

Here is the list of standard tableaux of ribbon shape math:

combinat::ribbons::list([2,2])

-- +---+---+      +---+---+      +---+---+      +---+---+      +---+---+     --

|  | 1 | 3 |      | 1 | 4 |      | 2 | 3 |      | 2 | 4 |      | 3 | 4 |      |

|  +---+---+---+, +---+---+---+, +---+---+---+, +---+---+---+, +---+---+---+  |

|      | 2 | 4 |      | 2 | 3 |      | 1 | 4 |      | 1 | 3 |      | 1 | 2 |  |

--     +---+---+      +---+---+      +---+---+      +---+---+      +---+---+ --

 

There are math standard tableaux of shape the ribbon math:

combinat::ribbons::count([3,2,2])

math

Example 4:

Given a word, we can build the corresponding tableau of ribbon shape: the result is not necessary a standard tableau of ribbon shape, it depends on the provided word.

combinat::ribbons::fromShapeAndWord([2, 3], [2, 5, 6, 1, 67])

+---+---+

| 2 | 5 |

+---+---+---+----+

    | 6 | 1 | 67 |

    +---+---+----+

 

Example 5:

These two functions permit to create a tableau of ribbon shape from a composition and vice versa.

combinat::ribbons::fromWord([1, 3, 2, 4])

+---+---+

| 1 | 3 |

+---+---+---+

    | 2 | 4 |

    +---+---+

 

combinat::ribbons::toWord(combinat::ribbons([[4, 5, 6], [2, 3], [1]]));

math

Changes in MuPAD 3.1

New Function.