Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 7ebd25ac536d248d499a3ce2acda963a > files > 3939

Macaulay2-1.3.1-8.fc15.i686.rpm

<?xml version="1.0" encoding="utf-8" ?>  <!-- for emacs: -*- coding: utf-8 -*- -->
<!-- Apache may like this line in the file .htaccess: AddCharset utf-8 .html -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN"	 "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg-flat.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head><title>= -- assignment</title>
<link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/>
</head>
<body>
<table class="buttons">
  <tr>
    <td><div><a href="__co_eq.html">next</a> | <a href="_operators.html">previous</a> | <a href="__co_eq.html">forward</a> | backward | <a href="_operators.html">up</a> | <a href="index.html">top</a> | <a href="master.html">index</a> | <a href="toc.html">toc</a> | <a href="http://www.math.uiuc.edu/Macaulay2/">Macaulay2 web site</a></div>

    </td>
  </tr>
</table>
<div><a href="index.html" title="">Macaulay2Doc</a> > <a href="___The_sp__Macaulay2_splanguage.html" title="">The Macaulay2 language</a> > <a href="_operators.html" title="">operators</a> > <a href="__eq.html" title="assignment">=</a></div>
<hr/>
<div><h1>= -- assignment</h1>
<div class="single"><h2>Description</h2>
<div><p>In this section we'll discuss simple assignment to variables, multiple assignment, assignment to parts of objects, assignment covered by various other methods, and briefly touch on the possibility of custom installation of assignment methods.  See also the operator <a href="__co_eq.html" title="assignment of method or new local variable">:=</a>, which handles assignment and declaration of local variables and assignment of methods to operators, as well as the operator <a href="__lt-.html" title="assignment with left side evaluated">&lt;-</a>, which is an assignment operator that evaluates its left hand side and can have assignment methods installed for it by the user.</p>
<div><h2>simple assignment</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>x = e</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>x</tt>, <span>a <a href="___Symbol.html">symbol</a></span>,  (unevaluated)</span></li>
<li><span><tt>e</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
</ul>
</li>
<li>Consequences:<ul><li><tt>e</tt> is assigned to <tt>x</tt>, so future references to the value of <tt>x</tt> yield <tt>e</tt></li>
<li>if <tt>x</tt> is a global variable, then the global assignment hook for the class of <tt>e</tt>, if any, is run (see <a href="___Global__Assign__Hook.html" title="hook for assignment to global variables">GlobalAssignHook</a>), and the global assignment hook for the symbol itself (see <a href="_global__Assignment__Hooks.html" title="assignment hooks for global symbols">globalAssignmentHooks</a>), if any, is run.</li>
</ul>
</li>
<li>Outputs:<ul><li><span><span>a <a href="___Thing.html">thing</a></span>, the value of the expression is <tt>e</tt></span></li>
</ul>
</li>
</ul>
<table class="examples"><tr><td><pre>i1 : x

o1 = x

o1 : Symbol</pre>
</td></tr>
<tr><td><pre>i2 : x = 4

o2 = 4</pre>
</td></tr>
<tr><td><pre>i3 : x

o3 = 4</pre>
</td></tr>
</table>
<p>Since the value of the entire expression is <tt>e</tt>, and since the operator <a href="__eq.html" title="assignment">=</a> is right-associative (see <a href="_precedence_spof_spoperators.html" title="">precedence of operators</a>), <tt>e</tt> can be easily assigned to more than one variable, as in the following example.</p>
<table class="examples"><tr><td><pre>i4 : x = y = 44

o4 = 44</pre>
</td></tr>
<tr><td><pre>i5 : x

o5 = 44</pre>
</td></tr>
<tr><td><pre>i6 : y

