Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/GAP/pkg/matricesforhomalg/doc/   (Algebra von RWTH Aachen Version 4.15.1©)  Datei vom 7.8.2025 mit Größe 139 kB image not shown  

Quelle  chap5_mj.html   Sprache: HTML

 
 products/Sources/formale Sprachen/GAP/pkg/matricesforhomalg/doc/chap5_mj.html


<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<script type="text/javascript"
  src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
<title>GAP (MatricesForHomalg) - Chapter 5: Matrices</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="generator" content="GAPDoc2HTML" />
<link rel="stylesheet" type="text/css" href="manual.css" />
<script src="manual.js" type="text/javascript"></script>
<script type="text/javascript">overwriteStyle();</script>
</head>
<body class="chap5"  onload="jscontent()">


<div class="chlinktop"><span class="chlink1">Goto Chapter: </span><a href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a href="chap6_mj.html">6</a>  <a href="chapA_mj.html">A</a>  <a href="chapB_mj.html">B</a>  <a href="chapC_mj.html">C</a>  <a href="chapD_mj.html">D</a>  <a href="chapE_mj.html">E</a>  <a href="chapF_mj.html">F</a>  <a href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>

<div class="chlinkprevnexttop"> <a href="chap0_mj.html">[Top of Book]</a>   <a href="chap0_mj.html#contents">[Contents]</a>    <a href="chap4_mj.html">[Previous Chapter]</a>    <a href="chap6_mj.html">[Next Chapter]</a>   </div>

