Title: | Isomorphism Check for Multi-Stage Factorial Designs with Randomization Restrictions |
---|---|
Description: | Contains functions to check the isomorphism of multi-stage factorial designs with randomisation restrictions based on balanced spreads and balanced covering stars of PG(n-1,2) as described in Spencer, Ranjan and Mendivil (2019) <doi:10.1007/s42519-019-0064-5>. |
Authors: | Neil Spencer [aut, cre], Pritam Ranjan [aut,cre], Franklin Mendivil [ctb] |
Maintainer: | Pritam Ranjan <[email protected]> |
License: | GPL-2 |
Version: | 0.1.0 |
Built: | 2024-11-20 06:25:17 UTC |
Source: | CRAN |
This function relabels a balanced (t-1)-spread or a covering star of
PG(n-1,2)
according to the specified collineation matrix.
applyCollineation(C, spr)
applyCollineation(C, spr)
C |
A binary n by n matrix representing a collineation of |
spr |
A balanced spread or star of |
This code applies the relabelling corresponding to a collineation matrix C to any given balanced spread or star of PG(n-1, 2). The spread should be formatted as a 3-dimensional array with spr[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of spr
. The collineation is applied via a matrix multiplication modulo 2 (i.e., the calculations are done over GF(2)). See Spencer et al. (2019) for details.
A spread or star of the same dimensions as spr.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
## Example 1: relabelling a 1-spread of PG(3,2) data(spreadn4t2a) Collin <- cbind(c(1,0,0,1), c(0,0,1,1), c(1,1,1,1), c(0,1,1,1)) # Collin is the collineation matrix corresponding to # A -> AD, B -> CD, C -> ABCD, D -> BCD applyCollineation(Collin, spreadn4t2a) ## Example 2: Relabelling a star of PG(4,2) consisting of 4-flats. data(starn5t3a) Collin2 <- cbind(c(0,0,0,0,1), c(1,0,0,0,0), c(0,1,0,0,0), c(0,0,0,1,0), c(0,0,1,0,0)) # Collin2 is the collineation matrix corresponding to # A -> E, B -> A, C -> B, D -> D, E -> C applyCollineation(Collin2, starn5t3a)
## Example 1: relabelling a 1-spread of PG(3,2) data(spreadn4t2a) Collin <- cbind(c(1,0,0,1), c(0,0,1,1), c(1,1,1,1), c(0,1,1,1)) # Collin is the collineation matrix corresponding to # A -> AD, B -> CD, C -> ABCD, D -> BCD applyCollineation(Collin, spreadn4t2a) ## Example 2: Relabelling a star of PG(4,2) consisting of 4-flats. data(starn5t3a) Collin2 <- cbind(c(0,0,0,0,1), c(1,0,0,0,0), c(0,1,0,0,0), c(0,0,0,1,0), c(0,0,1,0,0)) # Collin2 is the collineation matrix corresponding to # A -> E, B -> A, C -> B, D -> D, E -> C applyCollineation(Collin2, starn5t3a)
This function checks the equivalence of two (t-1)
-spreads of PG(n-1,2)
by comparing their sorted bitstring representations.
checkSpreadEquivalence(spread1, spread2)
checkSpreadEquivalence(spread1, spread2)
spread1 |
A |
spread2 |
A |
This code checks if two (t-1)
-spreads of PG(n-1,2)
are equivalent using the bitstring representation of Spencer et al. (2019). Both input spreads should be formatted as 3-dimensional arrays, for example, spread1[i,j,k]
indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of spread1.
A Boolean indicating whether or not the two spreads are equivalent.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of spreads.checkStarEquivalence
for checking the equivalence of two stars.
## Example 1: two non-equivalent 1-spreads of PG(3,2) data(spreadn4t2a) data(spreadn4t2b) # test their equivalence (test1 <- checkSpreadEquivalence(spreadn4t2a, spreadn4t2b)) # direct instantiation of a spread spreadn4t2c <- array(NA, c(4,3,5)) spreadn4t2c[,1,1] <- c(0, 0, 0, 1) spreadn4t2c[,2,1] <- c(0, 1, 1, 0) spreadn4t2c[,3,1] <- c(0, 1, 1, 1) spreadn4t2c[,1,2] <- c(0, 0, 1, 0) spreadn4t2c[,2,2] <- c(1, 1, 0, 0) spreadn4t2c[,3,2] <- c(1, 1, 1, 0) spreadn4t2c[,1,3] <- c(0, 1, 0, 0) spreadn4t2c[,2,3] <- c(1, 0, 1, 1) spreadn4t2c[,3,3] <- c(1, 1, 1, 1) spreadn4t2c[,1,4] <- c(1, 0, 0, 0) spreadn4t2c[,2,4] <- c(0, 1, 0, 1) spreadn4t2c[,3,4] <- c(1, 1, 0, 1) spreadn4t2c[,1,5] <- c(0, 0, 1, 1) spreadn4t2c[,2,5] <- c(1, 0, 1, 0) spreadn4t2c[,3,5] <- c(1, 0, 0, 1) (test2 <- checkSpreadEquivalence(spreadn4t2a, spreadn4t2c)) ## Example 2: two equivalent 2-spreads of PG(5,2) data(spreadn6t3a) # permute the flats and flat order of spreadn6t3a to create a # second equivalent spread equiv_spreadn6t3a. equiv_spreadn6t3a <- spreadn6t3a dims <- dim(equiv_spreadn6t3a) for(i in 1:(dims[3])){ equiv_spreadn6t3a[,,i] <- equiv_spreadn6t3a[,sample(1:dims[2], dims[2]),i] } equiv_spreadn6t3a <- equiv_spreadn6t3a[,,sample(1:dims[3], dims[3])] (test3 <- checkSpreadEquivalence(spreadn6t3a, equiv_spreadn6t3a))
## Example 1: two non-equivalent 1-spreads of PG(3,2) data(spreadn4t2a) data(spreadn4t2b) # test their equivalence (test1 <- checkSpreadEquivalence(spreadn4t2a, spreadn4t2b)) # direct instantiation of a spread spreadn4t2c <- array(NA, c(4,3,5)) spreadn4t2c[,1,1] <- c(0, 0, 0, 1) spreadn4t2c[,2,1] <- c(0, 1, 1, 0) spreadn4t2c[,3,1] <- c(0, 1, 1, 1) spreadn4t2c[,1,2] <- c(0, 0, 1, 0) spreadn4t2c[,2,2] <- c(1, 1, 0, 0) spreadn4t2c[,3,2] <- c(1, 1, 1, 0) spreadn4t2c[,1,3] <- c(0, 1, 0, 0) spreadn4t2c[,2,3] <- c(1, 0, 1, 1) spreadn4t2c[,3,3] <- c(1, 1, 1, 1) spreadn4t2c[,1,4] <- c(1, 0, 0, 0) spreadn4t2c[,2,4] <- c(0, 1, 0, 1) spreadn4t2c[,3,4] <- c(1, 1, 0, 1) spreadn4t2c[,1,5] <- c(0, 0, 1, 1) spreadn4t2c[,2,5] <- c(1, 0, 1, 0) spreadn4t2c[,3,5] <- c(1, 0, 0, 1) (test2 <- checkSpreadEquivalence(spreadn4t2a, spreadn4t2c)) ## Example 2: two equivalent 2-spreads of PG(5,2) data(spreadn6t3a) # permute the flats and flat order of spreadn6t3a to create a # second equivalent spread equiv_spreadn6t3a. equiv_spreadn6t3a <- spreadn6t3a dims <- dim(equiv_spreadn6t3a) for(i in 1:(dims[3])){ equiv_spreadn6t3a[,,i] <- equiv_spreadn6t3a[,sample(1:dims[2], dims[2]),i] } equiv_spreadn6t3a <- equiv_spreadn6t3a[,,sample(1:dims[3], dims[3])] (test3 <- checkSpreadEquivalence(spreadn6t3a, equiv_spreadn6t3a))
This function checks the isomorphism of two (t-1)
-spreads of PG(n-1,2)
. If they are isomorphic, it returns the list of isomorphism establishing collineations (IECs). The option is provided to enumerate all IECs or to terminate after the first one is found.
checkSpreadIsomorphism(spread1, spread2, returnfirstIEC = FALSE, printstatement = TRUE)
checkSpreadIsomorphism(spread1, spread2, returnfirstIEC = FALSE, printstatement = TRUE)
spread1 |
A |
spread2 |
A |
returnfirstIEC |
An indicator to indicate whether all isomorphism establishing collineations should be returned (default), or terminate only after the first one is found. |
printstatement |
If set to true (default), running the function also prints a sentence declaring the isomorphism of the spreads. |
This code considers all possible collineations of PG(n-1,2)
to search for isomorphism establishing collineations (IECs) from spread1 to spread2. The search is conducted over the reduced space described in Algorithm 1 of Spencer et al. (2019). Equivalence is assessed using the bitstring comparison method described in Spencer et al. (2019).
Both input spreads should be formatted as 3-dimensional arrays with spread1[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of spread1.
A list containing two objects. The first object is a Boolean indicating whether or not spread1 is isomorphic to spread2. If isomorphic, the second object is a list of isomorphism establishing collineation matrices. If not isomorphic, the second object is NA.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkStarIsomorphism
for checking the isomorphism of balanced covering stars.checkSpreadEquivalence
for checking the equivalence of balanced spreads.
## Example 1: two 1-spreads of PG(3,2) data(spreadn4t2a) data(spreadn4t2b) # test their isomorphism test1 <- checkSpreadIsomorphism(spreadn4t2a, spreadn4t2b) test1$result # the test indicates that they are isomorphic (IEC1 <- (test1$IECs)[[1]]) # we store the first isomorphism establishing collineation as IEC1 ## Example 2: two 2-spreads of PG(5,2) using returnfirstIEC to cut down on runtime data(spreadn6t3a) data(spreadn6t3b) test2 <- checkSpreadIsomorphism(spreadn6t3a, spreadn6t3b, returnfirstIEC = TRUE) test2$result # the test indicates that they are isomorphic ## Example 3: non-isomorphic 1-spreads of PG(5,2) data(spreadn6t2a) data(spreadn6t2c) # A bit slow for official example # test3 <- checkSpreadIsomorphism(spreadn6t2a, spreadn6t2c, returnfirstIE#C = TRUE) # test3$result ## Example 4: isomorphic 1-spreads of PG(5,2) data(spreadn6t2a) data(spreadn6t2b) test4 <- checkSpreadIsomorphism(spreadn6t2a, spreadn6t2b, returnfirstIEC = TRUE) test4$result # the test indicates that they are isomorphic
## Example 1: two 1-spreads of PG(3,2) data(spreadn4t2a) data(spreadn4t2b) # test their isomorphism test1 <- checkSpreadIsomorphism(spreadn4t2a, spreadn4t2b) test1$result # the test indicates that they are isomorphic (IEC1 <- (test1$IECs)[[1]]) # we store the first isomorphism establishing collineation as IEC1 ## Example 2: two 2-spreads of PG(5,2) using returnfirstIEC to cut down on runtime data(spreadn6t3a) data(spreadn6t3b) test2 <- checkSpreadIsomorphism(spreadn6t3a, spreadn6t3b, returnfirstIEC = TRUE) test2$result # the test indicates that they are isomorphic ## Example 3: non-isomorphic 1-spreads of PG(5,2) data(spreadn6t2a) data(spreadn6t2c) # A bit slow for official example # test3 <- checkSpreadIsomorphism(spreadn6t2a, spreadn6t2c, returnfirstIE#C = TRUE) # test3$result ## Example 4: isomorphic 1-spreads of PG(5,2) data(spreadn6t2a) data(spreadn6t2b) test4 <- checkSpreadIsomorphism(spreadn6t2a, spreadn6t2b, returnfirstIEC = TRUE) test4$result # the test indicates that they are isomorphic
This function checks the equivalence of two balanced covering stars of PG(n-1,2)
by comparing sorted bitstring representations.
checkStarEquivalence(star1, star2)
checkStarEquivalence(star1, star2)
star1 |
A star of |
star2 |
A star of |
This code checks if two stars of PG(n-1,2)
are equivalent using the bitstring representation of Spencer et al. (2019). Both input stars should be formatted as 3-dimensional arrays with spread1[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of spread1.
A Boolean indicating whether or not the two stars are equivalent.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkStarIsomorphism
for checking the isomorphism of stars.checkSpreadEquivalence
for checking the equivalence of spreads.
## Example 1: two non-equivalent stars of PG(4,2) data(starn5t3a) data(starn5t3b) # test their equivalence (test1 <- checkStarEquivalence(starn5t3a, starn5t3b)) ## Example 2: two equivalent stars of PG(7,2) consisting of 6-flats data(starn8t5a) #permute the flats and flat order of starn8t5a to create a second equivalent spread equiv_starn8t5a. equiv_starn8t5a <- starn8t5a dims <- dim(equiv_starn8t5a) for(i in 1:(dims[3])){ equiv_starn8t5a[,,i] <- equiv_starn8t5a[,sample(1:dims[2], dims[2]),i] } equiv_starn8t5a <- starn8t5a[,,sample(1:dims[3], dims[3])] (test2 <- checkStarEquivalence(starn8t5a, equiv_starn8t5a))
## Example 1: two non-equivalent stars of PG(4,2) data(starn5t3a) data(starn5t3b) # test their equivalence (test1 <- checkStarEquivalence(starn5t3a, starn5t3b)) ## Example 2: two equivalent stars of PG(7,2) consisting of 6-flats data(starn8t5a) #permute the flats and flat order of starn8t5a to create a second equivalent spread equiv_starn8t5a. equiv_starn8t5a <- starn8t5a dims <- dim(equiv_starn8t5a) for(i in 1:(dims[3])){ equiv_starn8t5a[,,i] <- equiv_starn8t5a[,sample(1:dims[2], dims[2]),i] } equiv_starn8t5a <- starn8t5a[,,sample(1:dims[3], dims[3])] (test2 <- checkStarEquivalence(starn8t5a, equiv_starn8t5a))
This function checks the isomorphism of two balanced covering stars of PG(n-1,2)
. If they are isomorphic, it returns the list of isomorphism establishing collineations. The option is provided to enumerate all isomorphism establishing collineations or to terminate after the first one is found.
checkStarIsomorphism(star1, star2, returnfirstIEC = FALSE)
checkStarIsomorphism(star1, star2, returnfirstIEC = FALSE)
star1 |
A star of |
star2 |
A star of |
returnfirstIEC |
An indicator of whether all isomorphism establishing collineations (IECs) should be returned (default), or terminate only after the first one is found. |
This code considers all possible collineations of PG(n-1,2)
to search for isomorphism establishing collineations from star1 to star2. The search is conducted by first projecting onto a lower dimensional space described as Algorithm 2 in Spencer et al. (2019). Equivalence is assessed using the bitstring comparison method described in Spencer et al. (2019). Both input stars should be formatted as 3-dimensional arrays with star1[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of star1.
A list containing two objects. The first object is a Boolean indicating whether or not star1 is isomorphic to star2. If isomorphic, the second object is a list of isomorphism establishing collineation matrices. If not isomorphic, the second object is NA.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of spreads.checkStarEquivalence
for checking the equivalence of stars.
## Example 1: Two stars of PG(4,2) consisting of 4-flats data(starn5t3a) data(starn5t3b) test1 <- checkStarIsomorphism(starn5t3a, starn5t3b, returnfirstIEC = TRUE) test1$result # the test indicates that they are isomorphic (IECstar <- test1$IECs[[1]]) # the first IEC ## Example 2: Two stars of PG(7,2) consisting of 6-flats data(starn8t5a) data(starn8t5b) test2 <- checkStarIsomorphism(starn8t5a, starn8t5b, returnfirstIEC = TRUE) test2$result
## Example 1: Two stars of PG(4,2) consisting of 4-flats data(starn5t3a) data(starn5t3b) test1 <- checkStarIsomorphism(starn5t3a, starn5t3b, returnfirstIEC = TRUE) test1$result # the test indicates that they are isomorphic (IECstar <- test1$IECs[[1]]) # the first IEC ## Example 2: Two stars of PG(7,2) consisting of 6-flats data(starn8t5a) data(starn8t5b) test2 <- checkStarIsomorphism(starn8t5a, starn8t5b, returnfirstIEC = TRUE) test2$result
This function computes a bitstring representation for a spread or star of PG(n-1,2)
getBitstrings(spr)
getBitstrings(spr)
spr |
A spread or star of |
This code obtains the bitstring representation (as described in Spencer et al. 2019) for any given spread or star of PG(n-1,2)
. The spread should be formatted as a 3-dimensional array with spr[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of spr
. This representation facilitates fast equivalence checking for spreads or stars.
A matrix with each row characterizing the elements of a distinct flat in spr.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadEquivalence
for checking equivalence of spreads.checkStarEquivalence
for checking equivalence of spreads.
## Example 1: The bitstring representation of a 1-spread of PG(3,2) data(spreadn4t2a) getBitstrings(spreadn4t2a) ## Example 2: The bitstring representation of a star of PG(4,2) consisting of 4-flats. data(starn5t3a) getBitstrings(starn5t3a)
## Example 1: The bitstring representation of a 1-spread of PG(3,2) data(spreadn4t2a) getBitstrings(spreadn4t2a) ## Example 2: The bitstring representation of a star of PG(4,2) consisting of 4-flats. data(starn5t3a) getBitstrings(starn5t3a)
Checks whether or not the input is a proper balanced (t-1)-spread of PG(n-1,2)
.
is.spread(spr, printstatements = TRUE)
is.spread(spr, printstatements = TRUE)
spr |
A balanced spread of |
printstatements |
A Boolean indicating whether or not to print possible reasons for not being a spread if the input is not a spread. |
Checks whether or not the input is a proper balanced (t-1)-spread of PG(n-1,2)
. The spread should be formatted as a 3-dimensional array with spr[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of spr
. See Spencer et al. (2019) for details.
A Boolean indicating whether or not the input is a spread.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
is.star
for checking if the input is a balanced covering star.checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
## Example 1: checking whether "spreadn4t2a" is a proper spread data(spreadn4t2a) is.spread(spreadn4t2a) ## Example 2: checking whether "starn5t3a" is a proper spread data(starn5t3a) is.spread(starn5t3a)
## Example 1: checking whether "spreadn4t2a" is a proper spread data(spreadn4t2a) is.spread(spreadn4t2a) ## Example 2: checking whether "starn5t3a" is a proper spread data(starn5t3a) is.spread(starn5t3a)
Checks whether or not the input is a proper balanced covering star of PG(n-1,2)
.
is.star(star, printstatements = TRUE)
is.star(star, printstatements = TRUE)
star |
A balanced covering star of |
printstatements |
A Boolean indicating whether or not to print possible reasons for not being a star if the input is not a balanced covering star. |
Checks whether or not the input is a proper balanced covering star of PG(n-1,2)
. The star should be formatted as a 3-dimensional array with star[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of star
. See Spencer et al. (2019) for details.
A Boolean indicating whether or not the input is a star.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
is.spread
for checking if the input is a balanced spread.checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
## Example 1: checking whether "spreadn4t2a" is a proper star data(spreadn4t2a) is.star(spreadn4t2a) ## Example 2: checking whether "starn5t3a" is a proper star data(starn5t3a) is.star(starn5t3a)
## Example 1: checking whether "spreadn4t2a" is a proper star data(spreadn4t2a) is.star(spreadn4t2a) ## Example 2: checking whether "starn5t3a" is a proper star data(starn5t3a) is.star(starn5t3a)
A balanced 1-spread of PG(3,2) obtained via cyclic construction
data(spreadn4t2a)
data(spreadn4t2a)
The spread is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the spread.
The spread consists of five subspaces given by
,
,
,
and
.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 1-spread of PG(3,2) obtained via cyclic construction
data(spreadn4t2b)
data(spreadn4t2b)
The spread is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the spread.
The spread consists of five subspaces given by
,
,
,
and
.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 1-spread of PG(5,2) obtained via cyclic construction
data(spreadn6t2a)
data(spreadn6t2a)
The spread is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the spread.
The spread consists of 21 subspaces given by
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
, and
.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 1-spread of PG(5,2) obtained via cyclic construction
data(spreadn6t2b)
data(spreadn6t2b)
The spread is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the spread.
The spread consists of 21 subspaces given by
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
, and
.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 1-spread of PG(5,2) obtained via cyclic construction
data(spreadn6t2c)
data(spreadn6t2c)
The spread is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the spread.
The spread consists of 21 subspaces given by
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
, and
.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 2-spread of PG(5,2) obtained via cyclic construction
data(spreadn6t3a)
data(spreadn6t3a)
The spread is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the spread.
The spread consists of 9 subspaces each of size 7. The subspaces are
,
,
,
,
,
,
,
and .
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 2-spread of PG(5,2) obtained via cyclic construction
data(spreadn6t3b)
data(spreadn6t3b)
The spread is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the spread.
The spread consists of 9 subspaces each of size 7. The subspaces are
,
,
,
,
,
,
,
and
.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A function that converts a balanced covering star St(n, mu, t, t_0)
of PG(n-1,2)
to its corresponding balanced ((t-t_0)-1)
-spread of PG((n-t_0)-1,2)
.
star_to_spread(star)
star_to_spread(star)
star |
A balanced covering star of |
Finds a balanced ((t-t_0)-1)
-spread of PG((n-t_0)-1,2)
embedded in PG(n-1,2)
as conformable with the geometry of a balanced covering star St(n, mu, t, t_0)
of PG(n-1,2)
. The star should be formatted as a 3-dimensional array with star[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of star
. See Spencer et al. (2019) for details.
A balanced ((t-t_0)-1)
-spread of PG((n-t_0)-1,2)
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
is.spread
for checking if the input is a balanced spread.checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
## Example 1: checking whether "starn8t5a" is a proper star data(starn8t5a) star_to_spread(starn8t5a) ## Example 2: checking whether "starn5t3a" is a proper star data(starn5t3a) star_to_spread(starn5t3a)
## Example 1: checking whether "starn8t5a" is a proper star data(starn8t5a) star_to_spread(starn8t5a) ## Example 2: checking whether "starn5t3a" is a proper star data(starn5t3a) star_to_spread(starn5t3a)
A balanced 2-star of PG(4,2)
data(starn5t3a)
data(starn5t3a)
The star is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the star.
The star consists of five subspaces given by
,
,
,
and
.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 2-star of PG(4,2)
data(starn5t3b)
data(starn5t3b)
The star is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the star.
The star consists of five subspaces given by
,
,
,
and
.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 4-star of PG(7,2)
data(starn8t5a)
data(starn8t5a)
The star is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the star.
The star consists of nine subspaces of size 31 each. Use
vectortostring(starn8t5a)
to see the elements of this star.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
A balanced 4-star of PG(7,2)
data(starn8t5b)
data(starn8t5b)
The star is formatted as a 3-dimensional array, where the [i,j,k]
-th element indicates whether or not the i
th basic factor is present in the j
th effect of the k
th flat of the star.
The star consists of nine subspaces of size 31 each. Use
vectortostring(starn8t5b)
to see the elements of this star.
In R, the data must be loaded using the data
function.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
Converts a character string representation of a factorial effect in PG(n-1,2)
into a binary vector of length n.
stringtovector(string,n)
stringtovector(string,n)
string |
a character string representation of a factorial effect in |
n |
the number of basic factors, or equivalently, the dimension of |
Takes a character string representation of a factorial effect in PG(n-1,2)
, and returns a binary vector of length n. This can be used in defining a spread or a star. The spread/star should be formatted as a 3-dimensional array with spread[i,j,k]
/star[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of spread
/star
. See Spencer et al. (2019) for details.
A binary vector of length n.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
## Example : Converts "AC" into a vector representation stringtovector("AC",4) stringtovector("AC",5) stringtovector("CD",6)
## Example : Converts "AC" into a vector representation stringtovector("AC",4) stringtovector("AC",5) stringtovector("CD",6)
Converts a binary vector or matrix in PG(n-1,2)
into string-vector/matrix .
vectortostring(arry)
vectortostring(arry)
arry |
A binary vector or a matrix of binary vectors representing a flat or spread/star in |
Takes an array (a binary vector or an array of binary vectors, upto three dimensions) and returns the character string representation of the vectors. This can be used for reporting spreads and stars in an easy-to-read format. Recall that a sprad/star should be formatted as a 3-dimensional array with star[i,j,k]
indicating whether or not the i
th basic factor is present in the j
th effect of the k
th flat of star
. See Spencer et al. (2019) for details.
Character string representation of the input arry
.
Neil Spencer, Pritam Ranjan, Franklin Mendivil
Spencer, N.A., Ranjan, P., and Mendivil, F., (2019), "Isomorphism Check for Factorial Designs with Randomization Restrictions", Journal of Statistical Theory and Practice, 13(60),1-24 [https://doi.org/10.1007/s42519-019-0064-5]
checkSpreadIsomorphism
for checking the isomorphism of balanced spreads.checkStarIsomorphism
for checking the isomorphism of balanced covering stars.
## Example 1: converts c(0,1,1,0) into "BC" vec = c(0,1,1,0) vectortostring(vec) ## Example 2: converts "spreadn6t3a" into character string representation data(spreadn6t3a) vectortostring(spreadn6t3a) ## Example 3: converts "starn5t3a" into character string representation data(starn5t3a) vectortostring(starn5t3a)
## Example 1: converts c(0,1,1,0) into "BC" vec = c(0,1,1,0) vectortostring(vec) ## Example 2: converts "spreadn6t3a" into character string representation data(spreadn6t3a) vectortostring(spreadn6t3a) ## Example 3: converts "starn5t3a" into character string representation data(starn5t3a) vectortostring(starn5t3a)