o6 = 44</pre>
</td></tr>
</table>
</div>
<div><h2>multiple assignment</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>(x,y,z,...) = (c,d,e,...)</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>(x,y,z,...)</tt> a <a href="___Sequence.html">sequence</a> of <a href="___Symbol.html">symbols</a> (unevaluated)</span></li>
<li><span><tt>(c,d,e,...)</tt> a <a href="___Sequence.html">sequence</a> of <a href="___Thing.html">things</a></span></li>
</ul>
</li>
<li>Consequences:<ul><li>the expressions c,d,e,... are assigned to the variables x,y,z,..., respectively, as above.  Global assignment hooks may be run, as above.  The number of expressions must match the number of variables.</li>
</ul>
</li>
<li>Outputs:<ul><li><span>the value of the expression is <tt>(c,d,e,...)</tt></span></li>
</ul>
</li>
</ul>
<p>Multiple assignment makes it easy to switch the values of two variables, or to permute the values of several.</p>
<table class="examples"><tr><td><pre>i7 : x = 444

o7 = 444</pre>
</td></tr>
<tr><td><pre>i8 : y = foo

o8 = foo

o8 : Symbol</pre>
</td></tr>
<tr><td><pre>i9 : (y,x) = (x,y)

o9 = (444, foo)

o9 : Sequence</pre>
</td></tr>
<tr><td><pre>i10 : x

o10 = foo

o10 : Symbol</pre>
</td></tr>
<tr><td><pre>i11 : y

o11 = 444</pre>
</td></tr>
</table>
<p>Multiple assignment enables functions to return multiple values usefully.  See <a href="_making_spfunctions_spwith_spmultiple_spreturn_spvalues.html" title="">making functions with multiple return values</a>.</p>
<table class="examples"><tr><td><pre>i12 : f = i -> (i,i^2)

o12 = f

o12 : FunctionClosure</pre>
</td></tr>
<tr><td><pre>i13 : (x,y) = f 9

o13 = (9, 81)

o13 : Sequence</pre>
</td></tr>
<tr><td><pre>i14 : x

o14 = 9</pre>
</td></tr>
<tr><td><pre>i15 : y

o15 = 81</pre>
</td></tr>
</table>
</div>
<div><h2>assignment to an element of a mutable list</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>x#i = e</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>x</tt>, <span>a <a href="___Mutable__List.html">mutable list</a></span></span></li>
<li><span><tt>i</tt>, <span>an <a href="___Z__Z.html">integer</a></span></span></li>
<li><span><tt>e</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
</ul>
</li>
<li>Consequences:<ul><li>the <tt>i</tt>-th element of the list <tt>x</tt> is replaced by <tt>e</tt>, so that future references to the value of <tt>x#i</tt> yield <tt>e</tt></li>
</ul>
</li>
<li>Outputs:<ul><li><span>the value of the expression is <tt>e</tt></span></li>
</ul>
</li>
</ul>
<table class="examples"><tr><td><pre>i16 : x = new MutableList from a .. e

o16 = MutableList{...5...}

o16 : MutableList</pre>
</td></tr>
<tr><td><pre>i17 : peek x

o17 = MutableList{a, b, c, d, e}</pre>
</td></tr>
<tr><td><pre>i18 : x#3

o18 = d

o18 : Symbol</pre>
</td></tr>
<tr><td><pre>i19 : x#3 = "foo"

o19 = foo</pre>
</td></tr>
<tr><td><pre>i20 : x#3

o20 = foo</pre>
</td></tr>
<tr><td><pre>i21 : peek x

o21 = MutableList{a, b, c, foo, e}</pre>
</td></tr>
</table>
</div>
<div><h2>assignment to an element of a mutable hash table</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>x#i = e</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>x</tt>, <span>a <a href="___Mutable__List.html">mutable list</a></span></span></li>
<li><span><tt>i</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
<li><span><tt>e</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
</ul>
</li>
<li>Consequences:<ul><li><tt>e</tt> is stored in the hash table <tt>x</tt> under the key <tt>i</tt>, so that future references to the value of <tt>x#i</tt> yield <tt>e</tt></li>
<li>future references to the value of <tt>x#?i</tt> will yield the value <a href="_true.html" title="">true</a>, indicating that something has been stored in <tt>x</tt> under the key <tt>i</tt>.  See <tt>#?</tt>.</li>
</ul>
</li>
<li>Outputs:<ul><li><span>the value of the expression is <tt>e</tt></span></li>
</ul>
</li>
</ul>
<table class="examples"><tr><td><pre>i22 : x = new MutableHashTable from { "a" => 2, "b" => 3 }

