test_that("Skew tableaux", {
ssstx <- all_ssSkewTableaux(c(4, 2, 1), c(2, 1), 3)
expect_length(ssstx, 54L)
checks <- vapply(ssstx, isSkewTableau, logical(1L))
expect_true(all(checks))
dssstx <- lapply(ssstx, dualSkewTableau)
dchecks <- vapply(dssstx, isSkewTableau, logical(1L))
expect_true(all(dchecks))
expect_true(all(vapply(ssstx, isSemistandardSkewTableau, logical(1L))))
})
test_that("Standard skew tableaux", {
ssstx <- all_ssSkewTableaux(c(4, 2, 1), c(2, 1), 4)
standard <- Filter(isStandardSkewTableau, ssstx)
expect_length(standard, 12L)
})
test_that("Comparison all_ssSkewTableaux with skewTableauxWithGivenShapeAndWeight", {
lambda <- c(4, 2, 1); mu <- c(2, 1); n <- 5
ssstx <- all_ssSkewTableaux(lambda, mu, n)
ssstxMatrix <- orderedMatrix(do.call(
rbind,
lapply(ssstx, function(ssst) {
Filter(Negate(is.na), do.call(c, ssst))
})
))
compos <- partitions::compositions(sum(lambda)-sum(mu), n)
ssstx2 <- do.call(
c,
apply(compos, 2L, function(compo) {
skewTableauxWithGivenShapeAndWeight(lambda, mu, compo)
}, simplify = FALSE)
)
ssstxMatrix2 <- orderedMatrix(do.call(
rbind,
lapply(ssstx2, function(ssst) {
Filter(Negate(is.na), do.call(c, ssst))
})
))
expect_true(
all(ssstxMatrix == ssstxMatrix2)
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.