<p id="mathjaxlink" class="pcenter"><a href="chap5.html">[MathJax off]</a></p>
<p><a id="X812CCAB278643A59" name="X812CCAB278643A59"></a></p>
<div class="ChapSects"><a href="chap5_mj.html#X812CCAB278643A59">5 <span class="Heading">Matrices</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap5_mj.html#X78C552687FF14479">5.1 <span class="Heading">Matrices: Category and Representations</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7B68E1057F5F011F">5.1-1 IsHomalgMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7FE94FC47F460E35">5.1-2 IsHomalgInternalMatrixRep</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap5_mj.html#X7977387186436CDF">5.2 <span class="Heading">Matrices: Constructors</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86D290B084AC6638">5.2-1 HomalgInitialMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7CB77009868D369A">5.2-2 HomalgInitialIdentityMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8309EB7B86953A23">5.2-3 HomalgZeroMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X83266B9D7BE740D8">5.2-4 HomalgIdentityMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7D2E3472879E28AB">5.2-5 HomalgVoidMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X864ACCB08094F0B7">5.2-6 HomalgMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8246E1D17F96DAE7">5.2-7 HomalgMatrixListList</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7B127B5584CD012D">5.2-8 HomalgRowVector</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X871AF271843FF2B5">5.2-9 HomalgColumnVector</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X872D39C678D0C4AE">5.2-10 HomalgDiagonalMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X81225377833C4644"><code>5.2-11 \*</code></a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7C4E49D287011DCD">5.2-12 CoercedMatrix</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap5_mj.html#X7D92ECFC8030CF40">5.3 <span class="Heading">Matrices: Properties</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X858B5AF57D5BC90A">5.3-1 IsZero</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X814D78347858EC13">5.3-2 IsOne</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7813653578F174AB">5.3-3 IsUnitFree</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8612CB4A82D6D79E">5.3-4 IsPermutationMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7EEE3E9780EBA607">5.3-5 IsSpecialSubidentityMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8672364D79EBCC5D">5.3-6 IsSubidentityMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7EF95CAD78BDE12F">5.3-7 IsLeftRegular</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X87C369D27D6AAF68">5.3-8 IsRightRegular</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X856E1D217A47EE8C">5.3-9 IsInvertibleMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7A4FA27C80BC42D1">5.3-10 IsLeftInvertibleMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7E43FDE57E8449B6">5.3-11 IsRightInvertibleMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7BFC9266823F2C15">5.3-12 IsEmptyMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7EEC8E768178696E">5.3-13 IsDiagonalMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7848E6A0783B7428">5.3-14 IsScalarMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8740E71C799C0BCC">5.3-15 IsUpperTriangularMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X853A5B988306DBFE">5.3-16 IsLowerTriangularMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7976C42B7FA905EC">5.3-17 IsStrictUpperTriangularMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7B0C78AF8056D650">5.3-18 IsStrictLowerTriangularMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X81A2C3F67C99A3C2">5.3-19 IsUpperStairCaseMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7B3A5DE1860373F0">5.3-20 IsLowerStairCaseMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7BAAE75A8660D7A5">5.3-21 IsTriangularMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7F520F89821A8602">5.3-22 IsBasisOfRowsMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7D46613983DC5302">5.3-23 IsBasisOfColumnsMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86445AD281024339">5.3-24 IsReducedBasisOfRowsMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7E6BB540865C0344">5.3-25 IsReducedBasisOfColumnsMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7E6E51517822CB3F">5.3-26 IsInitialMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7EE624707ACEC26E">5.3-27 IsInitialIdentityMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X802794217F56DE51">5.3-28 IsVoidMatrix</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap5_mj.html#X86F766077C89558F">5.4 <span class="Heading">Matrices: Attributes</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7C72971F7D0CA3C8">5.4-1 NumberRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X847D45BF7F2BC67C">5.4-2 NumberColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X83045F6F82C180E1">5.4-3 DeterminantMat</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X828225E0857B1FDA">5.4-4 ZeroRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X870D761F7AB96D12">5.4-5 ZeroColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7991ED337C73065A">5.4-6 NonZeroRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7F335DCB7B8781E4">5.4-7 NonZeroColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7B7A073D7E1FAEA4">5.4-8 PositionOfFirstNonZeroEntryPerRow</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X83B389A97A703E42">5.4-9 PositionOfFirstNonZeroEntryPerColumn</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X862841E68674FA2A">5.4-10 RowRankOfMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7C61862E81CABD51">5.4-11 ColumnRankOfMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7EFCE38281AE60F9">5.4-12 LeftInverse</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X87614CA48493B63F">5.4-13 RightInverse</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7809E0507E882674">5.4-14 CoefficientsOfUnreducedNumeratorOfHilbertPoincareSeries</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7938E13A7EF4ADB1">5.4-15 CoefficientsOfNumeratorOfHilbertPoincareSeries</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X781E2CDB8743B1C6">5.4-16 UnreducedNumeratorOfHilbertPoincareSeries</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7C44039382DD5D91">5.4-17 NumeratorOfHilbertPoincareSeries</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7B93B7D082A50E61">5.4-18 HilbertPoincareSeries</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X84299BAB807A1E13">5.4-19 HilbertPolynomial</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7BC36CC67CB09858">5.4-20 AffineDimension</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X87C428A079000336">5.4-21 AffineDegree</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X82A1B55879AB1742">5.4-22 ProjectiveDegree</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X791B772A7E368A88">5.4-23 ConstantTermOfHilbertPolynomialn</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X835972A77F02C5BB">5.4-24 MatrixOfSymbols</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap5_mj.html#X80FA5AE87E8591BC">5.5 <span class="Heading">Matrices: Operations and Functions</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X81BBF79C79C3B6DF">5.5-1 HomalgRing</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7FBAA11B8008D936">5.5-2 LeftInverse</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7AAD17D47839BCAE">5.5-3 RightInverse</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7A7E42C179142727">5.5-4 LeftInverseLazy</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7FA3E7617EED7E1E">5.5-5 RightInverseLazy</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X800FA81F7C42BFEA">5.5-6 Involution</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7D0D35B582D9C0B0">5.5-7 TransposedMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7CF5CE79796001F6">5.5-8 CertainRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8256AF2A840B19C4">5.5-9 CertainColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7D6D0BDF854C9EBC">5.5-10 UnionOfRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7FF9661D85EC46B1">5.5-11 UnionOfColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7E61390E79B663E8">5.5-12 ConvertRowToMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X853EA6C87EDDF6EF">5.5-13 ConvertColumnToMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7ED5C86379A647F2">5.5-14 ConvertMatrixToRow</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X84C7C1D07DB6FBAA">5.5-15 ConvertMatrixToColumn</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7C7830BE847D84B4">5.5-16 DiagMat</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7CDA5D848468A0AA">5.5-17 KroneckerMat</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7ECF744B7DE82BED">5.5-18 DualKroneckerMat</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7D1A074278B415BE"><code>5.5-19 \*</code></a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X87C773DA85B21ADF"><code>5.5-20 \+</code></a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X784B57617B24208C"><code>5.5-21 \-</code></a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7F5961D78754157B"><code>5.5-22 \*</code></a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7E2074A77AFF518A"><code>5.5-23 \=</code></a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X85887BBB86F0A08B">5.5-24 GetColumnIndependentUnitPositions</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X824AB44184DD63B0">5.5-25 GetRowIndependentUnitPositions</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7A1969A17979FC49">5.5-26 GetUnitPosition</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X781B1C0C80529B09">5.5-27 Eliminate</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X80ADBE0D82CC6E85">5.5-28 BasisOfRowModule</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X868CDA327D6C8DDC">5.5-29 BasisOfColumnModule</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7F851EC7861170D1">5.5-30 DecideZeroRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86C97DBB787BAD6D">5.5-31 DecideZeroColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86ECEA9B7A4AE578">5.5-32 SyzygiesGeneratorsOfRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86504B757F6DC990">5.5-33 SyzygiesGeneratorsOfColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X84A93458804F16F6">5.5-34 SyzygiesGeneratorsOfRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7D3FC0CE7B63AAF1">5.5-35 SyzygiesGeneratorsOfColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X82E0FF517DC38040">5.5-36 ReducedBasisOfRowModule</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X84CED11F7A633BDA">5.5-37 ReducedBasisOfColumnModule</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7DE458D67B9B85BF">5.5-38 ReducedSyzygiesGeneratorsOfRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8699114D7A865C11">5.5-39 ReducedSyzygiesGeneratorsOfColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7D9DEC6081AF0003">5.5-40 BasisOfRowsCoeff</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7BBC885F7C24DEC2">5.5-41 BasisOfColumnsCoeff</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8513963C84A9F8CB">5.5-42 DecideZeroRowsEffectively</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7A06BF7779830815">5.5-43 DecideZeroColumnsEffectively</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X81ABDA3E7D94C661">5.5-44 BasisOfRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X83A5B51980FFDE53">5.5-45 BasisOfColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X85C980288304B4AC">5.5-46 DecideZero</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86C93ABD857447F8">5.5-47 SyzygiesOfRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X80325CAD7CE56F4F">5.5-48 SyzygiesOfColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86A798D4850BF9E8">5.5-49 ReducedSyzygiesOfRows</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8766BBD578557D15">5.5-50 ReducedSyzygiesOfColumns</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X850AEC9C7C00AFF5">5.5-51 RightDivide</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7D0EAF527F8514E0">5.5-52 LeftDivide</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7A8546EA87E3AE67">5.5-53 RightDivide</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86CEB1FC7C358777">5.5-54 LeftDivide</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X86DFDD25824E2F35">5.5-55 SafeRightDivide</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X85B64BD47F0379C5">5.5-56 SafeLeftDivide</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7F6BAF8E7F2343EA">5.5-57 UniqueRightDivide</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X8788CB987A8A18A7">5.5-58 UniqueLeftDivide</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X82B2C4987D6D5BD3">5.5-59 GenerateSameRowModule</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X867A947682754A9A">5.5-60 GenerateSameColumnModule</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X81CDBBBE878DC1E5">5.5-61 SimplifyHomalgMatrixByLeftAndRightMultiplicationWithInvertibleMatrices</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X85DA10C07E7E5A3D">5.5-62 SimplifyHomalgMatrixByLeftMultiplicationWithInvertibleMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X79C124318588F37F">5.5-63 SimplifyHomalgMatrixByRightMultiplicationWithInvertibleMatrix</a></span>
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap5_mj.html#X7EEFD7887E96714F">5.5-64 CoefficientsWithGivenMonomials</a></span>
</div></div>
</div>