o22 = MutableHashTable{...2...}

o22 : MutableHashTable</pre>
</td></tr>
<tr><td><pre>i23 : peek x

o23 = MutableHashTable{a => 2}
                       b => 3</pre>
</td></tr>
<tr><td><pre>i24 : x#?"foo"

o24 = false</pre>
</td></tr>
<tr><td><pre>i25 : x#"foo" = "bar"

o25 = bar</pre>
</td></tr>
<tr><td><pre>i26 : x#?"foo"

o26 = true</pre>
</td></tr>
<tr><td><pre>i27 : x#"foo"

o27 = bar</pre>
</td></tr>
<tr><td><pre>i28 : peek x

o28 = MutableHashTable{a => 2    }
                       b => 3
                       foo => bar</pre>
</td></tr>
</table>
</div>
<div><h2>installing assignment methods for binary operators</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>X OP Y = (x,y,e) -> ...</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>X</tt>, <span>a <a href="___Type.html">type</a></span></span></li>
<li><span><tt>OP</tt>, one of the binary operators for which users may install methods, namely: <a href="__pc.html" title="a binary operator, usually used for remainder and reduction">%</a> <a href="__am.html" title="a binary operator">&amp;</a> <a href="__st.html" title="a binary operator, usually used for multiplication">*</a> <a href="__st_st.html" title="a binary operator, usually used for tensor product or Cartesian product">**</a> <a href="__pl.html" title="a unary or binary operator, usually used for addition">+</a> <a href="__pl_pl.html" title="a binary operator, usually used for direct sum">++</a> <a href="_-.html" title="a unary or binary operator, usually used for negation or subtraction">-</a> <a href="_...html" title="a binary operator, used for sequences of consecutive items">..</a> <a href="_.._lt.html" title="a binary operator, used for sequences of consecutive items, not including the endpoint">..&lt;</a> <a href="__sl.html" title="a binary operator, usually used for division">/</a> <a href="__sl_sl.html" title="a binary operator, usually used for quotient">//</a> <a href="__co.html" title="a binary operator, uses include repetition; ideal quotients">:</a> <a href="__lt_lt.html" title="a binary operator (file output, ...)">&lt;&lt;</a> <a href="__lt_eq_eq.html" title="a unary and binary operator">&lt;==</a> <a href="__lt_eq_eq_eq.html" title="a unary and binary operator">&lt;===</a> <a href="__lt_eq_eq_gt.html" title="a binary operator">&lt;==></a> <a href="__eq_eq.html" title="equality">==</a> <a href="__eq_eq_eq_gt.html" title="a binary operator">===></a> <a href="__eq_eq_gt.html" title="a binary operator">==></a> <a href="__gt_gt.html" title="a binary operator, uses include bit shifting, or attaching optional inputs to functions">>></a> <a href="__qu.html" title="comparison operator">?</a> <a href="__at.html" title="a binary operator">@</a> <a href="__at_at.html" title="a binary operator">@@</a> <a href="__bs.html" title="a binary operator">\</a> <a href="__bs_bs.html" title="a binary operator">\\</a> <a href="_^.html" title="a binary operator, usually used for powers">^</a> <a href="_^_st_st.html" title="a binary operator, usually used for tensor or Cartesian power">^**</a> <a href="_^^.html" title="a binary operator">^^</a> <a href="__us.html" title="a binary operator, used for subscripting and access to elements">_</a> <a href="__vb.html" title="a binary operator, often used for horizontal concatenation">|</a> <a href="__vb-.html" title="a binary operator">|-</a> <a href="__vb_vb.html" title="a binary operator, often used for vertical concatenation">||</a> <a href="_and.html" title="conjunction">and</a> <a href="_or.html" title="disjunction">or</a> <a href="___S__P__A__C__E.html" title="blank operator; often used for function application, making polynomial rings">SPACE</a> .  The operator SPACE, indicating adjacency, may be omitted from the usage above.</span></li>
<li><span><tt>Y</tt>, <span>a <a href="___Type.html">type</a></span></span></li>
<li><span><tt>(x,y,e) -> ...</tt>, <span>a <a href="___Function.html">function</a></span></span></li>
</ul>
</li>
<li>Consequences:<ul><li>the function on the right hand side is installed as the method for assignment to <tt>X OP Y</tt>.  See the next subsection below for using it</li>
</ul>
</li>
<li>Outputs:<ul><li><span>the value of the expression is the same as the function on the right hand side</span></li>
</ul>
</li>
</ul>
The first line of the following example illustrates the syntax above.<table class="examples"><tr><td><pre>i29 : String * String = peek;</pre>
</td></tr>
<tr><td><pre>i30 : "left" * "right" = "value"

