<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>linbox: FieldEnvelope< Field > Class Template Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.4 --> <script type="text/javascript"> function hasClass(ele,cls) { return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)')); } function addClass(ele,cls) { if (!this.hasClass(ele,cls)) ele.className += " "+cls; } function removeClass(ele,cls) { if (hasClass(ele,cls)) { var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)'); ele.className=ele.className.replace(reg,' '); } } function toggleVisibility(linkObj) { var base = linkObj.getAttribute('id'); var summary = document.getElementById(base + '-summary'); var content = document.getElementById(base + '-content'); var trigger = document.getElementById(base + '-trigger'); if ( hasClass(linkObj,'closed') ) { summary.style.display = 'none'; content.style.display = 'block'; trigger.src = 'open.png'; removeClass(linkObj,'closed'); addClass(linkObj,'opened'); } else if ( hasClass(linkObj,'opened') ) { summary.style.display = 'block'; content.style.display = 'none'; trigger.src = 'closed.png'; removeClass(linkObj,'opened'); addClass(linkObj,'closed'); } return false; } </script> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">linbox</div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespace_lin_box.html">LinBox</a> </li> <li class="navelem"><a class="el" href="class_lin_box_1_1_field_envelope.html">FieldEnvelope</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pro-attribs">Protected Attributes</a> </div> <div class="headertitle"> <div class="title">FieldEnvelope< Field > Class Template Reference<div class="ingroups"><a class="el" href="group__field.html">field</a></div></div> </div> </div> <div class="contents"> <!-- doxytag: class="LinBox::FieldEnvelope" --><!-- doxytag: inherits="LinBox::FieldAbstract" --> <p>Derived class used to implement the field archetypeHelps to minimize code bloat. <a href="class_lin_box_1_1_field_envelope.html#details">More...</a></p> <p><code>#include <envelope.h></code></p> <div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"> <img id="dynsection-0-trigger" src="closed.png"/> Inheritance diagram for FieldEnvelope< Field >:</div> <div id="dynsection-0-summary" class="dynsummary" style="display:block;"> </div> <div id="dynsection-0-content" class="dyncontent" style="display:none;"> <div class="center"> <img src="class_lin_box_1_1_field_envelope.png" usemap="#FieldEnvelope< Field >_map" alt=""/> <map id="FieldEnvelope< Field >_map" name="FieldEnvelope< Field >_map"> <area href="class_lin_box_1_1_field_abstract.html" title="field base class." alt="FieldAbstract" shape="rect" coords="0,0,145,24"/> </map> </div></div> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-types"></a> Public Types</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_lin_box_1_1_element_envelope.html">ElementEnvelope</a>< <a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#aafd25cc504cbd7e5dac63a07d00f26bf">Element</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">element type. <a href="#aafd25cc504cbd7e5dac63a07d00f26bf"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_lin_box_1_1_rand_iter_envelope.html">RandIterEnvelope</a>< <a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a6773510063ce3540e0c5604490d021bd">RandIter</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Random iterator generator type. <a href="#a6773510063ce3540e0c5604490d021bd"></a><br/></td></tr> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td colspan="2"><div class="groupHeader">Object Management</div></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#aa1dae1ca67d9194a0de6261bfd2a0c22">FieldEnvelope</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <a href="#aa1dae1ca67d9194a0de6261bfd2a0c22"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#aad4dbe5d90ff552569a0e48366051ddc">FieldEnvelope</a> (const <a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a> &F)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor from field to be wrapped. <a href="#aad4dbe5d90ff552569a0e48366051ddc"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#af08fb7703cf90ba370a68805d12e5175">FieldEnvelope</a> (const <a class="el" href="class_lin_box_1_1_field_envelope.html">FieldEnvelope</a> &E)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <a href="#af08fb7703cf90ba370a68805d12e5175"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_field_abstract.html">FieldAbstract</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a262dfb4f3ee9562f43deab8892ee33b2">clone</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Virtual copy constructor. <a href="#a262dfb4f3ee9562f43deab8892ee33b2"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_field_abstract.html">FieldAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#add4d0fe7ee6648c123135063ad615902">operator=</a> (const <a class="el" href="class_lin_box_1_1_field_abstract.html">FieldAbstract</a> &F)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator. <a href="#add4d0fe7ee6648c123135063ad615902"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a2fb68bbaad94d7bcaa6ac885ec419bf7">init</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> &y=0) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialization of field base element from an integer. <a href="#a2fb68bbaad94d7bcaa6ac885ec419bf7"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a10841216d71b4a65b0eb3bbea2f84560">convert</a> (<a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Conversion of field base element to a template class T. <a href="#a10841216d71b4a65b0eb3bbea2f84560"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a673f829e78dd90ff25a1fcbbcbb2034c">assign</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Assignment of one field base element to another. <a href="#a673f829e78dd90ff25a1fcbbcbb2034c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#ade46ce0a344fcc718625a2296a8104ab">cardinality</a> (<a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> &c) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Cardinality. <a href="#ade46ce0a344fcc718625a2296a8104ab"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#aea4d4c3f059080408c3a6344cf9fff10">characteristic</a> (<a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> &c) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Characteristic. <a href="#aea4d4c3f059080408c3a6344cf9fff10"></a><br/></td></tr> <tr><td colspan="2"><div class="groupHeader">Arithmetic Operations</div></td></tr> <tr><td colspan="2"><div class="groupText"><p>x <- y op z; x <- op y These operations require all elements, including x, to be initialized before the operation is called.</p> <p>Uninitialized field base elements will give undefined results. </p> </div></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#ad2ac546fc349e938c31e5cf280464148">areEqual</a> (const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Equality of two elements. <a href="#ad2ac546fc349e938c31e5cf280464148"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#ad79742154851ab5aaf333135dbb4c306">add</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &z) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Addition. <a href="#ad79742154851ab5aaf333135dbb4c306"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#ae96d5d3ccd2bbd123b991534a0a9f3bc">sub</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &z) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Subtraction. <a href="#ae96d5d3ccd2bbd123b991534a0a9f3bc"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a98a253ef2f843aa213b79c3f13fc821c">mul</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &z) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiplication. <a href="#a98a253ef2f843aa213b79c3f13fc821c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a8b893efc55555869218421756dfaa7bd">div</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &z) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Division. <a href="#a8b893efc55555869218421756dfaa7bd"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a14df70f3cfcabb0292e438646da0c306">neg</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Additive <a class="el" href="class_lin_box_1_1_inverse.html" title="A Blackbox for the inverse.">Inverse</a> (Negation). <a href="#a14df70f3cfcabb0292e438646da0c306"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a5c82db46e3aed7f7b7b13ff7a3678d7f">inv</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiplicative <a class="el" href="class_lin_box_1_1_inverse.html" title="A Blackbox for the inverse.">Inverse</a>. <a href="#a5c82db46e3aed7f7b7b13ff7a3678d7f"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a5341ec8c8577c85915cc94b6ce4109f2">axpy</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &r, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &a, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Natural AXPY. <a href="#a5341ec8c8577c85915cc94b6ce4109f2"></a><br/></td></tr> <tr><td colspan="2"><div class="groupHeader">Inplace Arithmetic Operations</div></td></tr> <tr><td colspan="2"><div class="groupText"><p>x <- x op y; x <- op x </p> </div></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a175255ecaff220c008279280318dbe23">isZero</a> (const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Zero equality. <a href="#a175255ecaff220c008279280318dbe23"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a33bc11daa67557dcd93142a42c5d12e1">isOne</a> (const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">One equality. <a href="#a33bc11daa67557dcd93142a42c5d12e1"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#af71d1721f7741100988bc6a64e8b6ef9">addin</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Inplace Addition. <a href="#af71d1721f7741100988bc6a64e8b6ef9"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#abb8e2df18b09bdfaf05ed7d6576f3256">subin</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Inplace Subtraction. <a href="#abb8e2df18b09bdfaf05ed7d6576f3256"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#aa488c0e8732503dd36268819b44b6826">mulin</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Inplace Multiplication. <a href="#aa488c0e8732503dd36268819b44b6826"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#ab146c35c8b3f267aafd3881b81ce48d5">divin</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Inplace Division. <a href="#ab146c35c8b3f267aafd3881b81ce48d5"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a0c82d6a4688c13b7ec54f6ad5746ffd6">negin</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Inplace Additive <a class="el" href="class_lin_box_1_1_inverse.html" title="A Blackbox for the inverse.">Inverse</a> (Inplace Negation). <a href="#a0c82d6a4688c13b7ec54f6ad5746ffd6"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a3850e9868ea1093cbe79f8979fc00ad3">invin</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Inplace Multiplicative <a class="el" href="class_lin_box_1_1_inverse.html" title="A Blackbox for the inverse.">Inverse</a>. <a href="#a3850e9868ea1093cbe79f8979fc00ad3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#aa9a4fc3b266e1d0a54857b420af225f0">axpyin</a> (<a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &r, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &a, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Inplace AXPY. <a href="#aa9a4fc3b266e1d0a54857b420af225f0"></a><br/></td></tr> <tr><td colspan="2"><div class="groupHeader">Input/Output Operations</div></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::ostream & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#acd22def76f55c19076bb6c86104beaf0">write</a> (std::ostream &os) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Print field. <a href="#acd22def76f55c19076bb6c86104beaf0"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::istream & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a7f1e7ece6c12a9a3feb091f90c7c9ac1">read</a> (std::istream &is)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Read field. <a href="#a7f1e7ece6c12a9a3feb091f90c7c9ac1"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::ostream & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#ace4a5e73238f68cfb9b39567800cddbd">write</a> (std::ostream &os, const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Print field base element. <a href="#ace4a5e73238f68cfb9b39567800cddbd"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::istream & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a52636cdb3a33f02a60ff54047a2bd9ad">read</a> (std::istream &is, <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> &x) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Read field base element. <a href="#a52636cdb3a33f02a60ff54047a2bd9ad"></a><br/></td></tr> <tr><td colspan="2"><h2><a name="pro-attribs"></a> Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79592e36e612f5679eb9b5cedc6162ef"></a><!-- doxytag: member="LinBox::FieldEnvelope::_field" ref="a79592e36e612f5679eb9b5cedc6162ef" args="" --> <a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_field_envelope.html#a79592e36e612f5679eb9b5cedc6162ef">_field</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Wrapped field. <br/></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><h3>template<class Field><br/> class LinBox::FieldEnvelope< Field ></h3> <p>Derived class used to implement the field archetype</p> <p>Helps to minimize code bloat. </p> <p>This class implements all purely virtual member functions of the abstract base class. This class is used to wrap a <a class="el" href="namespace_lin_box.html" title="Namespace in which all linbox code resides.">LinBox</a> field so that it might be used with the Field archetype. </p> </div><hr/><h2>Member Typedef Documentation</h2> <a class="anchor" id="aafd25cc504cbd7e5dac63a07d00f26bf"></a><!-- doxytag: member="LinBox::FieldEnvelope::Element" ref="aafd25cc504cbd7e5dac63a07d00f26bf" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="class_lin_box_1_1_element_envelope.html">ElementEnvelope</a><<a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a>> <a class="el" href="class_lin_box_1_1_element_abstract.html">Element</a></td> </tr> </table> </div> <div class="memdoc"> <p>element type. </p> <p>It is derived from the class <a class="el" href="class_lin_box_1_1_element_abstract.html" title="Abstract element base class, a technicality.">ElementAbstract</a>, and it must contain a wrapped field element. </p> <p>Reimplemented from <a class="el" href="class_lin_box_1_1_field_abstract.html#ad12502ddf7557692bed28f01509d6ad4">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a24cb2b4aa01cc4cd5327dc44cba68b15">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a6773510063ce3540e0c5604490d021bd"></a><!-- doxytag: member="LinBox::FieldEnvelope::RandIter" ref="a6773510063ce3540e0c5604490d021bd" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="class_lin_box_1_1_rand_iter_envelope.html">RandIterEnvelope</a><<a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a>> <a class="el" href="class_lin_box_1_1_rand_iter_abstract.html">RandIter</a></td> </tr> </table> </div> <div class="memdoc"> <p>Random iterator generator type. </p> <p>It is derived from the class <a class="el" href="class_lin_box_1_1_rand_iter_abstract.html" title="Random field element generator.">RandIterAbstract</a>, and it must contain a wrapped field random iterator generator. </p> <p>Reimplemented from <a class="el" href="class_lin_box_1_1_field_abstract.html#a5090644d4584268b73899c8a75d9cb7b">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a5688da4c0da10e431c91763d2d899591">RingEnvelope< Ring ></a>.</p> </div> </div> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="aa1dae1ca67d9194a0de6261bfd2a0c22"></a><!-- doxytag: member="LinBox::FieldEnvelope::FieldEnvelope" ref="aa1dae1ca67d9194a0de6261bfd2a0c22" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_field_envelope.html">FieldEnvelope</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Default constructor. </p> <p>In this implementation, this means copying the field <code>E._field</code>. </p> </div> </div> <a class="anchor" id="aad4dbe5d90ff552569a0e48366051ddc"></a><!-- doxytag: member="LinBox::FieldEnvelope::FieldEnvelope" ref="aad4dbe5d90ff552569a0e48366051ddc" args="(const Field &F)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_field_envelope.html">FieldEnvelope</a> </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a> & </td> <td class="paramname"><em>F</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor from field to be wrapped. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">F</td><td>Field object to be wrapped. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="af08fb7703cf90ba370a68805d12e5175"></a><!-- doxytag: member="LinBox::FieldEnvelope::FieldEnvelope" ref="af08fb7703cf90ba370a68805d12e5175" args="(const FieldEnvelope &E)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_field_envelope.html">FieldEnvelope</a> </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_field_envelope.html">FieldEnvelope</a>< <a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a> > & </td> <td class="paramname"><em>E</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Copy constructor. </p> <p>Constructs <a class="el" href="class_lin_box_1_1_field_envelope.html" title="Derived class used to implement the field archetypeHelps to minimize code bloat.">FieldEnvelope</a> object by copying the field. This is required to allow field objects to be passed by value into functions. In this implementation, this means copying the field <code>E._field</code>. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">E</td><td><a class="el" href="class_lin_box_1_1_field_envelope.html" title="Derived class used to implement the field archetypeHelps to minimize code bloat.">FieldEnvelope</a> object. </td></tr> </table> </dd> </dl> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a262dfb4f3ee9562f43deab8892ee33b2"></a><!-- doxytag: member="LinBox::FieldEnvelope::clone" ref="a262dfb4f3ee9562f43deab8892ee33b2" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_field_abstract.html">FieldAbstract</a>* clone </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Virtual copy constructor. </p> <p>Required because constructors cannot be virtual. Passes construction on to derived classes. This function is not part of the common object interface. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>pointer to new object in dynamic memory. </dd></dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a1e517fe5ca94d1a5adfcc540ce099fb7">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a262dfb4f3ee9562f43deab8892ee33b2">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="add4d0fe7ee6648c123135063ad615902"></a><!-- doxytag: member="LinBox::FieldEnvelope::operator=" ref="add4d0fe7ee6648c123135063ad615902" args="(const FieldAbstract &F)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_field_abstract.html">FieldAbstract</a>& operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_field_abstract.html">FieldAbstract</a> & </td> <td class="paramname"><em>F</em></td><td>)</td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Assignment operator. </p> <p>Required by abstract base class. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to <a class="el" href="class_lin_box_1_1_field_abstract.html" title="field base class.">FieldAbstract</a> object for self </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">F</td><td>constant reference to <a class="el" href="class_lin_box_1_1_field_abstract.html" title="field base class.">FieldAbstract</a> object </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a0d91cef5a1d15e6642823e2ae4f7679f">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#add4d0fe7ee6648c123135063ad615902">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a2fb68bbaad94d7bcaa6ac885ec419bf7"></a><!-- doxytag: member="LinBox::FieldEnvelope::init" ref="a2fb68bbaad94d7bcaa6ac885ec419bf7" args="(ElementAbstract &x, const integer &y=0) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& init </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> & </td> <td class="paramname"><em>y</em> = <code>0</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Initialization of field base element from an integer. </p> <p>Behaves like C++ allocator construct. This function assumes the output field base element x has already been constructed, but that it is not already initialized. This is not a specialization of the template function because such a specialization is not allowed inside the class declaration. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to field base element. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element to contain output (reference returned). </td></tr> <tr><td class="paramname">y</td><td>integer. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a47bfdcccd591af2c099b7feed89e8131">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a2fb68bbaad94d7bcaa6ac885ec419bf7">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a10841216d71b4a65b0eb3bbea2f84560"></a><!-- doxytag: member="LinBox::FieldEnvelope::convert" ref="a10841216d71b4a65b0eb3bbea2f84560" args="(integer &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a>& convert </td> <td>(</td> <td class="paramtype"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Conversion of field base element to a template class T. </p> <p>This function assumes the output field base element x has already been constructed, but that it is not already initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to template class T. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>template class T to contain output (reference returned). </td></tr> <tr><td class="paramname">y</td><td>constant field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#ad7cc3358cf87219227aba5c25e582a45">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a10841216d71b4a65b0eb3bbea2f84560">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a673f829e78dd90ff25a1fcbbcbb2034c"></a><!-- doxytag: member="LinBox::FieldEnvelope::assign" ref="a673f829e78dd90ff25a1fcbbcbb2034c" args="(ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& assign </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Assignment of one field base element to another. </p> <p>This function assumes both field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a8611ea8bbd3d1a3f18545b1181bd8555">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a673f829e78dd90ff25a1fcbbcbb2034c">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="ade46ce0a344fcc718625a2296a8104ab"></a><!-- doxytag: member="LinBox::FieldEnvelope::cardinality" ref="ade46ce0a344fcc718625a2296a8104ab" args="(integer &c) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a>& cardinality </td> <td>(</td> <td class="paramtype"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> & </td> <td class="paramname"><em>c</em></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Cardinality. </p> <p>Return integer representing cardinality of the domain. Returns a non-negative integer for all domains with finite cardinality, and returns -1 to signify a domain of infinite cardinality. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>integer representing cardinality of the domain </dd></dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a75afa5a62104a85bf4ae0f90e07b5073">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#ade46ce0a344fcc718625a2296a8104ab">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="aea4d4c3f059080408c3a6344cf9fff10"></a><!-- doxytag: member="LinBox::FieldEnvelope::characteristic" ref="aea4d4c3f059080408c3a6344cf9fff10" args="(integer &c) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a>& characteristic </td> <td>(</td> <td class="paramtype"><a class="el" href="group__integers.html#gad62eceb96963b157a2357aba991f6d6e">integer</a> & </td> <td class="paramname"><em>c</em></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Characteristic. </p> <p>Return integer representing characteristic of the domain. Returns a positive integer to all domains with finite characteristic, and returns 0 to signify a domain of infinite characteristic. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>integer representing characteristic of the domain. </dd></dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a8b06132af70bb3b6411ef5f45a7e9464">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#aea4d4c3f059080408c3a6344cf9fff10">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="ad2ac546fc349e938c31e5cf280464148"></a><!-- doxytag: member="LinBox::FieldEnvelope::areEqual" ref="ad2ac546fc349e938c31e5cf280464148" args="(const ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool areEqual </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Equality of two elements. </p> <p>This function assumes both field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>boolean true if equal, false if not. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element </td></tr> <tr><td class="paramname">y</td><td>field base element </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#acbf06b386850a6b5a340c754d7e909b5">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#ad2ac546fc349e938c31e5cf280464148">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="ad79742154851ab5aaf333135dbb4c306"></a><!-- doxytag: member="LinBox::FieldEnvelope::add" ref="ad79742154851ab5aaf333135dbb4c306" args="(ElementAbstract &x, const ElementAbstract &y, const ElementAbstract &z) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& add </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>z</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Addition. </p> <p>x = y + z This function assumes all the field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> <tr><td class="paramname">z</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a6470a3cd30c5b11ff2b4c2164bf37c1e">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#ad79742154851ab5aaf333135dbb4c306">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="ae96d5d3ccd2bbd123b991534a0a9f3bc"></a><!-- doxytag: member="LinBox::FieldEnvelope::sub" ref="ae96d5d3ccd2bbd123b991534a0a9f3bc" args="(ElementAbstract &x, const ElementAbstract &y, const ElementAbstract &z) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& sub </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>z</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Subtraction. </p> <p>x = y - z This function assumes all the field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> <tr><td class="paramname">z</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#ac00abbce1365e5b4ad6571a7ee86e25a">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#ae96d5d3ccd2bbd123b991534a0a9f3bc">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a98a253ef2f843aa213b79c3f13fc821c"></a><!-- doxytag: member="LinBox::FieldEnvelope::mul" ref="a98a253ef2f843aa213b79c3f13fc821c" args="(ElementAbstract &x, const ElementAbstract &y, const ElementAbstract &z) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& mul </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>z</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Multiplication. </p> <p>x = y * z This function assumes all the field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> <tr><td class="paramname">z</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a9e12115cbbd4810bf1f731c1ff05f145">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a98a253ef2f843aa213b79c3f13fc821c">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a8b893efc55555869218421756dfaa7bd"></a><!-- doxytag: member="LinBox::FieldEnvelope::div" ref="a8b893efc55555869218421756dfaa7bd" args="(ElementAbstract &x, const ElementAbstract &y, const ElementAbstract &z) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& div </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>z</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Division. </p> <p>x = y / z This function assumes all the field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> <tr><td class="paramname">z</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#aec6fbb9637a5bafb3e2d8054186cea5b">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a8b893efc55555869218421756dfaa7bd">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a14df70f3cfcabb0292e438646da0c306"></a><!-- doxytag: member="LinBox::FieldEnvelope::neg" ref="a14df70f3cfcabb0292e438646da0c306" args="(ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& neg </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Additive <a class="el" href="class_lin_box_1_1_inverse.html" title="A Blackbox for the inverse.">Inverse</a> (Negation). </p> <p>x = - y This function assumes both field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#ad5cb192ab045312047342ce7176c719a">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a14df70f3cfcabb0292e438646da0c306">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a5c82db46e3aed7f7b7b13ff7a3678d7f"></a><!-- doxytag: member="LinBox::FieldEnvelope::inv" ref="a5c82db46e3aed7f7b7b13ff7a3678d7f" args="(ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& inv </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Multiplicative <a class="el" href="class_lin_box_1_1_inverse.html" title="A Blackbox for the inverse.">Inverse</a>. </p> <p>x = 1 / y This function assumes both field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a91661310409f0b132c91f5697c62977a">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a5c82db46e3aed7f7b7b13ff7a3678d7f">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a5341ec8c8577c85915cc94b6ce4109f2"></a><!-- doxytag: member="LinBox::FieldEnvelope::axpy" ref="a5341ec8c8577c85915cc94b6ce4109f2" args="(ElementAbstract &r, const ElementAbstract &a, const ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& axpy </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>r</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Natural AXPY. </p> <p>r = a * x + y This function assumes all field elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to r. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">r</td><td>field element (reference returned). </td></tr> <tr><td class="paramname">a</td><td>field element. </td></tr> <tr><td class="paramname">x</td><td>field element. </td></tr> <tr><td class="paramname">y</td><td>field element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a47f7600399a96752192ca9165ff1c5fd">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a5341ec8c8577c85915cc94b6ce4109f2">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a175255ecaff220c008279280318dbe23"></a><!-- doxytag: member="LinBox::FieldEnvelope::isZero" ref="a175255ecaff220c008279280318dbe23" args="(const ElementAbstract &x) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool isZero </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Zero equality. </p> <p>Test if field base element is equal to zero. This function assumes the field base element has already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>boolean true if equals zero, false if not. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#ae1a2b7cb85f963e451be830caf53909f">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a175255ecaff220c008279280318dbe23">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a33bc11daa67557dcd93142a42c5d12e1"></a><!-- doxytag: member="LinBox::FieldEnvelope::isOne" ref="a33bc11daa67557dcd93142a42c5d12e1" args="(const ElementAbstract &x) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool isOne </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>One equality. </p> <p>Test if field base element is equal to one. This function assumes the field base element has already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>boolean true if equals one, false if not. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#ae2cf653d7dbaa44aba63c192a70df2ea">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a33bc11daa67557dcd93142a42c5d12e1">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="af71d1721f7741100988bc6a64e8b6ef9"></a><!-- doxytag: member="LinBox::FieldEnvelope::addin" ref="af71d1721f7741100988bc6a64e8b6ef9" args="(ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& addin </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Inplace Addition. </p> <p>x += y This function assumes both field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a6bac600eeaafd44cbdd782c4b5da43af">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a9da101d4e9080eaf90e034e16af0fa48">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="abb8e2df18b09bdfaf05ed7d6576f3256"></a><!-- doxytag: member="LinBox::FieldEnvelope::subin" ref="abb8e2df18b09bdfaf05ed7d6576f3256" args="(ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& subin </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Inplace Subtraction. </p> <p>x -= y This function assumes both field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#afc4fafb3a04497d553f21b168d906054">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#aa648278ad7f3c072f25e80d061524a73">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="aa488c0e8732503dd36268819b44b6826"></a><!-- doxytag: member="LinBox::FieldEnvelope::mulin" ref="aa488c0e8732503dd36268819b44b6826" args="(ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& mulin </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Inplace Multiplication. </p> <p>x *= y This function assumes both field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#aff837d6b4215a22260675856377b1051">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#aee9f335487358f84c89013d7aac2b8a6">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="ab146c35c8b3f267aafd3881b81ce48d5"></a><!-- doxytag: member="LinBox::FieldEnvelope::divin" ref="ab146c35c8b3f267aafd3881b81ce48d5" args="(ElementAbstract &x, const ElementAbstract &y) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& divin </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Inplace Division. </p> <p>x /= y This function assumes both field base elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> <tr><td class="paramname">y</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#aa6462599ebcd132fdc88c16441c3670c">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a23753cf3507db4227524f9cac22e85e0">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a0c82d6a4688c13b7ec54f6ad5746ffd6"></a><!-- doxytag: member="LinBox::FieldEnvelope::negin" ref="a0c82d6a4688c13b7ec54f6ad5746ffd6" args="(ElementAbstract &x) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& negin </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Inplace Additive <a class="el" href="class_lin_box_1_1_inverse.html" title="A Blackbox for the inverse.">Inverse</a> (Inplace Negation). </p> <p>x = - x This function assumes the field base element has already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#acef05b3ba9ee4daf4cf8bfb97dac414d">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a0c82d6a4688c13b7ec54f6ad5746ffd6">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a3850e9868ea1093cbe79f8979fc00ad3"></a><!-- doxytag: member="LinBox::FieldEnvelope::invin" ref="a3850e9868ea1093cbe79f8979fc00ad3" args="(ElementAbstract &x) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& invin </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Inplace Multiplicative <a class="el" href="class_lin_box_1_1_inverse.html" title="A Blackbox for the inverse.">Inverse</a>. </p> <p>x = 1 / x This function assumes the field base elementhas already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to x. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">x</td><td>field base element (reference returned). </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a61bcbb86b75af24705cd46f3e17cdb3f">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a3850e9868ea1093cbe79f8979fc00ad3">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="aa9a4fc3b266e1d0a54857b420af225f0"></a><!-- doxytag: member="LinBox::FieldEnvelope::axpyin" ref="aa9a4fc3b266e1d0a54857b420af225f0" args="(ElementAbstract &r, const ElementAbstract &a, const ElementAbstract &x) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a>& axpyin </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>r</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Inplace AXPY. </p> <p>r += a * x This function assumes all field elements have already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>reference to r. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">r</td><td>field element (reference returned). </td></tr> <tr><td class="paramname">a</td><td>field element. </td></tr> <tr><td class="paramname">x</td><td>field element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#ac876199dea42039c63ea818a588252f2">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a90ea99dae95b84f46baad213e88d87c8">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="acd22def76f55c19076bb6c86104beaf0"></a><!-- doxytag: member="LinBox::FieldEnvelope::write" ref="acd22def76f55c19076bb6c86104beaf0" args="(std::ostream &os) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::ostream& write </td> <td>(</td> <td class="paramtype">std::ostream & </td> <td class="paramname"><em>os</em></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Print field. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>output stream to which field is written. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">os</td><td>output stream to which field is written. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#a919ba898f7c15a2c5cb347c2371188c1">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#acd22def76f55c19076bb6c86104beaf0">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a7f1e7ece6c12a9a3feb091f90c7c9ac1"></a><!-- doxytag: member="LinBox::FieldEnvelope::read" ref="a7f1e7ece6c12a9a3feb091f90c7c9ac1" args="(std::istream &is)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::istream& read </td> <td>(</td> <td class="paramtype">std::istream & </td> <td class="paramname"><em>is</em></td><td>)</td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Read field. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>input stream from which field is read. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">is</td><td>input stream from which field is read. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#ac954f8af69ed35bcaa71c9dba55ff819">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a7f1e7ece6c12a9a3feb091f90c7c9ac1">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="ace4a5e73238f68cfb9b39567800cddbd"></a><!-- doxytag: member="LinBox::FieldEnvelope::write" ref="ace4a5e73238f68cfb9b39567800cddbd" args="(std::ostream &os, const ElementAbstract &x) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::ostream& write </td> <td>(</td> <td class="paramtype">std::ostream & </td> <td class="paramname"><em>os</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Print field base element. </p> <p>This function assumes the field base element has already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>output stream to which field base element is written. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">os</td><td>output stream to which field base element is written. </td></tr> <tr><td class="paramname">x</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#aa40dd79f95d3726a91b0fab47c18cdb3">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#ace4a5e73238f68cfb9b39567800cddbd">RingEnvelope< Ring ></a>.</p> </div> </div> <a class="anchor" id="a52636cdb3a33f02a60ff54047a2bd9ad"></a><!-- doxytag: member="LinBox::FieldEnvelope::read" ref="a52636cdb3a33f02a60ff54047a2bd9ad" args="(std::istream &is, ElementAbstract &x) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::istream& read </td> <td>(</td> <td class="paramtype">std::istream & </td> <td class="paramname"><em>is</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_element_abstract.html">ElementAbstract</a> & </td> <td class="paramname"><em>x</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Read field base element. </p> <p>This function assumes the field base element has already been constructed and initialized. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>input stream from which field base element is read. </dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">is</td><td>input stream from which field base element is read. </td></tr> <tr><td class="paramname">x</td><td>field base element. </td></tr> </table> </dd> </dl> <p>Implements <a class="el" href="class_lin_box_1_1_field_abstract.html#aed49201b19a64b23aa048c6c3275832b">FieldAbstract</a>.</p> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_ring_envelope.html#a52636cdb3a33f02a60ff54047a2bd9ad">RingEnvelope< Ring ></a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>field/envelope.h</li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated on Tue Aug 30 2011 for linbox by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address> </body> </html>