<h3>5 <span class="Heading">Matrices</span></h3>

<p><a id="X78C552687FF14479" name="X78C552687FF14479"></a></p>

<h4>5.1 <span class="Heading">Matrices: Category and Representations</span></h4>

<p><a id="X7B68E1057F5F011F" name="X7B68E1057F5F011F"></a></p>

<h5>5.1-1 IsHomalgMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsHomalgMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( category )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p>The <strong class="pkg">GAP</strong> category of <strong class="pkg">homalg</strong> matrices.</p>


<div class="example"><pre>
DeclareCategory( "IsHomalgMatrix",
        IsMatrixObj and
        IsAttributeStoringRep );
</pre></div>

<p><a id="X7FE94FC47F460E35" name="X7FE94FC47F460E35"></a></p>

<h5>5.1-2 IsHomalgInternalMatrixRep</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsHomalgInternalMatrixRep</code>( <var class="Arg">A</var> )</td><td class="tdright">( representation )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p>The internal representation of <strong class="pkg">homalg</strong> matrices.</p>

<p>(It is a representation of the <strong class="pkg">GAP</strong> category <code class="func">IsHomalgMatrix</code> (<a href="chap5_mj.html#X7B68E1057F5F011F"><span class="RefLink">5.1-1</span></a>).)</p>

<p><a id="X7977387186436CDF" name="X7977387186436CDF"></a></p>

<h4>5.2 <span class="Heading">Matrices: Constructors</span></h4>

<p><a id="X86D290B084AC6638" name="X86D290B084AC6638"></a></p>