o30 = ("left", "right", "value")</pre>
</td></tr>
</table>
<p>Warning: the installation of new methods may supplant old ones, changing the behavior of Macaulay2.</p>
</div>
<div><h2>using assignment methods for binary operators</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>x OP y = e</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>x</tt>, an object of type <tt>X</tt></span></li>
<li><span><tt>OP</tt>, one of the binary operators for which users may install methods, listed above.  The operator SPACE, indicating adjacency, may be omitted from the usage above.</span></li>
<li><span><tt>y</tt>, an object of type <tt>Y</tt></span></li>
<li><span><tt>e</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
</ul>
</li>
<li>Outputs:<ul><li><span>the previously installed method for assignment to <tt>X OP Y</tt> is called with arguments <tt>(x,y,e)</tt>, and its return value is returned.  If no such method has been installed, then Macaulay2 searches for a method for assignment to <tt>X' OP Y'</tt>, where <tt>X'</tt> is an ancestor of <tt>X</tt> and <tt>Y'</tt> is an ancestor of <tt>Y</tt> (see <a href="_inheritance.html" title="">inheritance</a> for details).</span></li>
</ul>
</li>
</ul>
<p>The return value and the consequences depend on the code of the installed assignment method.  References to currently installed assignment methods are given below.</p>
The second line of the following example illustrates the syntax above.<table class="examples"><tr><td><pre>i31 : String * String = peek;</pre>
</td></tr>
<tr><td><pre>i32 : "left" * "right" = "value"

o32 = ("left", "right", "value")</pre>
</td></tr>
</table>
</div>
<div><h2>assignment to indexed variables</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>x_i = e</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>x</tt>, <span>a <a href="___Symbol.html">symbol</a></span>,  (evaluated)</span></li>
<li><span><tt>i</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
<li><span><tt>e</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
</ul>
</li>
<li>Consequences:<ul><li>The <a href="___Indexed__Variable.html">indexed variable</a> <tt>x<sub>i</sub></tt> is created (if necessary) and is assigned the value <tt>e</tt> so that future references to <tt>x_i</tt> yield the value <tt>e</tt>.  Moreover, the value of the symbol <tt>x</tt> is set to an object of type <a href="___Indexed__Variable__Table.html" title="">IndexedVariableTable</a>, which contains the values of the expressions <tt>x_i</tt>.</li>
</ul>
</li>
<li>Outputs:<ul><li><span><tt>e</tt></span></li>
</ul>
</li>
</ul>
<p>The method for assignment to indexed variables is pre-installed.</p>
<table class="examples"><tr><td><pre>i33 : s

o33 = s

o33 : Symbol</pre>
</td></tr>
<tr><td><pre>i34 : s_2

o34 = s
       2

o34 : IndexedVariable</pre>
</td></tr>
<tr><td><pre>i35 : s_2 = 44

o35 = 44</pre>
</td></tr>
<tr><td><pre>i36 : s_2

