\HeaderA{lsyMatrix-class}{Symmetric Dense Logical Matrices}{lsyMatrix.Rdash.class}
\aliasA{coerce,lspMatrix,dspMatrix-method}{lsyMatrix-class}{coerce,lspMatrix,dspMatrix.Rdash.method}
\aliasA{coerce,lspMatrix,lgeMatrix-method}{lsyMatrix-class}{coerce,lspMatrix,lgeMatrix.Rdash.method}
\aliasA{coerce,lspMatrix,lsyMatrix-method}{lsyMatrix-class}{coerce,lspMatrix,lsyMatrix.Rdash.method}
\aliasA{coerce,lsyMatrix,dsyMatrix-method}{lsyMatrix-class}{coerce,lsyMatrix,dsyMatrix.Rdash.method}
\aliasA{coerce,lsyMatrix,lgeMatrix-method}{lsyMatrix-class}{coerce,lsyMatrix,lgeMatrix.Rdash.method}
\aliasA{coerce,lsyMatrix,lspMatrix-method}{lsyMatrix-class}{coerce,lsyMatrix,lspMatrix.Rdash.method}
\aliasA{coerce,matrix,lspMatrix-method}{lsyMatrix-class}{coerce,matrix,lspMatrix.Rdash.method}
\aliasA{coerce,matrix,lsyMatrix-method}{lsyMatrix-class}{coerce,matrix,lsyMatrix.Rdash.method}
\aliasA{lspMatrix-class}{lsyMatrix-class}{lspMatrix.Rdash.class}
\aliasA{t,lspMatrix-method}{lsyMatrix-class}{t,lspMatrix.Rdash.method}
\aliasA{t,lsyMatrix-method}{lsyMatrix-class}{t,lsyMatrix.Rdash.method}
\keyword{classes}{lsyMatrix-class}
\begin{Description}\relax
The \code{"lsyMatrix"} class is the class of symmetric, dense logical
matrices in non-packed storage and \code{"lspMatrix"} is the class of
of these in packed storage.  Only the upper triangle or the
lower triangle is stored.
\end{Description}
\begin{Section}{Objects from the Class}
Objects can be created by calls of the form \code{new("lsyMatrix", ...)}.
\end{Section}
\begin{Section}{Slots}
\describe{
\item[\code{uplo}:] Object of class \code{"character"}. Must be
either "U", for upper triangular, and "L", for lower triangular.
\item[\code{x}:] Object of class \code{"logical"}. The logical
values that constitute the matrix, stored in column-major order.
\item[\code{Dim},\code{Dimnames}:] The dimension (a length-2
\code{"integer"}) and corresponding names (or \code{NULL}), see the
\code{\LinkA{Matrix}{Matrix.Rdash.class}} class.
\item[\code{factors}:] Object of class \code{"list"}.  A named
list of factorizations that have been computed for the matrix.
}
\end{Section}
\begin{Section}{Extends}
\code{"lsyMatrix"} extends class \code{"lgeMatrix"}, directly, whereas\\
\code{"lspMatrix"} extends class \code{"ldenseMatrix"}, directly.

Both extend class \code{"symmetricMatrix"}, directly,
and class \code{"Matrix"} and others, \emph{in}directly, use
\code{\LinkA{showClass}{showClass}("lsyMatrix")}, e.g., for details.
\end{Section}
\begin{Section}{Methods}
Currently, mainly \code{\LinkA{t}{t}()} and coercion methods (for
\code{\LinkA{as}{as}(.)}; use, e.g.,
\code{\LinkA{showMethods}{showMethods}(class="dsyMatrix")} for details.
\end{Section}
\begin{SeeAlso}\relax
\code{\LinkA{lgeMatrix}{lgeMatrix.Rdash.class}}, \code{\LinkA{Matrix}{Matrix.Rdash.class}},
\code{\LinkA{t}{t}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
(M2 <- Matrix(c(TRUE, NA,FALSE,FALSE), 2,2)) # logical dense (ltr)
str(M2)
# can
(sM <- M2 | t(M2)) # "lge"
as(sM, "lsyMatrix")
str(sM <- as(sM, "lspMatrix")) # packed symmetric
\end{ExampleCode}
\end{Examples}