<h5>5.2-1 HomalgInitialMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgInitialMatrix</code>( <var class="Arg">m</var>, <var class="Arg">n</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>A mutable unevaluated initial <span class="SimpleMath">\(\textit{m} \times \textit{n}\)</span> <strong class="pkg">homalg</strong> matrix filled with zeros over the <strong class="pkg">homalg</strong> ring <var class="Arg">R</var>. This construction is useful in case one wants to define a matrix by assigning its nonzero entries. The property <code class="func">IsInitialMatrix</code> (<a href="chap5_mj.html#X7E6E51517822CB3F"><span class="RefLink">5.3-26</span></a>) is reset as soon as the matrix is evaluated. New computed properties or attributes of the matrix won't be cached, until the matrix is explicitly made immutable using (--> MakeImmutable (Reference 12.6-4)).




<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">zz := HomalgRingOfIntegers( );</span>
Z
<span class="GAPprompt">gap></span> <span class="GAPinput">z := HomalgInitialMatrix( 2, 3, zz );</span>
<An initial 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">HasIsZero( z );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">IsZero( z );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">z;</span>
<A 2 x 3 mutable matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">HasIsZero( z );</span>
false
</pre></div>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">n := HomalgInitialMatrix( 2, 3, zz );</span>
<An initial 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">n[ 1, 1 ] := "1";;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">n[ 2, 3 ] := "1";;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">MakeImmutable( n );</span>
<A 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( n );</span>
[ [  1,  0,  0 ],
  [  0,  0,  1 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsZero( n );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">n;</span>
<A non-zero 2 x 3 matrix over an internal ring>
</pre></div>

<p><a id="X7CB77009868D369A" name="X7CB77009868D369A"></a></p>

<h5>5.2-2 HomalgInitialIdentityMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgInitialIdentityMatrix</code>( <var class="Arg">m</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>A mutable unevaluated initial <span class="SimpleMath">\(\textit{m} \times \textit{m}\)</span> <strong class="pkg">homalg</strong> quadratic matrix with ones on the diagonal over the <strong class="pkg">homalg</strong> ring <var class="Arg">R</var>. This construction is useful in case one wants to define an elementary matrix by assigning its off-diagonal nonzero entries. The property <code class="func">IsInitialIdentityMatrix</code> (<a href="chap5_mj.html#X7EE624707ACEC26E"><span class="RefLink">5.3-27</span></a>) is reset as soon as the matrix is evaluated. New computed properties or attributes of the matrix won't be cached, until the matrix is explicitly made immutable using (--> MakeImmutable (Reference 12.6-4)).




<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">zz := HomalgRingOfIntegers( );</span>
Z
<span class="GAPprompt">gap></span> <span class="GAPinput">id := HomalgInitialIdentityMatrix( 3, zz );</span>
<An initial identity 3 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">HasIsOne( id );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">IsOne( id );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">id;</span>
<A 3 x 3 mutable matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">HasIsOne( id );</span>
false
</pre></div>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">e := HomalgInitialIdentityMatrix( 3, zz );</span>
<An initial identity 3 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">e[ 1, 2 ] := "1";;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">e[ 2, 1 ] := "-1";;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">MakeImmutable( e );</span>
<A 3 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( e );</span>
[ [   1,   1,   0 ],
  [  -1,   1,   0 ],
  [   0,   0,   1 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsOne( e );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">e;</span>
<A 3 x 3 matrix over an internal ring>
</pre></div>

<p><a id="X8309EB7B86953A23" name="X8309EB7B86953A23"></a></p>

<h5>5.2-3 HomalgZeroMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgZeroMatrix</code>( <var class="Arg">m</var>, <var class="Arg">n</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>An immutable unevaluated <span class="SimpleMath">\(\textit{m} \times \textit{n}\)</span> <strong class="pkg">homalg</strong> zero matrix over the <strong class="pkg">homalg</strong> ring <var class="Arg">R</var>.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">zz := HomalgRingOfIntegers( );</span>
Z
<span class="GAPprompt">gap></span> <span class="GAPinput">z := HomalgZeroMatrix( 2, 3, zz );</span>
<An unevaluated 2 x 3 zero matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( z );</span>
[ [  0,  0,  0 ],
  [  0,  0,  0 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">z;</span>
<A 2 x 3 zero matrix over an internal ring>
</pre></div>

<p><a id="X83266B9D7BE740D8" name="X83266B9D7BE740D8"></a></p>

<h5>5.2-4 HomalgIdentityMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgIdentityMatrix</code>( <var class="Arg">m</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>An immutable unevaluated <span class="SimpleMath">\(\textit{m} \times \textit{m}\)</span> <strong class="pkg">homalg</strong> identity matrix over the <strong class="pkg">homalg</strongring <var class="Arg">R</var>.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">zz := HomalgRingOfIntegers( );</span>
Z
<span class="GAPprompt">gap></span> <span class="GAPinput">id := HomalgIdentityMatrix( 3, zz );</span>
<An unevaluated 3 x 3 identity matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( id );</span>
[ [  1,  0,  0 ],
  [  0,  1,  0 ],
  [  0,  0,  1 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">id;</span>
<A 3 x 3 identity matrix over an internal ring>
</pre></div>

<p><a id="X7D2E3472879E28AB" name="X7D2E3472879E28AB"></a></p>

<h5>5.2-5 HomalgVoidMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgVoidMatrix</code>( [<var class="Arg">m</var>, ][<var class="Arg">n</var>, ]<var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>A void <span class="SimpleMath">\(\textit{m} \times \textit{n}\)</span> <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X864ACCB08094F0B7" name="X864ACCB08094F0B7"></a></p>

<h5>5.2-6 HomalgMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgMatrix</code>( <var class="Arg">llist</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgMatrix</code>( <var class="Arg">llist</var>, <var class="Arg">m</var>, <var class="Arg">n</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgMatrix</code>( <var class="Arg">list</var>, <var class="Arg">m</var>, <var class="Arg">n</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgMatrix</code>( <var class="Arg">str_llist</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgMatrix</code>( <var class="Arg">str_list</var>, <var class="Arg">m</var>, <var class="Arg">n</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>An immutable evaluated <span class="SimpleMath">\(\textit{m} \times \textit{n}\)</span> <strong class="pkg">homalg</strong> matrix over the <strong class="pkg">homalg</strong> ring <var class="Arg">R</var>.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">zz := HomalgRingOfIntegers( );</span>
Z
<span class="GAPprompt">gap></span> <span class="GAPinput">m := HomalgMatrix( [ [ 1, 2, 3 ], [ 4, 5, 6 ] ], zz );</span>
<A 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( m );</span>
[ [  1,  2,  3 ],
  [  4,  5,  6 ] ]
</pre></div>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">m := HomalgMatrix( [ [ 1, 2, 3 ], [ 4, 5, 6 ] ], 2, 3, zz );</span>
<A 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( m );</span>
[ [  1,  2,  3 ],
  [  4,  5,  6 ] ]
</pre></div>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">m := HomalgMatrix( [ 1, 2, 3,   4, 5, 6 ], 2, 3, zz );</span>
<A 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( m );</span>
[ [  1,  2,  3 ],
  [  4,  5,  6 ] ]
</pre></div>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">m := HomalgMatrix( "[ [ 1, 2, 3 ], [ 4, 5, 6 ] ]", zz );</span>
<A 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( m );</span>
[ [  1,  2,  3 ],
  [  4,  5,  6 ] ]
</pre></div>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">m := HomalgMatrix( "[ [ 1, 2, 3 ], [ 4, 5, 6 ] ]", 2, 3, zz );</span>
<A 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( m );</span>
[ [  1,  2,  3 ],
  [  4,  5,  6 ] ]
</pre></div>

<p>It is nevertheless recommended to use the following form to create <strong class="pkg">homalg</strong> matrices. This form can also be used to define external matrices. Since whitespaces (--> <a href="../../../doc/ref/chap4_mj.html#X7C53CEFC8641B919"><span class="RefLink">Reference: Whitespaces</span></a>) are ignored, they can be used as optical delimiters:</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">m := HomalgMatrix( "[ 1, 2, 3, 4, 5, 6 ]", 2, 3, zz );</span>
<A 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( m );</span>
[ [  1,  2,  3 ],
  [  4,  5,  6 ] ]
</pre></div>

<p>One can split the input string over several lines using the backslash character '\' to end each line</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">m := HomalgMatrix( "[ \

<span class="GAPprompt">></span> <span class="GAPinput">1, 2, 3, \</span>
<span class="GAPprompt">></span> <span class="GAPinput">4, 5, 6  \</span>
<span class="GAPprompt">></span> <span class="GAPinput">]", 2, 3, zz );
<A 2 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( m );</span>
[ [  1,  2,  3 ],
  [  4,  5,  6 ] ]
</pre></div>

<p><a id="X8246E1D17F96DAE7" name="X8246E1D17F96DAE7"></a></p>

<h5>5.2-7 HomalgMatrixListList</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgMatrixListList</code>( <var class="Arg">llist</var>, <var class="Arg">m</var>, <var class="Arg">n</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>Special case of <code class="func">HomalgMatrix</code> (<a href="chap5_mj.html#X864ACCB08094F0B7"><span class="RefLink">5.2-6</span></a>).</p>

<p><a id="X7B127B5584CD012D" name="X7B127B5584CD012D"></a></p>

<h5>5.2-8 HomalgRowVector</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgRowVector</code>( <var class="Arg">entries</var>, <var class="Arg">nr_cols</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>Special case of <code class="func">HomalgMatrix</code> (<a href="chap5_mj.html#X864ACCB08094F0B7"><span class="RefLink">5.2-6</span></a>) for matrices with a single row. <var class="Arg">entries</var> must be a list of ring elements.</p>

<p><a id="X871AF271843FF2B5" name="X871AF271843FF2B5"></a></p>

<h5>5.2-9 HomalgColumnVector</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgColumnVector</code>( <var class="Arg">entries</var>, <var class="Arg">nr_rows</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>Special case of <code class="func">HomalgMatrix</code> (<a href="chap5_mj.html#X864ACCB08094F0B7"><span class="RefLink">5.2-6</span></a>) for matrices with a single column. <var class="Arg">entries</var> must be a list of ring elements.</p>

<p><a id="X872D39C678D0C4AE" name="X872D39C678D0C4AE"></a></p>

<h5>5.2-10 HomalgDiagonalMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ HomalgDiagonalMatrix</code>( <var class="Arg">diag</var>, <var class="Arg">R</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>An immutable unevaluated diagonal <strong class="pkg">homalg</strong> matrix over the <strong class="pkg">homalg</strong> ring <var class="Arg">R</var>. The diagonal consists of the entries of the list <var class="Arg">diag</var>.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">zz := HomalgRingOfIntegers( );</span>
Z
<span class="GAPprompt">gap></span> <span class="GAPinput">d := HomalgDiagonalMatrix( [ 1, 2, 3 ], zz );</span>
<An unevaluated diagonal 3 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( d );</span>
[ [  1,  0,  0 ],
  [  0,  2,  0 ],
  [  0,  0,  3 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">d;</span>
<A diagonal 3 x 3 matrix over an internal ring>
</pre></div>

<p><a id="X81225377833C4644" name="X81225377833C4644"></a></p>

<h5><code>5.2-11 \*</code></h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ \*</code>( <var class="Arg">R</var>, <var class="Arg">mat</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ \*</code>( <var class="Arg">mat</var>, <var class="Arg">R</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>An immutable evaluated <strong class="pkg">homalg</strong> matrix over the <strong class="pkg">homalg</strong> ring <var class="Arg">R</var> having the same entries as the matrix <var class="Arg">mat</var>. Syntax: <var class="Arg">R</var> <code class="code">*</code> <var class="Arg">mat</var> or <var class="Arg">mat</var> <code class="code">*</code> <var class="Arg">R</var></p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">zz := HomalgRingOfIntegers( );</span>
Z
<span class="GAPprompt">gap></span> <span class="GAPinput">Z4 := zz / 4;</span>
Z/( 4 )
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( Z4 );</span>
<A residue class ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">d := HomalgDiagonalMatrix( [ 2 .. 4 ], zz );</span>
<An unevaluated diagonal 3 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">d2 := Z4 * d; ## or d2 := d * Z4;</span>
<A 3 x 3 matrix over a residue class ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( d2 );</span>
[ [  2,  0,  0 ],
  [  0,  3,  0 ],
  [  0,  0,  4 ] ]

modulo [ 4 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">d;</span>
<A diagonal 3 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">ZeroRows( d );</span>
[  ]
<span class="GAPprompt">gap></span> <span class="GAPinput">ZeroRows( d2 );</span>
[ 3 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">d;</span>
<A non-zero diagonal 3 x 3 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">d2;</span>
<A non-zero 3 x 3 matrix over a residue class ring>
</pre></div>

<p><a id="X7C4E49D287011DCD" name="X7C4E49D287011DCD"></a></p>

<h5>5.2-12 CoercedMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ CoercedMatrix</code>( <var class="Arg">ring_from</var>, <var class="Arg">ring_to</var>, <var class="Arg">mat</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ CoercedMatrix</code>( <var class="Arg">ring_to</var>, <var class="Arg">mat</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: a <strong class="pkg">homalg</strong> matrix</p>

<p>A copy of the <strong class="pkg">homalg</strong> matrix <var class="Arg">mat</var> with <strong class="pkg">homalg</strong> ring <var class="Arg">ring_from</var> in the <strong class="pkg">homalg</strong> ring <var class="Arg">ring_to</var>.</p>

<p>(for the installed standard method see <code class="func">Eval</code> (<a href="chapC_mj.html#X87BF7FD083D0EE88"><span class="RefLink">C.4-9</span></a>))</p>

<p><a id="X7D92ECFC8030CF40" name="X7D92ECFC8030CF40"></a></p>

<h4>5.3 <span class="Heading">Matrices: Properties</span></h4>

<p><a id="X858B5AF57D5BC90A" name="X858B5AF57D5BC90A"></a></p>

<h5>5.3-1 IsZero</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsZero</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p>Check if the <strong class="pkg">homalg</strong> matrix <var class="Arg">A</var> is a zero matrix, taking possible ring relations into account.</p>

<p>(for the installed standard method see <code class="func">IsZeroMatrix</code> (<a href="chapB_mj.html#X849BB912798A01EB"><span class="RefLink">B.1-20</span></a>))</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">zz := HomalgRingOfIntegers( );</span>
Z
<span class="GAPprompt">gap></span> <span class="GAPinput">A := HomalgMatrix( "[ 2 ]", zz );</span>
<A 1 x 1 matrix over an internal ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Z2 := zz / 2;</span>
Z/( 2 )
<span class="GAPprompt">gap></span> <span class="GAPinput">A := Z2 * A;</span>
<A 1 x 1 matrix over a residue class ring>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( A );</span>
[ [  2 ] ]

modulo [ 2 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsZero( A );</span>
true
</pre></div>

<p><a id="X814D78347858EC13" name="X814D78347858EC13"></a></p>

<h5>5.3-2 IsOne</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsOne</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p>Check if the <strong class="pkg">homalg</strong> matrix <var class="Arg">A</var> is an identity matrix, taking possible ring relations into account.</p>

<p>(for the installed standard method see <code class="func">IsIdentityMatrix</code> (<a href="chapB_mj.html#X80C1856D82172268"><span class="RefLink">B.2-2</span></a>))</p>

<p><a id="X7813653578F174AB" name="X7813653578F174AB"></a></p>

<h5>5.3-3 IsUnitFree</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsUnitFree</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X8612CB4A82D6D79E" name="X8612CB4A82D6D79E"></a></p>

<h5>5.3-4 IsPermutationMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsPermutationMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7EEE3E9780EBA607" name="X7EEE3E9780EBA607"></a></p>

<h5>5.3-5 IsSpecialSubidentityMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsSpecialSubidentityMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X8672364D79EBCC5D" name="X8672364D79EBCC5D"></a></p>

<h5>5.3-6 IsSubidentityMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsSubidentityMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7EF95CAD78BDE12F" name="X7EF95CAD78BDE12F"></a></p>

<h5>5.3-7 IsLeftRegular</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsLeftRegular</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X87C369D27D6AAF68" name="X87C369D27D6AAF68"></a></p>

<h5>5.3-8 IsRightRegular</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsRightRegular</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X856E1D217A47EE8C" name="X856E1D217A47EE8C"></a></p>

<h5>5.3-9 IsInvertibleMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsInvertibleMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7A4FA27C80BC42D1" name="X7A4FA27C80BC42D1"></a></p>

<h5>5.3-10 IsLeftInvertibleMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsLeftInvertibleMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7E43FDE57E8449B6" name="X7E43FDE57E8449B6"></a></p>

<h5>5.3-11 IsRightInvertibleMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsRightInvertibleMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7BFC9266823F2C15" name="X7BFC9266823F2C15"></a></p>

<h5>5.3-12 IsEmptyMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsEmptyMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7EEC8E768178696E" name="X7EEC8E768178696E"></a></p>

<h5>5.3-13 IsDiagonalMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsDiagonalMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p>Check if the <strong class="pkg">homalg</strong> matrix <var class="Arg">A</var> is a diagonal matrix, taking possible ring relations into account.</p>

<p>(for the installed standard method see <code class="func">IsDiagonalMatrix</code> (<a href="chapB_mj.html#X7B6420E88418316B"><span class="RefLink">B.2-3</span></a>))</p>

<p><a id="X7848E6A0783B7428" name="X7848E6A0783B7428"></a></p>

<h5>5.3-14 IsScalarMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsScalarMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X8740E71C799C0BCC" name="X8740E71C799C0BCC"></a></p>

<h5>5.3-15 IsUpperTriangularMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsUpperTriangularMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X853A5B988306DBFE" name="X853A5B988306DBFE"></a></p>

<h5>5.3-16 IsLowerTriangularMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsLowerTriangularMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7976C42B7FA905EC" name="X7976C42B7FA905EC"></a></p>

<h5>5.3-17 IsStrictUpperTriangularMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsStrictUpperTriangularMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7B0C78AF8056D650" name="X7B0C78AF8056D650"></a></p>

<h5>5.3-18 IsStrictLowerTriangularMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsStrictLowerTriangularMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X81A2C3F67C99A3C2" name="X81A2C3F67C99A3C2"></a></p>

<h5>5.3-19 IsUpperStairCaseMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsUpperStairCaseMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7B3A5DE1860373F0" name="X7B3A5DE1860373F0"></a></p>

<h5>5.3-20 IsLowerStairCaseMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsLowerStairCaseMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7BAAE75A8660D7A5" name="X7BAAE75A8660D7A5"></a></p>

<h5>5.3-21 IsTriangularMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsTriangularMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7F520F89821A8602" name="X7F520F89821A8602"></a></p>

<h5>5.3-22 IsBasisOfRowsMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsBasisOfRowsMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7D46613983DC5302" name="X7D46613983DC5302"></a></p>

<h5>5.3-23 IsBasisOfColumnsMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsBasisOfColumnsMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X86445AD281024339" name="X86445AD281024339"></a></p>

<h5>5.3-24 IsReducedBasisOfRowsMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsReducedBasisOfRowsMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7E6BB540865C0344" name="X7E6BB540865C0344"></a></p>

<h5>5.3-25 IsReducedBasisOfColumnsMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsReducedBasisOfColumnsMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7E6E51517822CB3F" name="X7E6E51517822CB3F"></a></p>

<h5>5.3-26 IsInitialMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsInitialMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( filter )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X7EE624707ACEC26E" name="X7EE624707ACEC26E"></a></p>

<h5>5.3-27 IsInitialIdentityMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsInitialIdentityMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( filter )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X802794217F56DE51" name="X802794217F56DE51"></a></p>

<h5>5.3-28 IsVoidMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsVoidMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( filter )</td></tr></table></div>
<p>Returns: <code class="code">true</code> or <code class="code">false</code></p>

<p><var class="Arg">A</var> is a <strong class="pkg">homalg</strong> matrix.</p>

<p><a id="X86F766077C89558F" name="X86F766077C89558F"></a></p>

<h4>5.4 <span class="Heading">Matrices: Attributes</span></h4>

<p><a id="X7C72971F7D0CA3C8" name="X7C72971F7D0CA3C8"></a></p>

<h5>5.4-1 NumberRows</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ NumberRows</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a nonnegative integer</p>

<p>The number of rows of the matrix <var class="Arg">A</var>.</p>

<p>(for the installed standard method see <code class="func">NumberRows</code> (<a href="chapB_mj.html#X7F4D7FAF821DA1C2"><span class="RefLink">B.1-21</span></a>))</p>

<p><a id="X847D45BF7F2BC67C" name="X847D45BF7F2BC67C"></a></p>

<h5>5.4-2 NumberColumns</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ NumberColumns</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a nonnegative integer</p>

<p>The number of columns of the matrix <var class="Arg">A</var>.</p>

<p>(for the installed standard method see <code class="func">NumberColumns</code> (<a href="chapB_mj.html#X7DFA534B7AFA2E17"><span class="RefLink">B.1-22</span></a>))</p>

<p><a id="X83045F6F82C180E1" name="X83045F6F82C180E1"></a></p>

<h5>5.4-3 DeterminantMat</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ DeterminantMat</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a ring element</p>

<p>The determinant of the quadratic matrix <var class="Arg">A</var>.</p>

<p>You can invoke it with <code class="code">Determinant</code>( <var class="Arg">A</var> ).</p>

<p>(for the installed standard method see <code class="func">Determinant</code> (<a href="chapB_mj.html#X80A573257D7F2E1A"><span class="RefLink">B.1-23</span></a>))</p>

<p><a id="X828225E0857B1FDA" name="X828225E0857B1FDA"></a></p>

<h5>5.4-4 ZeroRows</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ ZeroRows</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a (possibly empty) list of positive integers</p>

<p>The list of zero rows of the matrix <var class="Arg">A</var>.</p>

<p>(for the installed standard method see <code class="func">ZeroRows</code> (<a href="chapB_mj.html#X872B70367F412945"><span class="RefLink">B.2-4</span></a>))</p>

<p><a id="X870D761F7AB96D12" name="X870D761F7AB96D12"></a></p>

<h5>5.4-5 ZeroColumns</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ ZeroColumns</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a (possibly empty) list of positive integers</p>

<p>The list of zero columns of the matrix <var class="Arg">A</var>.</p>

<p>(for the installed standard method see <code class="func">ZeroColumns</code> (<a href="chapB_mj.html#X7A469E6D7EA63BB6"><span class="RefLink">B.2-5</span></a>))</p>

<p><a id="X7991ED337C73065A" name="X7991ED337C73065A"></a></p>

<h5>5.4-6 NonZeroRows</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ NonZeroRows</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a (possibly empty) list of positive integers</p>

<p>The list of nonzero rows of the matrix <var class="Arg">A</var>.</p>

<p><a id="X7F335DCB7B8781E4" name="X7F335DCB7B8781E4"></a></p>

<h5>5.4-7 NonZeroColumns</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ NonZeroColumns</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a (possibly empty) list of positive integers</p>

<p>The list of nonzero columns of the matrix <var class="Arg">A</var>.</p>

<p><a id="X7B7A073D7E1FAEA4" name="X7B7A073D7E1FAEA4"></a></p>

<h5>5.4-8 PositionOfFirstNonZeroEntryPerRow</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ PositionOfFirstNonZeroEntryPerRow</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a list of nonnegative integers</p>

<p>The list of positions of the first nonzero entry per row of the matrix <var class="Arg">A</var>, else zero.</p>

<p><a id="X83B389A97A703E42" name="X83B389A97A703E42"></a></p>

<h5>5.4-9 PositionOfFirstNonZeroEntryPerColumn</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ PositionOfFirstNonZeroEntryPerColumn</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a list of nonnegative integers</p>

<p>The list of positions of the first nonzero entry per column of the matrix <var class="Arg">A</var>, else zero.</p>

<p><a id="X862841E68674FA2A" name="X862841E68674FA2A"></a></p>

<h5>5.4-10 RowRankOfMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ RowRankOfMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a nonnegative integer</p>

<p>The row rank of the matrix <var class="Arg">A</var>.</p>

<p><a id="X7C61862E81CABD51" name="X7C61862E81CABD51"></a></p>

<h5>5.4-11 ColumnRankOfMatrix</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ ColumnRankOfMatrix</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a nonnegative integer</p>

<p>The column rank of the matrix <var class="Arg">A</var>.</p>

<p><a id="X7EFCE38281AE60F9" name="X7EFCE38281AE60F9"></a></p>

--> --------------------

--> maximum size reached

--> --------------------

97%


¤ Dauer der Verarbeitung: 0.32 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.