11<!--
2- $Header: /cvsroot/pgsql/doc/src/sgml/xoper.sgml,v 1.27 2003/10/21 22:51:14 tgl Exp $
2+ $Header: /cvsroot/pgsql/doc/src/sgml/xoper.sgml,v 1.28 2003/10/22 03:50:27 tgl Exp $
33-->
44
55 <sect1 id="xoper">
@@ -41,7 +41,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/xoper.sgml,v 1.27 2003/10/21 22:51:14 tgl E
4141CREATE FUNCTION complex_add(complex, complex)
4242 RETURNS complex
4343 AS '<replaceable>filename</replaceable>', 'complex_add'
44- LANGUAGE C;
44+ LANGUAGE C IMMUTABLE STRICT ;
4545
4646CREATE OPERATOR + (
4747 leftarg = complex,
@@ -113,7 +113,7 @@ SELECT (a + b) AS c FROM test_complex;
113113 </para>
114114
115115 <para>
116- The left operand type of acommuted operator is the same as the
116+ The left operand type of acommutable operator is the same as the
117117 right operand type of its commutator, and vice versa. So the name of
118118 the commutator operator is all that <ProductName>PostgreSQL</ProductName>
119119 needs to be given to look up the commutator, and that's all that needs to
@@ -132,7 +132,7 @@ SELECT (a + b) AS c FROM test_complex;
132132 <literal>tab2.y = tab1.x</>, because the indexscan machinery expects
133133 to see the indexed column on the left of the operator it is given.
134134 <ProductName>PostgreSQL</ProductName> will <emphasis>not</> simply
135- assume that this is a valid transformation --- thedefiner of the
135+ assume that this is a valid transformation --- thecreator of the
136136 <literal>=</> operator must specify that it is valid, by marking the
137137 operator with commutator information.
138138 </para>