o36 = 44</pre>
</td></tr>
<tr><td><pre>i37 : s_(i,j)

o37 = s
       i,j

o37 : IndexedVariable</pre>
</td></tr>
<tr><td><pre>i38 : symbol s_2

o38 = s
       2

o38 : IndexedVariable</pre>
</td></tr>
<tr><td><pre>i39 : value oo

o39 = 44</pre>
</td></tr>
</table>
</div>
<div><h2>installing assignment methods for unary prefix operators</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>OP X = (x,e) -> ...</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>OP</tt>, one of the unary prefix operators for which users may install methods, namely: <a href="__st.html" title="a binary operator, usually used for multiplication">*</a> <a href="__pl.html" title="a unary or binary operator, usually used for addition">+</a> <a href="_-.html" title="a unary or binary operator, usually used for negation or subtraction">-</a> <a href="__lt.html" title="less than">&lt;</a> <a href="__lt_lt.html" title="a binary operator (file output, ...)">&lt;&lt;</a> <a href="__lt_eq.html" title="less than or equal">&lt;=</a> <a href="__lt_eq_eq.html" title="a unary and binary operator">&lt;==</a> <a href="__lt_eq_eq_eq.html" title="a unary and binary operator">&lt;===</a> <a href="__gt.html" title="greater than">></a> <a href="__gt_eq.html" title="greater than or equal">>=</a> <a href="__qu.html" title="comparison operator">?</a> <a href="__vb-.html" title="a binary operator">|-</a> <a href="_not.html" title="negation">not</a></span></li>
<li><span><tt>X</tt>, <span>a <a href="___Type.html">type</a></span></span></li>
<li><span><tt>(x,e) -> ...</tt>, <span>a <a href="___Function.html">function</a></span></span></li>
</ul>
</li>
<li>Consequences:<ul><li>the function on the right hand side is installed as the method for assignment to <tt>OP X</tt>.  See the next subsection below for using it.</li>
</ul>
</li>
<li>Outputs:<ul><li><span>the value of the expression is the same as the function on the right hand side</span></li>
</ul>
</li>
</ul>
The first line of the following example illustrates the syntax above.<table class="examples"><tr><td><pre>i40 : - String = peek;</pre>
</td></tr>
<tr><td><pre>i41 : - "foo" = "value"

o41 = ("foo", "value")</pre>
</td></tr>
</table>
<p>Warning: the installation of new methods may supplant old ones, changing the behavior of Macaulay2.</p>
</div>
<div><h2>using assignment methods for unary prefix operators</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>OP x = e</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>OP</tt>, one of the unary prefix operators for which users may install methods, listed above.</span></li>
<li><span><tt>x</tt>, an object of type <tt>X</tt></span></li>
<li><span><tt>e</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
</ul>
</li>
<li>Outputs:<ul><li><span>the previously installed method for assignment to <tt>OP X</tt> is called with arguments <tt>(x,e)</tt>, and its return value is returned.</span></li>
</ul>
</li>
</ul>
<p>The return value and the consequences depend on the code of the installed assignment method.  References to currently installed assignment methods are given below.</p>
The second line of the following example illustrates the syntax above.<table class="examples"><tr><td><pre>i42 : - String = peek;</pre>
</td></tr>
<tr><td><pre>i43 : - "foo" = "value"

