Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  chap1.html   Sprache: HTML

 
 products/sources/formale Sprachen/GAP/pkg/cvec/doc/chap1.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>
<title>GAP (cvec) - Chapter 1: Introduction</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="chap1"  onload="jscontent()">


<div class="chlinktop"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a>  <a href="chap1.html">1</a>  <a href="chap2.html">2</a>  <a href="chap3.html">3</a>  <a href="chap4.html">4</a>  <a href="chap5.html">5</a>  <a href="chap6.html">6</a>  <a href="chap7.html">7</a>  <a href="chap8.html">8</a>  <a href="chap9.html">9</a>  <a href="chapInd.html">Ind</a>  </div>

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

<p id="mathjaxlink" class="pcenter"><a href="chap1_mj.html">[MathJax on]</a></p>
<p><a id="X7DFB63A97E67C0A1" name="X7DFB63A97E67C0A1"></a></p>
<div class="ChapSects"><a href="chap1.html#X7DFB63A97E67C0A1">1 <span class="Heading">Introduction</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap1.html#X873C99678745ABAF">1.1 <span class="Heading">Philosophy</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap1.html#X786BACDB82918A65">1.2 <span class="Heading">Overview over this manual</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap1.html#X80D704CC7EBFDF7A">1.3 <span class="Heading">Feedback</span></a>
</span>
</div>
</div>

<h3>1 <span class="Heading">Introduction</span></h3>

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

<h4>1.1 <span class="Heading">Philosophy</span></h4>

<p>This package implements a complete infrastructure for vectors over finite fields. The basic idea is, that one can store an element of a finite field using only a few bits rather than a full machine word. Therefore one can pack more than one finite field element in a machine word. This approach not only saves memory but also allows fast arithmetic.</p>

<p>Contrary to other implementations this package uses long word instructions for arithmetic and other operations rather than table lookups, because modern microprocessor designs seem to support faster memory access in this way and memory access is the main limiting factor for computations over finite fields. This approach also allows for bigger finite fields with more than 256 elements. For a more detailed descriptions of this design see Chapter <a href="chap3.html#X81F8AEBD87002F6F"><span class="RefLink">3</span></a>.</p>

<p>The main purpose of this implementation is to use it in <strong class="pkg">MeatAxe</strong>-like applications, that is, working with matrices consisting of compressed vectors over finite fields, doing linear algebra calculations like nullspaces, spinning of vectors, multiplying and inverting matrices and the like. Another purpose could be matrix group calculations. Usually in such computations, the base field does not change too often and not many different lengths of vectors occur. This implementation is optimized with these applications in mind and might not be very efficient for other purposes like using compressed vectors as coefficient lists of polynomials.</p>

<p>Another important point is that compressed vectors in this package do not even try to behave exactly like <strong class="pkg">GAP</strong> lists. To the contrary, they disallow many operations that are possible for <strong class="pkg">GAP</strong> lists for example changing their length or assigning arbitrary <strong class="pkg">GAP</strong> objects to positions in the vector. The reason for this is that the chosen data structure does not allow to assign anything but elements of the one base field to positions in the vector and the option to change the representation <q>on the fly</q> is not desirable in most applications. On the other hand one can be relatively sure not to <q>lose compression</q> along the way.</p>

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

<h4>1.2 <span class="Heading">Overview over this manual</span></h4>

<p>Chapter <a href="chap2.html#X81D63A85782CD477"><span class="RefLink">2</span></a> describes the installation of this package. Chapter <a href="chap3.html#X81F8AEBD87002F6F"><span class="RefLink">3</span></a> describes the basic design and all the data structures used in this package, including the external representation of matrices on storage. These descriptions might be very valuable to understand the behaviour of the implementation and various performance issues. Those and other performance issues are covered in Chapter <a href="chap7.html#X854F8C5579845066"><span class="RefLink">7</span></a>, where you mainly find hints on how to tune your own programs that use this package. Chapters <a href="chap4.html#X7D12102B824C97B4"><span class="RefLink">4</span></a> to <a href="chap5.html#X812CCAB278643A59"><span class="RefLink">5</span></a> describe the available functionality for vectors and matrices respectively. Chapter <a href="chap8.html#X865BC7FE84250875"><span class="RefLink">8</span></a> describes, how the functionality in this package is or is not usable in connection with the <strong class="pkg">GAP</strong> library. Finally, Chapter <a href="chap9.html#X7A489A5D79DA9E5C"><span class="RefLink">9</span></a> shows instructive examples for the usage of this package.</p>

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

<h4>1.3 <span class="Heading">Feedback</span></h4>

<p>For bug reports, feature requests and suggestions, please use our <span class="URL"><a href="https://github.com/gap-packages/cvec/issues">issue tracker</a></span>.</p>


<div class="chlinkprevnextbot"> <a href="chap0.html">[Top of Book]</a>   <a href="chap0.html#contents">[Contents]</a>    <a href="chap0.html">[Previous Chapter]</a>    <a href="chap2.html">[Next Chapter]</a>   </div>


<div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a>  <a href="chap1.html">1</a>  <a href="chap2.html">2</a>  <a href="chap3.html">3</a>  <a href="chap4.html">4</a>  <a href="chap5.html">5</a>  <a href="chap6.html">6</a>  <a href="chap7.html">7</a>  <a href="chap8.html">8</a>  <a href="chap9.html">9</a>  <a href="chapInd.html">Ind</a>  </div>

<hr />
<p class="foot">generated by <a href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc">GAPDoc2HTML</a></p>
</body>
</html>

100%


¤ Dauer der Verarbeitung: 0.1 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.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge