Logic Subpackages
&LIRNG;: Logical Implications for Rings
&LIMAP;: Logical Implications for Ring Maps
&LIMAT;: Logical Implications for Matrices
&COLEM;: Clever Operations for Lazy Evaluated Matrices

Most of the matrix tool operations listed in Appendix which return a new matrix are lazy evaluated. The value of a &homalg; matrix is stored in the attribute Eval. Below is the list of the installed methods for the attribute Eval.

<#Include Label="Eval:IsInitialMatrix"> <#Include Label="Eval:IsInitialIdentityMatrix">

<#Include Label="Eval:IsZeroMatrix"> <#Include Label="Eval:IsIdentityMatrix">

<#Include Label="Eval:HasEvalInvolution"> <#Include Label="Eval:HasEvalCertainRows"> <#Include Label="Eval:HasEvalCertainColumns"> <#Include Label="Eval:HasEvalUnionOfRows"> <#Include Label="Eval:HasEvalUnionOfColumns"> <#Include Label="Eval:HasEvalDiagMat"> <#Include Label="Eval:HasEvalKroneckerMat"> <#Include Label="Eval:HasEvalMulMat"> <#Include Label="Eval:HasEvalAddMat"> <#Include Label="Eval:HasEvalSubMat"> <#Include Label="Eval:HasEvalCompose"> <#Include Label="Eval:HasEvalLeftInverse"> <#Include Label="Eval:HasEvalRightInverse">

&LIMOD;: Logical Implications for Modules
&LIMOR;: Logical Implications for Morphisms
&LICPX;: Logical Implications for Complexes