o43 = ("foo", "value")</pre>
</td></tr>
</table>
</div>
<div><h2>installing assignment methods for unary postfix operators</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>X OP = (x,e) -> ...</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>OP</tt>, one of the unary postfix operators for which users may install methods, namely: <a href="_!.html" title="factorial">!</a> <a href="__lp_st_rp.html" title="a unary postfix operator, used for indicating a graded object">(*)</a> <a href="_^_st.html" title="a unary postfix operator, used for indicating pullback maps">^*</a> <a href="__us_st.html" title="a unary postfix operator, used for indicating pushforward maps">_*</a> <a href="_~.html" title="a unary postfix operator">~</a></span></li>
<li><span><tt>X</tt>, <span>a <a href="___Type.html">type</a></span></span></li>
<li><span><tt>(x,e) -> ...</tt>, <span>a <a href="___Function.html">function</a></span></span></li>
</ul>
</li>
<li>Consequences:<ul><li>the function on the right hand side is installed as the method for assignment to <tt>OP X</tt>.  See the next subsection below for using it.</li>
</ul>
</li>
<li>Outputs:<ul><li><span>the value of the expression is the same as the function on the right hand side</span></li>
</ul>
</li>
</ul>
The first line of the following example illustrates the syntax above.<table class="examples"><tr><td><pre>i44 : String ~ = peek;</pre>
</td></tr>
<tr><td><pre>i45 : "foo" ~ = "value"

o45 = ("foo", "value")</pre>
</td></tr>
</table>
<p>Warning: the installation of new methods may supplant old ones, changing the behavior of Macaulay2.</p>
</div>
<div><h2>using assignment methods for unary postfix operators</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>x OP = e</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>x</tt>, an object of type <tt>X</tt></span></li>
<li><span><tt>OP</tt>, one of the unary postfix operators for which users may install methods, listed above.</span></li>
<li><span><tt>e</tt>, <span>a <a href="___Thing.html">thing</a></span></span></li>
</ul>
</li>
<li>Outputs:<ul><li><span>the previously installed method for assignment to <tt>X OP</tt> is called with arguments <tt>(x,e)</tt>, and its return value is returned.</span></li>
</ul>
</li>
</ul>
<p>The return value and the consequences depend on the code of the installed assignment method.  References to currently installed assignment methods are given below.</p>
The second line of the following example illustrates the syntax above.<table class="examples"><tr><td><pre>i46 : String ~ = peek;</pre>
</td></tr>
<tr><td><pre>i47 : "foo" ~ = "value"

o47 = ("foo", "value")</pre>
</td></tr>
</table>
</div>
</div>
</div>
<div class="single"><h2>See also</h2>
<ul><li><span><a href="__co_eq.html" title="assignment of method or new local variable">:=</a> -- assignment of method or new local variable</span></li>
<li><span><a href="__lt-.html" title="assignment with left side evaluated">&lt;-</a> -- assignment with left side evaluated</span></li>
<li><span><a href="_global__Assignment__Hooks.html" title="assignment hooks for global symbols">globalAssignmentHooks</a> -- assignment hooks for global symbols</span></li>
</ul>
</div>
<div class="waystouse"><h2>Ways to use <tt>=</tt> :</h2>
<ul><li><span><a href="___Chain__Complex_sp_us_sp__Z__Z_sp_eq_sp__Thing.html" title="install component of chain complex">ChainComplex _ ZZ = Thing</a> -- install component of chain complex</span></li>
<li><span><a href="___Chain__Complex__Map_sp_us_sp__Z__Z_sp_eq_sp__Thing.html" title="install component of chain complex map">ChainComplexMap _ ZZ = Thing</a> -- install component of chain complex map</span></li>
<li><span>IndexedVariableTable _ Thing = Thing, see <span><a href="___Indexed__Variable__Table.html" title="">IndexedVariableTable</a></span></span></li>
<li><span><a href="___Mutable__Matrix_sp_us_sp__Sequence_sp_eq_sp__Thing.html" title="assignment to an element of a mutable matrix">MutableMatrix _ Sequence = Thing</a> -- assignment to an element of a mutable matrix</span></li>
<li><span><a href="___Symbol_sp_us_sp__Thing_sp_eq_sp__Thing.html" title="assignment to an indexed variable">Symbol _ Thing = Thing</a> -- assignment to an indexed variable</span></li>
</ul>
</div>
<div class="waystouse"><h2>For the programmer</h2>
<p>The object <a href="__eq.html" title="assignment">=</a> is <span>a <a href="___Keyword.html">keyword</a></span>.</p>
</div>
</div>
</body>
</html>