R Under development (unstable) (2023-04-23 r84305 ucrt) -- "Unsuffered Consequences" Copyright (C) 2023 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 (64-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > > library(rcdd) If you want correct answers, use rational arithmetic. See the Warnings sections in help pages for functions that do computational geometry. > > d <- 4 > qux <- makeH(- diag(d), rep(0, d), rep(1, d), 1) > > out <- scdd(qux) > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 0 0 0 1 [2,] 0 1 0 0 1 0 [3,] 0 1 0 1 0 0 [4,] 0 1 1 0 0 0 attr(,"representation") [1] "V" > > out <- scdd(out$output) > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 -1 -1 -1 0 [2,] 0 0 1 0 0 0 [3,] 0 0 0 1 0 0 [4,] 0 0 0 0 1 0 [5,] 1 -1 1 1 1 1 attr(,"representation") [1] "H" > > out <- scdd(out$output, roworder = "mincutoff") > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 1 0 0 0 [2,] 0 1 0 1 0 0 [3,] 0 1 0 0 1 0 [4,] 0 1 0 0 0 1 attr(,"representation") [1] "V" > > ########################## > > quux <- addHeq(1:d, (d + 1) / 2, qux) > print(quux) [,1] [,2] [,3] [,4] [,5] [,6] [1,] 1 1.0 -1 -1 -1 -1 [2,] 0 0.0 1 0 0 0 [3,] 0 0.0 0 1 0 0 [4,] 0 0.0 0 0 1 0 [5,] 0 0.0 0 0 0 1 [6,] 1 2.5 -1 -2 -3 -4 attr(,"representation") [1] "H" > > out <- scdd(quux) > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 0.50 0.00 0.00 0.50 [2,] 0 1 0.25 0.00 0.75 0.00 [3,] 0 1 0.00 0.50 0.50 0.00 [4,] 0 1 0.00 0.75 0.00 0.25 attr(,"representation") [1] "V" > > ########################## > > quux <- addHin(c(1, -1, 0, 0), 0, qux) > print(quux) [,1] [,2] [,3] [,4] [,5] [,6] [1,] 1 1 -1 -1 -1 -1 [2,] 0 0 1 0 0 0 [3,] 0 0 0 1 0 0 [4,] 0 0 0 0 1 0 [5,] 0 0 0 0 0 1 [6,] 0 0 -1 1 0 0 attr(,"representation") [1] "H" > > out <- scdd(quux) > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 0.5 0.5 0 0 [2,] 0 1 0.0 1.0 0 0 [3,] 0 1 0.0 0.0 1 0 [4,] 0 1 0.0 0.0 0 1 attr(,"representation") [1] "V" > > ########################## > > quux <- qux[- 4, ] > print(quux) [,1] [,2] [,3] [,4] [,5] [,6] [1,] 1 1 -1 -1 -1 -1 [2,] 0 0 1 0 0 0 [3,] 0 0 0 1 0 0 [4,] 0 0 0 0 0 1 > > out <- scdd(quux) > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 0 1 0 -1 0 [2,] 0 0 0 1 -1 0 [3,] 0 1 0 0 1 0 [4,] 0 0 0 0 -1 1 attr(,"representation") [1] "V" > > ########################## > > quux <- makeH(a2 = rep(1, d), b2 = 1) > print(quux) [,1] [,2] [,3] [,4] [,5] [,6] [1,] 1 1 -1 -1 -1 -1 attr(,"representation") [1] "H" > > out <- scdd(quux) > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 1 0 0 0 [2,] 1 0 -1 1 0 0 [3,] 1 0 -1 0 1 0 [4,] 1 0 -1 0 0 1 attr(,"representation") [1] "V" > > ########################## > > quux <- qux[- 1, ] > print(quux) [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 0 1 0 0 0 [2,] 0 0 0 1 0 0 [3,] 0 0 0 0 1 0 [4,] 0 0 0 0 0 1 > > out <- scdd(quux) > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 0 1 0 0 0 [2,] 0 0 0 1 0 0 [3,] 0 0 0 0 1 0 [4,] 0 0 0 0 0 1 attr(,"representation") [1] "V" > > ########################## > > quux[ , 2] <- quux[ , 2] + 1 > print(quux) [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 1 0 0 0 [2,] 0 1 0 1 0 0 [3,] 0 1 0 0 1 0 [4,] 0 1 0 0 0 1 > > print(quux) [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 1 0 0 0 [2,] 0 1 0 1 0 0 [3,] 0 1 0 0 1 0 [4,] 0 1 0 0 0 1 > out <- scdd(quux) > print(out) $output [,1] [,2] [,3] [,4] [,5] [,6] [1,] 0 1 -1 -1 -1 -1 [2,] 0 0 1 0 0 0 [3,] 0 0 0 1 0 0 [4,] 0 0 0 0 1 0 [5,] 0 0 0 0 0 1 attr(,"representation") [1] "V" > > > proc.time() user system elapsed 0.28 0.04 0.28