Symbol | CD | Description |
---|---|---|

A | setname2 | This symbol represents the set of algebraic numbers. |

above | limit1 | This symbol is used within a limit construct to show the limit is being approached from above. It takes no arguments. |

abs | arith1 | A unary operator which represents the absolute value of its argument. The argument should be numerically valued. In the complex case this is often referred to as the modulus. |

absolute_zero | physical_consts1 | This symbol represents the absolute zero of temperature, synonymous with the object of that temperature having zero latent heat. |

acceleration | dimensions1 | This symbol represents the acceleration physical dimension. It is the second derivative of distance with respect to time. |

acre | units_imperial1 | This symbol represents the measure of one acre. This is a standard imperial measure for area. |

acre_us_survey | units_us1 | This symbol represents the measure of one U.S. Survey acre. |

action | permutation1 | This symbols is a binary function whose first argument is a permutation (or a endomap) and whose second argument is a point. When applied to permutation or endomap p and point x, it represents the image of the point x under the permutation p. |

addition | field1 | This symbols represents a unary function, whose argument should be a field. It returns the addition map on the field. We allow for the map to be n-ary. |

addition | ring1 | This symbols represents a unary function, whose argument should be a ring. It returns the addition on the ring. We will allow for the map to be n-ary. |

additive_group | field1 | This symbol is a unary function, whose argument should be a field S. When applied to S its value is the monoid underlying S. |

additive_group | ring1 | This symbol is a unary function, whose argument should be a ring S. When applied to S its value is the monoid underlying S. |

affine_coordinates | plangeo4 | This function yields the affine coordinates vector if applied to a point or line with coordinates in the affine plane. |

algorithm | moreerrors | This symbol represents the error which is returned when an application raises an error due to algorithmic restrictions of the implementations. This includes operations not implemented or partially implemented, divisions by zero and other domain errors. It will have at least one argument, which is a string describing the problem. It may have a second argument which is relevant to the error. |

alternate-representation | mathmlkeys | This key specifies that the corresponding value is an alternate representation of the annotated element in some unspecified way. |

alternating_group | group3 | This symbol is a function with one argument, which should be a set X. When applied to a set X it represents the group of all even permutations on X . |

alternating_group | permgp2 | This symbol represents a unary function. Its argument is either a positive integer or a set. When evaluated on a set, it represents the permutation group of all even permutations of that set. When evaluated on a positive integer n, it represents the permutation group of all even permutations of the set {1,..., n}. |

alternatingn | group3 | This symbol is a function with one argument, which should be a natural number n. When applied to n it represents the group of all even permutations on the set {1,2, ...,n}. |

altitude | plangeo3 | Given a point p and a line L, this defines the segment starting at p and ending in the unique point of L closest to p. |

ambient_ring | polyd1 | This is a unary function, whose argument should be a DMP f. When applied to f, it represents the first argument of f, that is, ring of the form poly_ring_d(...) used to define f. |

amp | units_metric1 | This symbol represents the measure of one amp. This is the standard SI measure for current. |

and | logic1 | This symbol represents the logical and function which is an n-ary function taking boolean arguments and returning a boolean value. It is true if all arguments are true or false otherwise. |

angle | plangeo3 | Angle of a corner, always measured in positive (anti-clockwise) direction. |

anonymous | polyd | Indicates a variable that we do not want to name |

anonymous | polyd1 | Indicates a variable that we do not want to name |

anti-Hermitian | linalg5 | This symbol represents an anti-Hermitian matrix, it takes one argument. The argument should be a vector of vectors of values which determine the upper triangle of the matrix. The lower triangle of the matrix is specified by the following relation: - M^* = transpose(M), were M^* denotes the matrix consisting of all the complex conjugates of M. This rules implies that the main diagonal is zero, therefore the argument should not include it. |

antisymmetric | relation0 | Proposition; the type of antisymmetric binary relations. |

append | list2 | The operation of joining one list to another |

apply_to_list | fns2 | This symbol is used to denote the repeated application of an n-ary function on the elements of a given list. For example when used with plus or times this can represent sums and products. The symbol takes two arguments; the first of which is the n-ary function, the second a list. |

approx | relation1 | This symbol is used to denote the approximate equality of its two arguments. |

arc | plangeo3 | an arc of a circle M from A to B is the set of points of M that are encountered when traversing the circle clockwise from A to B. |

arccos | transc1 | This symbol represents the arccos function. This is the inverse of the cos function as described in Abramowitz and Stegun, section 4.4. It takes one argument. |

arccos | transc3 | This symbol represents the arccos function. This is the multivalued inverse of the cos function. |

arccosh | transc1 | This symbol represents the arccosh function as described in Abramowitz and Stegun, section 4.6. |

arccosh | transc3 | This symbol represents the Arccosh function as described in Abramowitz and Stegun, section 4.6. |

arccot | transc1 | This symbol represents the arccot function as described in Abramowitz and Stegun, section 4.4. |

arccot | transc3 | This symbol represents the multi-valued arccot function as the inverse of cot |

arccoth | transc1 | This symbol represents the arccoth function as described in Abramowitz and Stegun, section 4.6. |

arccoth | transc3 | This symbol represents the Arccoth function as described in Abramowitz and Stegun, section 4.6. |

arccsc | transc1 | This symbol represents the arccsc function as described in Abramowitz and Stegun, section 4.4. |

arccsc | transc3 | This symbol represents the multivalued arccsc function as the inverse of csc. |

arccsch | transc1 | This symbol represents the arccsch function as described in Abramowitz and Stegun, section 4.6. |

arccsch | transc3 | This symbol represents the Arccsch function as described in Abramowitz and Stegun, section 4.6. |

arcsec | transc1 | This symbol represents the arcsec function as described in Abramowitz and Stegun, section 4.4. |

arcsec | transc3 | This symbol represents the multivalued arcsec function as the inverse of sec. |

arcsech | transc1 | This symbol represents the arcsech function as described in Abramowitz and Stegun, section 4.6. |

arcsech | transc3 | This symbol represents the Arcsech function as described in Abramowitz and Stegun, section 4.6. |

arcsin | transc1 | This symbol represents the arcsin function. This is the inverse of the sin function as described in Abramowitz and Stegun, section 4.4. It takes one argument. |

arcsin | transc3 | This symbol represents the arcsin function. This is the multi-valued inverse of the sin function as described in Abramowitz and Stegun, section 4.4. It takes one argument. |

arcsinh | transc1 | This symbol represents the arcsinh function as described in Abramowitz and Stegun, section 4.6. |

arcsinh | transc3 | This symbol represents the Arcsinh function as described in Abramowitz and Stegun, section 4.6. |

arctan | transc1 | This symbol represents the arctan function. This is the inverse of the tan function as described in Abramowitz and Stegun, section 4.4. It takes one argument. |

arctan | transc2 | This symbol represents the two-argument arctan function as in Fortran's ATAN2. arctan(x,y) is a value of arctan(y/x). For real x,y arctan(x,y) is positive when y is positive, negative when y is negative. If y is zero, the result is 0 if x is positive, and $\pi$ if x is negative. If x is zero, the result has absolute value $\pi/2$. |

arctan | transc3 | This symbol represents the arctan function. This is the multi-valued inverse of the tan function. |

arctanh | transc1 | This symbol represents the arctanh function as described in Abramowitz and Stegun, section 4.6. |

arctanh | transc3 | This symbol represents the Arctanh function as described in Abramowitz and Stegun, section 4.6. |

are_conjugate | group4 | This symbol represents a boolean ternary function whose first argument is a group G and whose second and third arguments are elements x and y of G. Its value on G, x, and y is true if and only if x and y are conjugate in G. |

are_distinct | permutation1 | This symbol is an n-ary boolean function. When applied to a_1, ..., a_n, it is true if and only if the arguments are mutually distinct (that is, a_i and a_j are equal only if i=j). |

are_on_circle | plangeo3 | The statement that a set of points is on one circle. |

are_on_conic | plangeo6 | The symbol is a boolean n-ary function. Its arguments should be points. When applied to a sequence of points, its evaluated to true if and only if there is a conic on which all arguments lie. |

are_on_line | plangeo1 | The statement that a set of points is collinear. |

area | dimensions1 | This symbol represents the area physical dimension. |

argument | complex1 | This symbol represents the unary function which returns the argument of a complex number, viz. the angle which a straight line drawn from the number to zero makes with the Real line (measured anti-clockwise). The argument to the symbol is the complex number whos argument is being taken. |

arrowset | graph1 | This symbol represents the set of arrows of a directed graph. It takes one argument, the directed graph. |

assertion | plangeo1 | The symbol is a constructor with two arguments. Its first argument should be a configuration, its second argument a statement about the configuration, called thesis. When applied to a configuration C and a thesis T, the OpenMath object assertion(C,T) expresses the assertion that T holds in C. |

assignment | prog1 | This symbol is used to assign values to variables. The syntax is assignment(variable, value), where variable is the encoding of an OpenMath variable (OMV) and value is an OpenMath object. |

associative | semigroup | The type of associative binary operation. |

asynchronousError | moreerrors | This symbol represents the error which is returned when an application encounters some asynchronous error, for example if a limit in memory has been reached, or an error has occurred in some system call (I/O error, disk full, machine down). It should have one argument, which is a string describing the problem. |

atto | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^-18$ |

attribution | sts | An `attribution' object consists of pairs of keys and values. The use of the symbol `attribution' in a signature indicates that the symbol is to be used as a key. |

automorphism_group | group3 | This is a function with a single argument which must be a group. It refers to the automorphism group of its argument. |

automorphism_group | field4 | This is a function with a single argument which must be a field. It refers to the automorphism group of its argument. |

automorphism_group | graph2 | This symbol is a unary function whose argument is an undirected graph. When applied to an undirected graph G, it represents the automorphism group of G. The resulting automorphism group is represented as a permutation group on the vertices of the graph G. |

automorphism_group | magma3 | This is a function with a single argument which must be a magma. It refers to the automorphism group of its argument. |

automorphism_group | monoid3 | This is a function with a single argument which must be a monoid. It refers to the automorphism group of its argument. |

automorphism_group | ring5 | This is a function with a single argument which must be a ring. It refers to the automorphism group of its argument. |

automorphism_group | semigroup3 | This is a function with a single argument which must be a semigroup. It refers to the automorphism group of its argument. |

automorphism_group | semigroup4 | This is a function with a single argument which must be a semigroup. It refers to the automorphism group of its argument. |

Avogadros_constant | physical_consts1 | This symbol represents the number of atoms in 12 grammes of pure carbon(12). It is approximately 6.0221367*10^(23) +/- 3.6*10^(17). |

banded | linalg5 | This symbol represents a (p,q) banded matrix, it takes one argument. A (p,q) banded matrix should always be square. The lower non-zero subdiagonal is the first element of the argument, whilst the highest non-zero super-diagonal is given by the last element of the argument. The argument determines the band of possibly non-zero entries which are positioned around the diagonal. It should be a vector of vectors, we note that they will not all be the same length, however the length of the vectors determine p and q. The longest element specifies the diagonal of the matrix and hence the size of the matrix. Every element not in the band is zero. |

bar | units_imperial1 | This symbol represents the measure of one bar. This is the standard imperial measure for pressure. |

base | permgp1 | This is a function with one argument, which should be a permutation group. When evaluated with argument G it returns a list of points permuted by G such that the stabilizer of all elements of the list in G is trivial. Besides, the list is minimal with respect to the latter property (in the sense that the stabilizer in G of the elements of no proper subset is trivial). |

based_float | nums1 | This symbol represents the constructor function for floating point numbers, specifying the base. It takes two arguments, the first is a positive integer to denote the base to which the number is represented, the second argument is a string which contains an optional sign and the digits of the number, using 0-9a-z and optionally a "." (as a consequence of this no radix greater than 36 is supported). |

based_integer | nums1 | This symbol represents the constructor function for integers, specifying the base. It takes two arguments, the first is a positive integer to denote the base to which the number is represented, the second argument is a string which contains an optional sign and the digits of the integer, using 0-9a-z (as a consequence of this no radix greater than 36 is supported). Base 16 and base 10 are already covered in the encodings of integers. |

Bell | combinat1 | The Bell numbers: Bell(n) is the total number of possible partitions of a set of n elements. |

below | limit1 | This symbol is used within a limit construct to show the limit is being approached from below. It takes no arguments. |

big_intersect | set3 | This symbol is a unary function whose argument should be a collection C of subsets of a given set. When applied to C, it represents the intersection over all members of C. |

big_union | set3 | This symbol is a unary function whose argument should be a collection C of subsets of a given set. When applied to C, it represents the union over all members of C. |

bigfloat | bigfloat1 | The bigfloat constructor takes three arguments, a mantissa, a base and the exponent. |

bigfloatprec | bigfloat1 | The bigfloat "with precision specified in (another) radix" constructor. Takes 3 arguments, the first argument is a floating point number constructed with the bigfloat constructor, the second is the new radix, whilst the third specifies how many digits are significant. |

binder | sts | An `OMBIND' object has three parts: a "binder" such as "lambda" or "for all", a (list of) bound variables, and an expression. The use of `binder' in a signature indicates that we are describing something which can only be used as the first child of an OMBIND construct. |

binomial | combinat1 | The binomial coefficients. binomial(n, m) is the number of ways of choosing m objects from a collection of n distinct objects without regard to the order. |

block | prog1 | This symbol is meant to represent an arbitray block of code. A block of code can be empty. The syntax is block(obj1, obj2,...,objN), where obji is the OpenMath encoding of the ith sentence (or action) inside the body. |

Boltzmann_constant | physical_consts1 | A constant which describes the relationship between temperature and kinetic energy for molecules in an ideal gas. It is approximately 1.380658*10^(-23) +/- 1.2*10^(-28) Joules per Kelvin. |

Boolean | setname2 | This symbol represents the set of Booleans. That is the truth values, true and false. |

both_sides | limit1 | This symbol is used within a limit construct to show the limit is being approached from both sides. It takes no arguments. |

bytearray | omtypes | The type of byte arrays |

C | setname1 | This symbol represents the set of complex numbers. |

C | fieldname1 | This is a symbol representing the field of complex numbers. |

calendar_month | units_time1 | This symbol represents the measure of one month of (calendar) time. |

calendar_year | units_time1 | This symbol represents the measure of one year of (calendar) time. |

call_arguments | prog1 | This symbol can be used to encode the arguments that will be pased to a function or procedure. |

carrier | group1 | This symbol represents a unary function, whose argument should be a group G (for instance constructed by group). When applied to G, its value should be the set of elements of G. |

carrier | field1 | This symbol represents a unary function, whose argument should be a field S (for instance constructed by field). When applied to S, its value should be the set of elements of S. |

carrier | magma1 | This symbol represents a unary function, whose argument should be a magma G (for instance constructed by magma). When applied to G, its value should be the set of elements of a magma. |

carrier | monoid1 | This symbol represents a unary function, whose argument should be a monoid M (for instance constructed by monoid). When applied to M, its value should be the set of elements of a monoid. |

carrier | ring1 | This symbol represents a unary function, whose argument should be a ring S (for instance constructed by ring). When applied to S, its value should be the set of elements of S. |

carrier | semigroup1 | This symbol represents a unary function, whose argument should be a semigroup S (for instance constructed by semigroup). When applied to S, its value should be the set of elements of S. |

cartesian_power | set3 | This symbol is a binary function whose first argument should be a set A and whose second argument should be a natural number k. When applied to A and k, it represents the Cartesian product of k copies of A. |

cartesian_product | multiset1 | This symbol represents an n-ary construction function for constructing the Cartesian product of multisets. It takes n multiset arguments in order to construct their Cartesian product. |

cartesian_product | set1 | This symbol represents an n-ary construction function for constructing the Cartesian product of sets. It takes n set arguments in order to construct their Cartesian product. |

CD | meta | The top level element for the Content Dictionary. It just acts as a container for the elements described below. |

CDBase | meta | An optional element. If it is used it contains a string representing the URI to be used as the base for generated canonical URI references for symbols in the CD. |

CDComment | meta | This symbol is used to represent the element of a content dictionary which explains some aspect of that content dictionary. It should have one string argument which makes that explanation. |

CDComment | metagrp | This symbol is used to represent the element of a CDGroup which explains some aspect of the corresponding content dictionary. It should have one string argument which makes that explanation. |

CDDate | meta | An element which contains a date as a string in the ISO-8601 YYYY-MM-DD format. This gives the date at which the Content Dictionary was last edited. |

CDDefinition | meta | This symbol is used to represent the element which contains the definition of each symbol in a content dictionary. That is: it must contain a 'Name' element and a 'Description' element, and it may contain an arbitrary number of 'Example', 'FMP' or 'CMP' elements. |

CDGroup | metagrp | This symbol represents the outermost element of a CDGroup. It has an arbitrary number of arguments which may be elements of type corresponding to the other symbols defined in this file. |

CDGroupDescription | metagrp | This symbol represents the element of a CDGroup which describes the CDGroupDescription element. It has one string argument, this should be the contents of the CDGroupDescription element intended to describe the mathematical area of the CDGroup. |

CDGroupMember | metagrp | This symbol represents the element of a CDGroup which describes each CDGroupMember element. It has one string argument, this should be the contents of the intended CDGroupMember element of the CDGroup. This should be used to identify each member of the CDGroup. |

CDGroupName | metagrp | This symbol represents the element of a CDGroup which describes the name of that CDGroup, it has one argument that should be a string corresponding to the name. The syntactical requirements are given in the OpenMath standard. |

CDGroupURL | metagrp | This symbol represents the element of a CDGroup which describes the CDGroupURL element. It has one string argument which should describe the URL for that CDGroup, not necessarily for the member Content Dictionaries, The syntactical requirements are given in the OpenMath standard. |

CDGroupVersion | metagrp | |

CDName | meta | An element which contains the string corresponding to the name of the CD. The string must match the syntax for CD names given in the OpenMath Standard. Here and elsewhere white space occurring at the beginning or end of the string will be ignored. |

CDName | metagrp | This symbol represents the element of a CDGroup which describes each CDName element. It has one string argument, this should be the string corresponding to the name of a content dictionary which is in this CDGroup. |

CDReviewDate | meta | An element which contains a date as a string in the ISO-8601 YYYY-MM-DD format. This gives the date at which the Content Dictionary is next scheduled for review. It should be expected to be stable until at least this date. |

CDRevision | meta | An element which contains a revision number (or minor version number) This should be a non-negative integer starting from zero for each new version. Additional examples would be typical changes to a CD requiring a new revision number. |

CDSComment | metasig | This symbol is used to represent the element of a signature file which explains some aspect of that signature file. It should have one string argument which makes that explanation. |

CDSignatures | metasig | This symbol is used to represent the outermost element of the Signature File which is characterized by two required attributes that identify the type system and the Content Dictionary whose signatures are defined. The value of the XML attribute 'type' is the name of the Content Dictionary or of the CDGroup that represents the type system. The value of the XML attribute 'cd' is the name of the Content Dictionary whose symbols are assigned signatures in this Signature File. It has an arbitrary number of arguments which may be elements of type corresponding to the other symbols defined in this file. |

CDSReviewDate | metasig | This symbol is used to represent the element of a signature file which specifies the earliest possible revision date of the signature file. It should have one string argument which specifies that date. The date should be in the format YYYY-MM-DD, e.g. 2000-02-29. |

CDSStatus | metasig | This symbol is used to represent the element of a signature file which specifies the status of that signature file. It should have one string argument, which should be one of 'official' (approved by the OpenMath Society according to the procedure outlined in the OpenMath standard), 'experimental' (currently being tested), 'private' (used by a private group of OpenMath users) or 'obsolete' (an obsolete signature file, kept only for archival purposes). |

CDStatus | meta | An element giving information on the status of the CD. The content of the element must be one of the following strings. official (approved by the OpenMath Society), experimental (currently being tested), private (used by a private group of OpenMath users), or obsolete (an obsolete CD kept only for archival purposes). |

CDURL | meta | An optional element. If it is used it contains a string representing the URL where the canonical reference copy of this CD is stored. |

CDURL | metagrp | This symbol represents the element of a CDGroup which describes each CDURL element. It has one string argument, this should be the string corresponding to the contents of the CDURL element for each Content Dictionary in the CDGroup. The element is optional, in case it is missing, the location of the CDGroup identified by the element CDGroupURL is assumed. |

CDUses | meta | An element which contains zero or more CDNames which correspond to the CDs that this CD depends on, i.e. uses in examples and FMPs. If the CD is dependent on any other CDs they may be present here. |

CDVersion | meta | An element which contains a version number for the CD. This should be a non negative integer. Any change to the CD that affects existing OpenMath applications that support this CD should result in an increase in the version number. |

CDVersion | metagrp | This symbol represents the element of a CDGroup which describes each CDVersion element. It has one integral argument, this should specify which version of the content dictionary is to be taken as member of the CDGroup. The element is optional. In case it is missing, the last version is the one included in the CDGroup. |

ceiling | rounding1 | The round up (to +infinity) operation. |

center | group3 | This symbols represents a unary function whose argument should be a group G. Its value is the biggest subgroup of G all of whose elements commute with all elements of G. |

center | plangeo3 | Defines the center of a circle. |

center_of | plangeo3 | Gives the center of the circle |

center_of_gravity | plangeo3 | Center of gravity of a number of points. |

centi | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $0.01$ |

centralizer | group3 | This symbols represents a binary function whose first argument should be a group G and whose second argument should be an element g or a list of elements L of the group G. Its value is the subgroup of G of all elements commuting with g or, if the second argument is a list, all elements of L. |

characteristic_eqn | linalg4 | This symbol represents the polynomial which appears in the left hand side of the characteristic equation of a matrix. It takes one argument which should be the matrix. A definition of the characteristic equation is given in Elementary Linear Algebra, Stanley I. Grossman in Definition 2 of chapter 6, page 535. |

charge | dimensions1 | This symbol represents the charge physical dimension. |

circle | plangeo3 | The symbol represents a circle. The circle may be subject to constraints. |

class | mathmlattr | A symbol to be used within an OpenMath attribute to specify the class attribute of the object. The annotation should be an OpenMath string representing the value of the class attribute. |

class | integer2 | This symbol represents a bivariate function, whose arguments should be integers. If a, m are integers, then class(a,m) denotes the residue class a mod m in setname2.Zm. |

class | polynomial2 | This symbol represents a bivariate function, whose arguments should be polynomials. If a, m are polynomials in a polynomial ring R[X], then class(a,m) denotes the residue class a mod m in the quotient ring R[X]/ (mR[X]). |

class | relation3 | This symbol represents a ternary function whose first argument is a set S, whose second argument is a relation R on S, and whose third argument is an element a of S. When applied to S, R, and a, it represents the set of all elements in S related to a by R, that is, the set {b in S | (a,b) in R}. |

classes | relation3 | This symbol represents a binary function whose first argument is a set S, whose second argument is a relation R on S. When applied to S and R, it represents the set of all elements in S of the form class(S,R,a) for a in S. |

CMP | meta | An optional element (which may be repeated many times) which contains a string corresponding to a property of the symbol being defined. |

coefficient | poly | The coefficient with respect to a list of variables (the second argument) raised to a list of powers (the third argument). Zero if no such term is present. Not all variables need be specified. |

coefficient | polynomial1 | This symbol is a binary function whose first argument should be a polynomial f and whose second argument should be a non-negative integer n. It represents the coefficient of the i-th power of the variable in the polynomial f. |

coefficient_ring | poly | The coefficient ring. |

coefficient_ring | polynomial1 | This symbol is a unary function whose argument should be a polynomial. It represents the coefficient ring of the polynomial. |

collect | polyd3 | This a binary function. Its first argument should be a DMP f, its second argument a list of positive integers L. When applied to f and L, it represents the DMP with coefficients from the poly_ring_d whose variables only have indices i for i not occurring in the list L, and whose monomials are built up from the variables indexed by the entries of L. |

columncount | linalg4 | This symbol represents the function which takes one matrix argument and returns the number of columns in that matrix. |

completely_reduced | polyd | This attribute, attached to a groebnered object, says 'true' if the base is fully reduced, i.e. no monomial is divisible by the leading monomial of any other polynomial. |

completely_reduced | polygb1 | This attribute, attached to a groebnered object, says 'true' if the base is fully reduced, i.e. no monomial is divisible by the leading monomial of any other polynomial. |

complex_cartesian | complex1 | This symbol represents a constructor function for complex numbers specified as the Cartesian coordinates of the relevant point on the complex plane. It takes two arguments, the first is a number x to denote the real part and the second a number y to denote the imaginary part of the complex number x + i y. (Where i is the square root of -1.) |

complex_cartesian_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type of a complex number specified in terms of its real and imaginary parts. |

complex_polar | complex1 | This symbol represents a constructor function for complex numbers specified as the polar coordinates of the relevant point on the complex plane. It takes two arguments, the first is a nonnegative number r to denote the magnitude and the second a number theta (given in radians) to denote the argument of the complex number r e^(i theta). (i and e are defined as in this CD). |

complex_polar_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type of a complex number specified in terms of its modulus and argument. |

concatenation | monoid3 | This symbol represents a binary concatenation operation on strings. |

concentration | dimensions1 | This symbol represents the concentration physical dimension, it is the amount of a substance in a volume. |

configuration | plangeo1 | The symbol represents a configuration in Euclidean planar geometry consisting of a sequence of geometric objects like points, lines, etc, but also of other configurations. |

conic | plangeo6 | The symbol represents a conic. The conic may be subject to constraints. |

conjugacy_class | group4 | This symbol represents a binary function, whose first argument is a group G and whose second argument is an element x of G. Its value on G and x is the set of elements which are conjugate to x in G. |

conjugacy_class_representatives | group4 | This symbol represents a unary function whose argument should be a group. Its value on a group is a set of representatives of the conjugacy classes of that group. |

conjugacy_classes | group4 | This symbol represents a unary function whose argument should be a group. Its value on a group is the set of conjugacy classes of that group. |

conjugate | complex1 | A unary operator representing the complex conjugate of its argument. |

conjugation | group2 | This symbol is a function with two arguments, which should be a group M and an element x of M. When applied to M and x, it denotes conjugation on M by x. |

conjugation | field2 | This symbol is a function with two arguments, which should be a field M and a nonzero element x of M. When applied to M and x, it denotes conjugation on M by x. |

cons | list2 | This symbol represents the cons list function. It takes 2 arguments: the second must be a list, where the elements have the same type as the type of the first. The function denotes a new list which has the first argument as its first element followed by the elements of the second argument. |

const_node | polyslp | This constructor takes one argument, which is a value from the coefficient ring. It is intended to represent a constant node. |

constant | linalg5 | This symbol represents a matrix which has all entries of the same value. It takes two arguments, the first is the size of the matrix, the second is the constant which determines every element. |

constant_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey a type for the common constants, pi ~= 3.1415, e ~= 2.718, i = square root of -1, gamma ~= .5772, NaN, infinity (all in the nums cd), true and false (in the logic cd). Also for MathML variables declared to have type constant, as in <ci type="constant">x</ci>. |

contentequiv | mathmlkeys | This key specifies that the corresponding value is the content MathML equivalent of the annotated element. |

convert | poly | Conversion between polynomial rings. The first argument is a polynomial and the second is a polynomial ring. This represents the conversion of the given polynomial as an element of the given ring. A program that can compute the conversion is required to return a polynomial in the given ring. |

conway_polynomial | finfield1 | This symbol represents a binary function. Its arguments should be a prime number p and a positive integer n. Before defining which of the possible f(X) is the Conway polynomial we introduce an ordering of the (univariate) polynomials of degree n over GF(p). Here the coefficients of the polynomials are taken in {0, ..., p-1}, the indeterminate is X. Let g(X) = g_nX^n + ... + g_0 and h(X) = h_nX^n + ... + h_0. Then we define g < h if and only if there is an index k with g_i = h_i for i > k and (-1)^{n-k} g_k < (-1)^{n-k} h_k. The Conway polynomial f_{p,n}(X) for GF(p^n) is defined recursively as the smallest polynomial of degree n with respect to this ordering such that: 1) f_{p,n}(X) is monic, 2) f_{p,n}(X) is primitive, that is, it is irreducible and its zeros are generators of the (cyclic) multiplicative group of GF(p^n), 3) for each proper divisor m of n we have that f_{p,m}(X^{(p^n-1) / (p^m-1)})= 0 mod f_{p,n}(X); that is, the ((p^n-1) / (p^m-1))-th power of a zero of f_{p,n}(X) is a zero of f_{p,m}(X). |

coordinates | plangeo4 | This function yields the coordinates vector if applied to a point or line with coordinates. |

coordinatize | plangeo5 | This symbol is a function of one argument which must be a configuration or an assertion (as defined in plangeo1). When applied to a configuration C, it stands for the same configuration but now with coordinates attached to each object of C. The new variables are bound within an OMBIND element with head element the lambda symbol. The bound variables (placed within an OMBVAR element) are the new variables, and the last argument of OMBIND is the expression C in which each object is coordinatized. If an object already has coordinates, these are left as they are. If not, then new variables are introduced to coordinatize the object. When applied to an assertion of the form assertion(C,S), it leads to the same result except that the last argument of OMBIND is the assertion whose configuration argument is the expression C in which each object is coordinatized, and whose thesis argument is S. |

corner | plangeo2 | The corner between two halflines L and M, both starting at the same point. Given three points A, B and C, the corner A, B, C is the corner of the two halflines BA and BC. Corresponding to the two cases, the symbol can have as arguments two halflines or three points. |

cos | transc1 | This symbol represents the cos function as described in Abramowitz and Stegun, section 4.3. It takes one argument. |

cosh | transc1 | This symbol represents the cosh function as described in Abramowitz and Stegun, section 4.5. It takes one argument. |

cot | transc1 | This symbol represents the cot function as described in Abramowitz and Stegun, section 4.3. It takes one argument. |

coth | transc1 | This symbol represents the coth function as described in Abramowitz and Stegun, section 4.5. It takes one argument. |

Coulomb | units_metric1 | This symbol represents the measure of one Coulomb. This is the standard SI measure for charge. |

csc | transc1 | This symbol represents the csc function as described in Abramowitz and Stegun, section 4.3. It takes one argument. |

csch | transc1 | This symbol represents the csch function as described in Abramowitz and Stegun, section 4.5. It takes one argument. |

curl | veccalc1 | This symbol is used to represent the curl function. It takes one argument which should be a vector of scalar valued functions, intended to represent a vector valued function and returns a vector of functions. It should satisfy the defining relation: curl(F) = i X \partial(F)/\partial(x) + j X \partial(F)/\partial(y) + j X \partial(F)/\partial(Z) where i,j,k are the unit vectors corresponding to the x,y,z axes respectively and the multiplication X is cross multiplication. |

current | dimensions1 | This symbol represents the current physical dimension. |

cycle | permutation1 | This symbol is an n-ary constructor. It marks a relation on the set of its arguments a_1, a_2,...,a_n consisting of the pairs (a_i,a_{i+1}) for i=1,...,n-1 and the pair (a_n,a_1). The arguments a_i should all be distinct. The number n is referred to as the length of the cycle. |

cycle_type | permutation1 | This symbol is a function with one argument, which is a permutation. When applied to a permutation P, it represents the multiset of lengths of cycles occurring as arguments of P. |

cycles | permutation1 | This symbol has one argument which should be a endomap p. It returns the list of cycles of p. |

cyclic_group | groupname1 | This symbol is a function with one argument, which should be a natural number n. When applied to n it represents the cyclic group of order n. |

cyclic_group | permgp2 | This symbol represents a unary function whose argument should be a positive integer. When evaluated at the integer n, it represents the permutation group generated by the permutation (1,2,...,n). |

cyclic_monoid | monoid3 | This symbol is a function of two natural numbers, the first of which should be positive. When evaluated at k and l, it denotes the cyclic monoid with a cycle of length l and a tail (including the identity element) of length k. |

cyclic_semigroup | semigroup3 | This symbol denotes the cyclic semigroup with a cycle of length l and a tail of length k. |

day | units_time1 | This symbol represents the measure of one day of time. The definitions below ignore the possibilities of "leap seconds". |

deci | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $0.1$ |

decide | directives1 | This symbol is a function with one argument, which should be a clause. When applied to a clause, it asks whether the clause holds. |

def_arguments | prog1 | This symbol can be used to encode the arguments that a function or procedure can receive. |

definitionURL | mathmlattr | A symbol to be used within an OpenMath attribute to specify the definitionURL attribute of the object. The annotation should be an OpenMath string representing the value of the definitionURL attribute. |

defint | calculus1 | This symbol is used to represent definite integration of unary functions. It takes two arguments; the first being the range (e.g. a set) of integration, and the second the function. |

degree | poly | The total degree of its argument. The value returned is a non-negative integer. We note that the degree of 0 is undefined. Note that this operation takes no account of any weights that have been defined: see weighted_degree in polyd. |

degree | polynomial1 | This symbol represents a unary function, whose argument should be univariate polynomial. When applied to a polynomial, it represents its degree, that is the highest power of the variable occurring in a term of the polynomial. If the polynomial has no terms, it is the zero polynomial, in which case the value represented is -1. |

degree_Celsius | units_metric1 | This symbol represents the measure of one degree Celsius. This is a standard metric measure for temperature. |

degree_Fahrenheit | units_imperial1 | This symbol represents the measure of one degree Fahrenheit. This is the standard imperial measure for temperature. |

degree_Kelvin | units_metric1 | This symbol represents the measure of one degree Kelvin. This is a standard SI measure for temperature relative to absolute zero. |

degree_wrt | poly | The degree with respect to a variable (the second argument). We note that the degree of 0 is undefined. |

deka | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10$ |

density | dimensions1 | This symbol represents the density physical dimension, it is the mass per unit volume. |

depth | polyslp | A unary function taking an slp as argument and returning the greatest depth of any leaf node, that is the length of the longest contiguous path to any leaf node. |

derived_subgroup | group3 | The unary function whose value is the subgroup of argument generated by all products of the form xyx^-1y^-1. |

Description | meta | An element which contains a string corresponding to the description of either the CD or the symbol (depending on which is the enclosing element). |

determinant | linalg1 | This symbol denotes the unary function which returns the determinant of its argument, the argument should be a square matrix. |

diagonal_matrix | linalg5 | This symbol denotes an n_ary function which is used to construct an (nxn) diagonal matrix, that is a matrix where every non-diagonal element is zero, the diagonal elements are equal to the n arguments. |

diff | calculus1 | This symbol is used to express ordinary differentiation of a unary function. The single argument is the unary function. |

difference | list3 | This symbol takes two arguments both a list. It represents a function which returns a list made up of all the elements of the first list which are not in the second. |

digraph | graph1 | This symbol refers to a digraph. It has two arguments. The first is the set of vertices, the second is the set of arrows. Arrows are represented by lists of length two, where a list represents the arrow from the first element to the second. |

dihedral_group | groupname1 | This symbol is a function with one argument, which should be a positive integer n. When applied to n it represents the dihedral group of order 2n. This is the group of all isometries (including reflections) of the regular n-gon in the plane. |

dihedral_group | permgp2 | This symbol represents a unary function whose argument should be a positive integer. When evaluated at the integer n, it represents the dihedral group of all 2n permutations of {1,2,...,n} preserving the n-gon 1,2,...,n. |

direct_power | group3 | This is a binary function whose first argument should be a group G and whose second argument should be a natural number n. It refers to the direct product of n copies of G. |

direct_power | monoid3 | This is a binary function whose first argument should be a monoid M and whose second argument should be a natural number n. It refers to the direct product of n copies of M. |

direct_power | ring3 | This is a symbol with two arguments. The first argument should be a ring S and the second argument a positive integer n. It denotes the direct product of n copies of S. |

direct_power | semigroup3 | This is a binary function whose first argument should be a semigroup M and whose second argument should be a natural number n. It refers to the direct product of n copies of M. |

direct_product | group3 | This is an n-ary function whose arguments must be groups. It refers to the direct product of its arguments. |

direct_product | magma3 | This is an n-ary function whose arguments must be magmas. It refers to the direct product of its arguments. |

direct_product | monoid3 | This is an n-ary function whose arguments must be monoids. It refers to the direct product of its arguments. |

direct_product | ring3 | This is a symbol with two or more arguments, all of which are rings. It denotes the ring that is the direct product of its arguments. |

direct_product | semigroup3 | This is an n-ary function whose arguments must be semigroups. It refers to the direct product of its arguments. |

discrete_log | finfield1 | This symbol represents a binary function. The first argument is the base b, a primitive element of a finite field F. The second argument is a nonzero element x in F. It returns the smallest nonnegative integer i such that x=b^i. |

discriminant | poly | Function taking two arguments, it represents the discriminant of a polynomial, which is the first argument, with respect to the given variable which is the second argument. |

displacement | dimensions1 | This symbol represents the spatial difference between two points. The direction of the displacement is taken into account as well as the distance between the points. |

disprove | directives1 | This symbol is a function with one argument, which should be a clause. When applied to a clause C, it asks for a proof of that C does not hold. |

distance | plangeo3 | The distance between two affine points is the Euclidean distance. The distance between two geometric objects O and O' is the infimum of the distances between two affine points, one on O and one on O'. |

divergence | veccalc1 | This symbol is used to represent the divergence function. It takes one argument which should be a vector of scalar valued functions, intended to represent a vector valued function and returns a scalar value. It should satisfy the defining relation: divergence(F) = \partial(F_(x_1))/\partial(x_1) + ... + \partial(F_(x_n))/\partial(x_n) |

divide | arith1 | This symbol represents a (binary) division function denoting the first argument right-divided by the second, i.e. divide(a,b)=a*inverse(b). It is the inverse of the multiplication function defined by the symbol times in this CD. |

divide | opnode | A constant value, constructs the divide for division nodes. |

divides | integer2 | This symbol represents a bivariate Boolean function, whose arguments should be integers. When applied to integers a and b, it denotes the property that a divides b. |

divides | polynomial2 | This symbol represents a bivariate Boolean function, whose arguments should be polynomials in the same polynomial ring. When applied to a and b, it denotes the property that a divides b. |

divisor_of | monoid1 | This symbol is a ternary function. Its first argument should be a monoid M and the second and third arguments should be elements of M. When applied to M, a, and b, it denotes the fact that a is a divisor of b in M. This means that there are u,v in carrier(M) such that uav=b. |

DMP | polyd | The constructor of DMPs. The first argument is the polynomial ring containing the polynomial and the second is a "SDMP". Should be of the form DMP(PolyRingD(...), SDMP(...)) |

DMP | polyd1 | The constructor of DMPs. The first argument is the polynomial ring containing the polynomial and the second is a "SDMP". Should be of the form DMP(poly_ring_d(...), SDMP(...)) |

DMPL | polyd | The constructor for lists of multivariate polynomial members of the same polynomial ring. The first argument is a polynomial ring and the rest are "SDMP"s. DMPL can be attributed with the "ordering" symbol to indicate a particular ordering for monomials of all its polynomials. Should be of the form DMPL(PolyRingD(...), SDMP(...)+) |

DMPL | polyd1 | The constructor for lists of multivariate polynomial members of the same polynomial ring. The first argument is a polynomial ring and the rest are "SDMP"s. DMPL can be attributed with the "ordering" symbol to indicate a particular ordering for monomials of all its polynomials. Should be of the form DMPL(poly_ring_d(...), SDMP(...)+) |

domain | fns1 | This symbol denotes the domain of a given function, which is the set of values it is defined over. |

domain | permutation1 | This symbol is a function with one argument which is a endomap. When applied to a endomap whose arguments are a_1,...,a_n, it represents the set {1,...,n}. |

domainofapplication | fns1 | Deprecated. This symbol was intended to model MathML domainofapplication but as defined it is a synonym for domain. In MathML3, MathML compatibility is defined to use the new restriction symbol. |

e | nums1 | This symbol represents the base of the natural logarithm, approximately 2.718. See Abramowitz and Stegun, Handbook of Mathematical Functions, section 4.1. |

edgeset | graph1 | This symbol represents the set of edges of an undirected graph. It takes one argument, the undirected graph. |

eigenvalue | linalg4 | This symbol represents the eigenvalue of a matrix. It takes two arguments the first should be the matrix, the second should be an index to specify the eigenvalue. The ordering imposed on the eigenvalues is first on the modulus of the value, and second on the argument of the value. A definition of eigenvalue is given in Elementary Linear Algebra, Stanley I. Grossman in Definition 1 of chapter 6, page 533. |

eigenvector | linalg4 | This symbol represents the eigenvector of a matrix. It takes two arguments the first should be the matrix, the second should be an index to specify which eigenvalue this eigenvector should be paired with. The ordering is as given in the eigenvalue symbol. A definition of eigenvector is given in Elementary Linear Algebra, Stanley I. Grossman in Definition 1 of chapter 6, page 533. |

elimination | polyd | This is an ordering, which is partially in terms of one ordering, and partially in terms of another. First argument is a number of variables. Second is ordering to apply on the first so many variables. Third is an ordering on the rest, to be used to break ties. |

elimination | polyd2 | This is an ordering, which is partially in terms of one ordering, and partially in terms of another. First argument is a number of variables. Second is ordering to apply on the first so many variables. Third is an ordering on the rest, to be used to break ties. |

emptyset | multiset1 | This symbol is used to represent the empty multiset, that is the multiset which contains no members. It takes no parameters. |

emptyset | set1 | This symbol is used to represent the empty set, that is the set which contains no members. It takes no parameters. |

emptyword | monoid3 | This symbol represents a constant. It represents the empty string. |

encodingError | moreerrors | This symbol represents the error which is returned when an application detects a lexical or syntactic error. It should have one argument which is a string, which should explain the error that occurred. |

endomap | permutation1 | This symbol is an n-ary constructor. Its arguments should be positive integers. When applied to arguments a_1,...,a_n, the resulting value is the map sending i to a_i for i=1,...,n. |

endomap_left_compose | permutation1 | This symbol is a binary function. Its arguments should be endomaps with identical domain D. When applied to arguments P1 and P2, the resulting value is the endomap which maps x in D to P1(P2(x)). |

endomap_right_compose | permutation1 | This symbol is a binary function. Its arguments should be endomaps with identical domain D. When applied to arguments P1 and P2, the resulting value is the endomap which maps x in D to P2(P1(x)). |

endpoint | plangeo2 | The endpoint of a halfline. |

endpoints | plangeo2 | The two endpoints of a segment. |

energy | dimensions1 | This symbol represents the energy physical dimension. |

entry | list3 | This symbol represents a binary function whose first argument should be a list L and whose second argument should be a positive integer i such that the absolute value of i is in the interval [1..n], where n is the length of L. If i is positive, it returns the i-th entry L[i] of L, if i is negative it returns the (n+1-i)-th entry of L. |

eq | relation1 | This symbol represents the binary equality function. |

eqmod | integer2 | This symbol represents a Boolean valued trivariate function, whose arguments should be integers. When applied to integers a, b, m, it denotes the Boolean evalue of the assertion that a and b are equal modulo m. |

eqmod | polynomial2 | This symbol represents a Boolean valued trivariate function, whose arguments should be polynomials. When applied to polynomials a, b, m, it denotes the Boolean evalue of the assertion that a and b are equal modulo m. |

eqs | relation4 | This symbol is used to denote the n-ary version of equality. When applied to n arguments a1, ..., an, it represents the boolean expression that a1, a2, ,,, and an are equal. |

equivalence | relation0 | Proposition; the type of equivalence relations, namely relations that are reflexive, symmetric and transitive. |

equivalence_closure | relation3 | This symbol represents a binary function whose first argument is a set S, whose second argument is a relation R on S. When applied to S and R, it represents the smallest equivalence relation (with respect to inclusion) on S containing R. |

equivalent | logic1 | This symbol is used to show that two boolean expressions are logically equivalent, that is have the same boolean value for any inputs. |

error | sts | The error symbol is the 'return type' of error symbols in the error signature file. |

euler | integer2 | This symbol denotes the univariate Euler totient function. If m is an integer, then euler(m) denotes the order of the multiplicative group of invertible elements in the residue class ring Z/mZ. |

evaluate | poly | Evaluation of a polynomial at a value or vector of values. |

evaluate | directives1 | This symbol is a function with one argument, which should be a mathematical expression. When applied to a mathematical expression, it asks for an evaluation or simplification of the expression. The evaluation or simplification to be carried out by a service is a simpler mathematical expression (in some definition of complexity of objects) which is equal to the argument. |

evaluate_to_type | directives1 | This symbol is a function with two arguments, which should be a mathematical expression and a type. When applied to a mathematical expression E and a type T, it asks for an evaluation or simplification of E to a mathematical expression of type T. |

exa | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^18$ |

Example | meta | An element which contains an arbitrary number of children, each of which is either a string or an OpenMath Object. These children give examples in natural language, or in OpenMath, of the enclosing symbol definition. |

exists | quant1 | This symbol represents the existential ("there exists") quantifier which takes two arguments. It must be placed within an OMBIND element. The first argument is the bound variables (placed within an OMBVAR element), and the second is an expression. |

exp | transc1 | This symbol represents the exponentiation function as described in Abramowitz and Stegun, section 4.2. It takes one argument. |

expand | poly | Converts a factored or squarefreed form into the expanded polynomial over the same ring, so that factored(recursive) -> recursive, etc. |

expand | polynomial1 | Expands a polynomial. |

expand | polyoperators1 | Expands a polynomial. Acts as expand(expresion). |

explore | directives1 | This symbol is a unary function whose argument should be a mathematical assertion. When applied to an assertion A, it asks for conditions under which the assertion holds. |

expression | group1 | This symbol is a function with two arguments. Its first argument should be a group. The second should be an arithmetic expression A, whose operators are times and power, and whose leaves are members of the carrier of G. When applied to G and A, it denotes the element (of G) that is obtained from the leaves of A by applying the multiplication and the power map of G instead of the times and power from the CD arith1 appearing in A. The symbol alg1.one occurring in A will be interpreted as the identity of G. |

expression | field1 | This symbol is a function with two arguments. Its first argument should be a field. The second should be an arithmetic expression A, whose operators are times, plus, minus, unary_minus, and power, and whose leaves are members of the carrier of G. When applied to G and A, it denotes the element (of G) that is the element obtained from the leaves of A by applying the operations of G instead of those from the CD arith1 according to A. Here multiplication, addition, subtraction, minus, and power take over the roles of times, plus, minus, unary_minus, and power, respectively. Also, an integer m occurring in A will be interpreted as a member of G by interpreting it as the sum of m copies of the identity element, the symbol alg1.one will be interpreted as the identity, and the symbol alg1.zero will be interpreted as the zero of G. |

expression | monoid1 | This symbol is a function with two arguments. Its first argument should be a monoid. The second should be an arithmetic expression A, whose operators are times and power, and whose leaves are members of the carrier of G. The second argument of power should be nonnegative. When applied to G and A, it denotes the element (of G) that is obtained from the leaves of A by applying the multiplication and the power map of G instead of the times and power from the CD arith1 appearing in A. The symbol alg1.one occurring in A will be interpreted as the identity of G. |

expression | ring1 | This symbol is a function with two arguments. Its first argument should be a ring. The second should be an arithmetic expression A, whose operators are times, plus, minus, unary_minus, and power, and whose leaves are members of the carrier of G. (Here an integer m will be interpreted as a member of G by interpreting it as the sum of m copies of the identity element, the symbol alg1.one will be interpreted as the identity, and the symbol alg1.zero will be interpreted as the zero of G.) When applied to G and A, it denotes the element (of G) that is the element obtained from the leaves by applying the arithmetic operations of G instead of those from the CD arith1. |

expression | semigroup1 | This symbol is a function with two arguments. Its first argument should be a semigroup G. The second should be an arithmetic expression A, whose operators are times and power, and whose leaves are members of the carrier of G. The second argument of power should be positive. When applied to G and A, it denotes the element (of G) that is obtained from the leaves of A by applying the multiplication and the power map of G instead of the times and power of the CD arith1 appearing in A. |

extended_gcd | arith3 | The symbol represents the n-ary function, a_1,...,a_n to return a list consisting of the gcd (greatest common divisor) of its arguments, together with n elements x_1,...,x_n such that gcd(a_1,...,a_n)=x_1 a_1+...+x_n a_n |

extended_in | polygb2 | This symbol is a function of at least 3 arguments. The first argument is a list of variables. The second and third argument are lists of polynomials in the variables from the first argument, C and T respectively. When applied to its arguments, it represents the boolean value of the assertion that all elements t in T can be written as t = f_1*c_1 + ... + f_n*c_n (c_i in C). If the optional 4th argument is 1, those f_i are returned. |

factor | poly | The decomposition of its argument into irreducible factors. A program that can compute the factorization is required to return a "factored" object - see above. It is currently an open question whether powers of 1 can be omitted. |

factor | polyoperators1 | The action of factoring a polynomial into irreducible factors (I know this is field dependent but lets keep it simple by now). |

factor_of | semigroup1 | This symbol is a ternary function. Its first argument should be a semigroup S and the second and third arguments should be elements of S. When applied to S, a, and b, it denotes the fact that a is a divisor of b in S. This means that there are u,v in carrier(S) such that uav=b. |

factored | poly | The constructor for a factorization. Its arguments are formal powers (see previous operator), where the polynomials are supposed to be irreducible (except possibly for a content from the ground ring). Note that "factored" is not a call to factorise something, rather a statement that we know a factorisation. |

factorial | integer1 | The symbol to represent a unary factorial function on non-negative integers. |

factorof | integer1 | This is the binary OpenMath operator that is used to indicate the mathematical relationship a "is a factor of" b, where a is the first argument and b is the second. This relationship is true if and only if b mod a = 0. |

factors | polynomial3 | This symbol is a unary function, whose argument should be a polynomial f. When applied to f, it represents a complete list of irreducible factors of f. |

factors | polyoperators1 | The action of returning a list composed of the irreducible factors of a polynomial. (I know this is field dependent but lets keep it simple by now). |

false | logic1 | This symbol represents the boolean value false. |

Faradays_constant | physical_consts1 | This symbol represents the electric charge carried by one mole of electrons. It is approximately 96485.309 +/- 0.029 Coulombs per mole. |

femto | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^-15$ |

Fibonacci | combinat1 | The Fibonacci numbers, defined by the linear recurrence: Fibonacci(0) = 0, Fibonacci(1) = 1, and Fibonacci(n + 1) = Fibonacci(n) + Fibonacci(n - 1). Note that some authors define Fibonacci(0) = 1. |

field | field1 | This symbol is a constructor for fields. It takes seven arguments R, a, o, n, m, e, i: which are, respectively, a set R to specify the elements in the field, a binary operation a on R, an element o of R, and a unary operation n on R such that [R,a,o,n] is a commutative group, a binary operation m on R, an element e of R, and a map from R - {o} to itself such that [R,m,e] is a monoid and such that [R - {o},m',e,i] is a group, where m' is the restriction of m to R -{o}. |

field_by_conway | finfield1 | This symbol represents a binary function. The first argument should be a prime number p, the second argument a positive integer n. This symbol returns the field GF(q)[X]/ (C(X)), where q = p^n, X is an indeterminate, C(X) is the Conway polynomial f_{n,p}(X), and (C(X)) is the ideal in the polynomial ring GF(q)[X] generated by C(X). |

field_by_poly | field3 | This symbol is a binary function whose first argument is a univariate polynomial ring R over a field, and whose second argument is an irreducible polynomial f in this polynomial ring R. So, when applied to R and f, the function has value the quotient ring R/(f). |

field_by_poly_map | field4 | Same as quotient_by_poly_map in CD ring5, except that R and the quotient ring R[X]/(f) are fields (so f is irreducible in R[X]). |

field_by_poly_vector | field4 | This symbol is a binary function. Its first argument should be a field_by_poly(R,f). Its second argument should be a list L of elements of F, the coefficient field of the univariate polynomial ring R = F[X]. The length of the list L should be equal to the degree d of f. When applied to R and L, it represents the element L[0] + L[1] x + L[2] x^2 + ... + L[d-1] ^(d-1) of R/(f), where x stands for the image of x under the natural quotient map R -> R/(f). If the first argument is a field_by_conway(p,n), defined in the CD finfield1, then the same interpretation holds, where R and f are respectively poly_ring_d(GFp(p),1) and conway_polynomial(p,n). |

find | directives1 | This symbol is a binder, whose body should be a clause. When bound to a variable (or list of variables) x with body P(x), it asks for a mathematical expression A such that P(A) holds. |

first | list2 | This symbol represents a function which returns the first elements of its argument, which should be a list. |

fix | permutation1 | This symbol is a function with two arguments. The first argument should be a permutation, the second argument a set. When applied to a permutation g and a set X, it represents the subset A of X all points that do not belong to the support of g. |

float | omtypes | The type of floating point numbers |

floor | rounding1 | The round down (to -infinity) operation. |

FMP | meta | An optional element which contains an OpenMath Object. This corresponds to a property of the symbol being defined. |

fn_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type for a function name. |

foot | units_imperial1 | This symbol represents the measure of one foot. This is the standard imperial measure for distance. |

foot_us_survey | units_us1 | This symbol represents the measure of one U.S. Survey foot. |

for | prog1 | This symbol can be used to encode the for loop. The syntax is for(block1,conditional_block,block3,block4), where block1 is the inicialization block, conditional_block is the conditional block that determines the end of the loop, block3 is the incremental block and block4 is the body of the for loop. Each of this blocks should be present (althougth they can be empty). |

forall | quant1 | This symbol represents the universal ("for all") quantifier which takes two arguments. It must be placed within an OMBIND element. The first argument is the bound variables (placed within an OMBVAR element), and the second is an expression. |

force | dimensions1 | This symbol represents the force physical dimension. |

foreign | mathmlattr | A symbol to be used within an OpenMath attribute to specify an attribute of the object. The annotation should be an quadruple of strings constructed via a head foreign_attribute. |

foreign_attribute | mathmlattr | A symbol to be used as the head of the OpenMath application to construct the object used as the value of the foreign attribution. The four arguments of this function should be OpenMath strings representing in order, the Namespace, prefix and local name and value of the MathML attribute. |

fraction_field | field3 | This is a unary function. Its argument should be a domain (as in CD ring4). It denotes the fraction field of the domain. |

free_field | field3 | This symbol represents a binary function. The first argument should be a natural number p which is zero or a prime number, the second argument a list or a set L. When evaluated on such arguments p and L, the function represents the field of rational functions in L over the rationals if p = 0 and over the field of integers mod p if p is a prime. |

free_group | group3 | This symbol represents a unary function. The argument is a list or a set. When evaluated on such an argument, the function represents the free group generated by the entries of the list or set. |

free_magma | magma3 | This symbol represents a binary function. The argument is a list or a set. When evaluated on such an argument, the function represents the free magma generated by the entries of the list or set. |

free_monoid | monoid3 | This symbol represents a unary function. The argument is a list or a set. When evaluated on such an argument, the function represents the free monoid generated by the entries of the list or set. |

free_ring | ring3 | This symbol represents a binary function. The first argument should be a ring and the second a list or a set. When evaluated on such arguments R and L, the function represents the free ring over R generated by the elements (or entries) of L. This ring can also be viewed as the ring of non-commutative polynomials over R with variables the elements of L. |

free_semigroup | semigroup3 | This symbol represents a binary function. The argument is a list or a set. When evaluated on such an argument, the function represents the free semigroup generated by the entries of the list or set. |

function | fns3 | This symbol denotes a function constructor. When aplied to at least two arguments, which are sets, the first argument is the domain and the second the range of the function. When applied to at least three arguments, the first two of which are stes and the third of which is a lambda expression, the third argument gives the function specification. |

function_block | prog1 | The block of code defining the body of the function. The syntax is function_block(local_var,block1), where local_var encodes the local variables (private to the function body) and block1 is the body of the function. Both locar_var and block1 should be present (and of course both can be also empty). |

function_call | prog1 | Symbol function_call can be used to "call" already defined functions. The syntax is function_call(name, call_arguments), where name is the encoding of an OpenMath variable (OMV) representing the name of the function and call_arguments are the arguments to pass to the function. Both, name and call_arguments, should be present but call_arguments can be empty. |

function_definition | prog1 | The symbol function_definition can be is used to define a function. The syntax is function_definition(name, def_arguments, function_block), where name is the encoding of an OpenMath variable (OMV) representing the name of the funtion, def_arguments is the enconding of the arguments that the function receives and function_block is the body of the function (local variables declarations + body of the function). Functions are completely unaware of the rest of the "world" except for the information they received from the arguments. Functions are only allowed to return values by means of the return construct. |

gamma | nums1 | A symbol to convey the notion of the gamma constant as defined in Abramowitz and Stegun, Handbook of Mathematical Functions, section 6.1.3. It is the limit of 1 + 1/2 + 1/3 + ... + 1/m - ln m as m tends to infinity, this is approximately 0.5772 15664. |

gas_constant | physical_consts1 | This symbol represents the constant which is equal to the ratio of the pressure times the volume and the temperature of an ideal gas. It is approximately 8.31451 +/- 7.0*10^(-05) Joules per mole per Kelvin. |

gcd | arith1 | The symbol to represent the n-ary function to return the gcd (greatest common divisor) of its arguments. |

gcd | poly | The n-ary greatest common divisor of its polynomial arguments. This is unique up to units. |

gcd | polynomial3 | The n-ary greatest common divisor for univariate polynomials over fields. |

gcd | polyoperators1 | The n-ary greatest common divisor for univariate polynomials. |

generalized_quaternion_group | groupname1 | This symbol is a function with one argument, which should be a positive integer. When applied to n it represents the generalized quaternion group of order 4n. This is the group with three generators a, b, and c and relations c = a^2 = b^n, c*a = a*c , b*c = c*b, a*b = b*a*c, and c^2 = 1. |

generators | permgp1 | This is a function with one argument, which should be a permutation group. When evaluated with argument G it returns the list of permutations which occur in the definition of G. |

geq | relation1 | This symbol represents the binary greater than or equal to function which returns true if the first argument is greater than or equal to the second, it returns false otherwise. |

GFp | setname2 | This symbol represents the finite field of integers modulo p, where p is a prime. |

GFpn | setname2 | This symbol represents the finite field with p^n elements, where p is a prime. |

giga | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^9$ |

GL | group3 | This symbol is a function with one argument, which should be a vector space or a module V. When applied to V it represents the group of all invertible linear transformations of V. |

GLn | group3 | This symbol is a function with two arguments. The first should be a positive integer n, the second a field F. When applied to n and F it represents the group of all invertible linear transformations of the vector space over F of dimension n. |

global_var | prog1 | This symbol can be used to declare global variables as know to function. |

grad | veccalc1 | This symbol is used to represent the grad function. It takes one argument which should be a scalar valued function and returns a vector of functions. It should satisfy the defining relation: grad(F) = (\partial(F)/\partial(x_1), ... ,\partial(F)/partial(x_n)) |

graded_lexicographic | polyd | Total degree order, graded with the lexicographic ordering. Note that, if a poly_ring_d_named is used, lexigographic refers to the order of the variables in the poly_ring_d_named, not to their order as strings. |

graded_lexicographic | polyd2 | Total degree order, graded with the lexicographic ordering. |

graded_reverse_lexicographic | polyd | Total degree order, graded with the reverse lexicographic ordering. Note that, if a poly_ring_d_named is used, lexigographic refers to the order of the variables in the poly_ring_d_named, not to their order as strings. |

graded_reverse_lexicographic | polyd2 | Total degree order, graded with the reverse lexicographic ordering. |

gramme | units_metric1 | This symbol represents the measure of one gramme. This is not quite the standard SI measure for mass, which is the kilogramme, but OpenMath chooses to regard the gramme as standard, otherwise one would have to call it the milli-kilogramme. |

graph | graph1 | This symbol represents an undirected graph. It takes two arguments: the vertex set of the graph and the edge set. The vertices can be arbitrary OpenMath objects. Each edge should be a set consisting of two vertices. |

gravitational_constant | physical_consts1 | This symbol represents the constant of proportionality in Newtons law of universal gravitation which states; Two bodies attract each other with equal and opposite forces; the magnitude of this force is proportional to the product of the two masses and is also proportional to the inverse square of the distance between the centers of mass of the two bodies. It is approximately equal to: 6.672*10^(-11) Newton square metres per kilogramme squared. |

groebner | polyd | The groebner basis (lt-reduced, minimal) of a set of polynomials, with respect to a given ordering. First argument is an ordering, the second is a list of polynomials. A program that can compute the basis is required to return a "groebnered" object. |

groebner | polygb1 | The groebner basis (reduced, minimal) of a set of polynomials, with respect to a given ordering. First argument is a list of variables, the second is an ordering, the third is a list of polynomials. A program that can compute the basis is required to return a "groebner_basis" object. |

groebner_basis | polygb1 | The constructor for a Groebner basis (reduced, minimal). The first is a list of variables, the second argument is an ordering, the third is the Groebner Basis itself (with respect to the ordering) that should be represented as a polynomial expression. |

groebnered | polyd | The constructor for a Groebner basis (reduced, minimal). The first argument is an ordering, the second is the Groebner Basis itself (with respect to the ordering) that should be represented as a DMPL. |

groebnered | polygb1 | The constructor for a Groebner basis (reduced, minimal). The first argument is an ordering, the second is the Groebner Basis itself (with respect to the ordering) that should be represented as a DMPL. |

group | group1 | This symbol is a constructor for groups. It takes four arguments in the following order: a set to specify the elements in the group, a binary operation to specify the group operation, an element to specify the identity, and a unary operation to specify inverses of group elements. Both the binary and unary operations should act on elements of the set and return an element of the set. |

group | permgp1 | This symbol represents an n-ary function. The first argument is a group operation (usually, left_compose or right_compose), the other n-1 arguments represent permutations. When evaluated on such arguments, the function represents the permutation group generated by the last n-1 arguments. |

gt | relation1 | This symbol represents the binary greater than function which returns true if the first argument is greater than the second, it returns false otherwise. |

H | setname2 | This symbol represents the set of quaternions. |

halfline | plangeo2 | The halfline starting at A and going through B. The symbol takes as arguments the points A and B. |

hecto | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $100$ |

Hermitian | linalg5 | This symbol represents a Hermitian matrix, it takes one argument. The argument should be a vector of vectors of values which determine the upper triangle of the matrix. The lower triangle of the matrix is specified by the following relation: M^* = transpose(M), were M^* denotes the matrix consisting of all the complex conjugates of M. |

homomorphism_by_generators | group5 | This is a function with three arguments the first two of which must be groups F and K. The third argument should be a set or a list L of ordered pairs (lists of length 2). Each pair [x,y] from L consists of an element x from F and an element y from K. When applied to F, K, and L, the symbol represents the group homomorphism from F to K that maps the first entry x of each pair [x,y] to the second entry y of the same pair. |

homomorphism_by_generators | field4 | This is a function with three arguments the first two of which must be fields F and K. The third argument should be a set or a list L of ordered pairs (lists of length 2). Each pair [x,y] from L consists of an element x from F and an element y from K. when applied to F, K, and L, the symbol represents the homomorphism from F to K that maps the first entry x of each pair [x,y] to the second entry y of the same pair. |

homomorphism_by_generators | ring5 | This is a function with three arguments the first two of which must be monoids F and K. The third argument should be a set or a list L of ordered pairs (lists of length 2). Each pair [x,y] from L consists of an element x from F and an element y from K. when applied to F, K, and L, the symbol represents the monoid homomorphism from F to K that maps the first entry x of each pair [x,y] to the second entry y of the same pair. |

homomorphism_by_generators | semigroup4 | This is a function with three arguments the first two of which must be semigroups F and K. The third argument should be a set or a list L of ordered pairs (lists of length 2). Each pair [x,y] from L consists of an element x from F and an element y from K. when applied to F, K, and L, the symbol represents the homomorphism from F to K that maps the first entry x of each pair [x,y] to the second entry y of the same pair. |

hour | units_time1 | This symbol represents the measure of one hour of time. |

i | nums1 | This symbol represents the square root of -1. |

ideal | plangeo5 | This symbol is a function in one argument, which should be a coordinatized configuration (that is, each geometric object involved has coordinates). When evaluated at a configuration C it represents a function (given by a lambda binder) mapping the new parameters (arising when the inequality properties in the configuration are being translated into polynomials) to a list of polynomials in the coordinates that are variables which, when equated to zero, represent conditions equivalent to those describing the configuration C. When evaluated at an assertion assertion(C,S) it represents a function (given by a lambda binder) mapping the new parameters (arising when the inequality properties in the configuration are being translated into polynomials) to a list of polynomials in the coordinates that are variables which, when equated to zero, represent conditions equivalent to those describing the configuration C. |

ideal | ring3 | This symbol represents a binary function. The first argument is a ring R and the second argument is a list or a set. When evaluated on R and such a second argument, the function represents the ideal in R generated by the entries of the list or set. |

identity | fns1 | The identity function, it takes one argument and returns the same value. |

identity | linalg5 | This symbol denotes a unary function which is used to construct an (nxn) identity matrix where n is the single positive integral argument. |

identity | group1 | This symbols represents a unary function, whose argument should be a group. It returns the identity element of the group. |

identity | field1 | This symbols represents a unary function, whose argument should be a field. It returns the identity element of the field. |

identity | monoid1 | This symbols represents a unary function, whose argument should be a monoid. It returns the identity element of the monoid. |

identity | ring1 | This symbols represents a unary function, whose argument should be a ring. It returns the identity element of the ring. |

if | prog1 | The symbol can be used to encode the if, then, else construct. The syntax is if(conditional_block,block1,block2), where the conditional_block is the block that determines wich of the block of codes block1 and block2 is going to be executed, block1 is the then block and block2 if the else block. The conditional_block and block1 are required but block2 is optional. |

image | fns1 | This symbol denotes the image of a given function, which is the set of values the domain of the given function maps to. |

imaginary | complex1 | This represents the imaginary part of a complex number |

implies | logic1 | This symbol represents the logical implies function which takes two boolean expressions as arguments. It evaluates to false if the first argument is true and the second argument is false, otherwise it evaluates to true. |

in | multiset1 | This symbol has two arguments, an element and a multiset. It is used to denote that the element is in the given multiset. |

in | set1 | This symbol has two arguments, an element and a set. It is used to denote that the element is in the given set. |

in | list2 | This symbol has two arguments, an element and a list. It is used to denote that the element is in the given list. |

in | polygb2 | This symbol is a function of at least 4 arguments. The first argument is a polynomial p, the second is a list of variables, the third is an ordering the fourth is a list of polynomials B, and, optionally, the fifth is a polynomial_ring. When applied to its arguments, it represents the boolean value of the assertion that p belongs to the ideal generated by B. |

in_radical | polygb2 | This symbol is a function of at least 4 arguments. The first argument should be a polynomial p, the second is a list of variables, the third is an ordering the fourth is a list of polynomials B, and optionally: the fifth is a polynomial_ring. When applied to its arguments, it represents the boolean value of the assertion that p belongs to the radical ideal generated by B. |

incident | plangeo1 | The symbol represents the logical incidence function which is a binary function taking arguments representing geometric objects like points and lines and returning a boolean value. It is true if and only if the first argument is incident to the second. |

indNat | indnat | Attribution tag to denote the type of inductively defined natural numbers. It is also denoted as setname1:N. |

IndType | icc | Constructor for Inductive Types. Takes arguments the constructor functions for the inhabitants of the type and their signatures. |

infinity | nums1 | A symbol to represent the notion of infinity. |

inp_node | polyslp | This constructor takes one argument, which is a variable. The return value is intended to represent an input node. |

int | calculus1 | This symbol is used to represent indefinite integration of unary functions. The argument is the unary function. |

int2flt | coercions | The function that converts an integer to a float. |

integer | omtypes | The type of integers |

integer_interval | interval1 | A symbol to denote a discrete 1 dimensional interval from the first argument to the second (inclusive), where the discretisation occurs at unit intervals. The arguments are the start and the end points of the interval in that order. |

integer_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type of an integer. |

integers | ring3 | This is a symbol representing the ring of integers. |

intersect | multiset1 | This symbol is used to denote the n-ary intersection of multisets. It takes multisets as arguments, and denotes the multiset that contains all the elements that occur in all of them, with multiplicity the minimum of their multiplicities in all multisets. |

intersect | set1 | This symbol is used to denote the n-ary intersection of sets. It takes sets as arguments, and denotes the set that contains all the elements that occur in all of them. |

interval | interval1 | A symbol to denote a continuous 1-dimensional interval without any information about the character of the end points (used in definite integration). The arguments are the start and the end points of the interval in that order. |

interval_cc | interval1 | A symbol to denote a continuous 1-dimensional interval with both end points included in the interval. The arguments are the start and the end points of the interval in that order. |

interval_co | interval1 | A symbol to denote a continuous 1-dimensional interval with the first point included in the interval, but the last excluded. The arguments are the start and the end points of the interval in that order. |

interval_oc | interval1 | A symbol to denote a continuous 1-dimensional interval with the first point excluded from the interval, but the last included. The arguments are the start and the end points of the interval in that order. |

interval_oo | interval1 | A symbol to denote a continuous 1-dimensional interval with both end points excluded from the interval. The arguments are the start and the end points of the interval in that order. |

inverse | fns1 | This symbol is used to describe the inverse of its argument (a function). This inverse may only be partially defined because the function may not have been surjective. If the function is not surjective the inverse function is ill-defined without further stipulations. No assumptions are made on the semantics of this inverse. |

inverse | arith2 | A unary operator which represents the inverse of an element of a set. This symbol could be used to represent additive or multiplicative inverses. |

inverse | field1 | This symbol represents a unary function, whose argument should be a field S. It returns the map sending a nonzero element of S to its multiplicative inverse. |

inverse | permutation1 | This symbol is a unary function. Its argument should be a permutation. When applied to argument P, the resulting value is the inverse permutation of P. |

inversion | group1 | This symbol represents a unary function, whose argument should be a group G. It returns the map sending an element of G to its inverse. |

invertibles | group3 | This symbol is a function with one argument, which should be a monoid M. When applied to M it represents the group of all invertible elements of M. |

invertibles | monoid1 | This symbol is a unary function. Its argument should be a monoid M. When applied to M, it denotes the submonoid of M consisting of all invertible elements in M. This is a group. |

invertibles | ring3 | This is a unary function, whose argument is a ring R. When applied to R, it denotes the set of invertible elements of R with respect to the multiplication on R. |

irreflexive | relation0 | Proposition; the type of irreflexive binary relations. |

is_affine | plangeo4 | Boolean function testing whether a point or line is affine. |

is_associative | magma1 | The unary boolean function whose value is true iff the argument is an associative magma. |

is_automorphism | group2 | This symbol is a boolean function with two arguments. The first is a group M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes a group automorphism f of M. |

is_automorphism | field2 | This symbol is a boolean function with two arguments. The first is a field M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes a field automorphism f of M. |

is_automorphism | graph2 | This symbol is a boolean function with two arguments. The first is a graph M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes a graph automorphism f of M. |

is_automorphism | magma2 | This symbol is a boolean function with two arguments. The first is a magma M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes a magma automorphism f of M. |

is_automorphism | monoid2 | This symbol is a boolean function with two arguments. The first is a monoid M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes a monoid automorphism f of M. |

is_automorphism | ring2 | This symbol is a boolean function with two arguments. The first is a ring M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes a ring automorphism f of M. |

is_automorphism | semigroup2 | This symbol is a boolean function with two arguments. The first is a semigroup M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes a semigroup automorphism f of M. |

is_bijective | permutation1 | This symbol has one argument which should be a endomap p. It returns true if {a_1,...,a_n}={1,...,n} where a_1,...a_n are the arguments of p and false otherwise. |

is_commutative | group1 | The unary boolean function whose value is true iff the argument is a commutative group. |

is_commutative | field1 | The unary boolean function whose value is true iff the argument is a commutative field. |

is_commutative | magma1 | The unary boolean function whose value is true iff the argument is a commutative magma. |

is_commutative | monoid1 | The unary boolean function whose value is true iff the argument is a commutative monoid. |

is_commutative | ring1 | The unary boolean function whose value is true iff the argument is a commutative ring. |

is_commutative | semigroup1 | The unary boolean function whose value is true iff the argument is a commutative semigroup. |

is_coordinatized | plangeo5 | This symbol is a boolean valued function of one argument which must be a configuration. When applied to an argument C, it represent the value true if C is a configuration such that each object occurring in C (as well as in its subconfigurations) has coordinates (that is, the set_affine_coordinates field is present as an argument to the object), and value false otherwise. If an object already has coordinates, these are left as they are. If not, then new variables are introduced to coordinatize the object. |

is_domain | ring4 | This symbol represents a boolean unary function. The argument is a ring R. When evaluated on R, the function returns true if R is a domain and false otherwise. A domain is a commutative ring without zero divisors. |

is_endomap | permutation1 | This symbol is an n-ary function. Its arguments should be positive integers. When applied to arguments a_1,...,a_n, the resulting value is true if a_i is at most n for all i, otherwise it is false. |

is_endomorphism | group2 | This symbol is a boolean function with two arguments. The first argument is a group M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes that f is a group endomorphism from M to M. |

is_endomorphism | field2 | This symbol is a boolean function with two arguments. The first argument is a field M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes that f is a field endomorphism from M to M. |

is_endomorphism | graph2 | This symbol is a boolean function with two arguments. The first argument is a graph M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes that f is a graph endomorphism from M to M. |

is_endomorphism | magma2 | This symbol is a boolean function with two arguments. The first argument is a magma M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes that f is a magma endomorphism from M to M. |

is_endomorphism | monoid2 | This symbol is a boolean function with two arguments. The first argument is a monoid M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes that f is a monoid endomorphism from M to M. |

is_endomorphism | ring2 | This symbol is a boolean function with two arguments. The first argument is a ring M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes that f is a ring endomorphism from M to M. |

is_endomorphism | semigroup2 | This symbol is a boolean function with two arguments. The first argument is a semigroup M, the second is a map f from the element set of M to the element set of M. When applied to M and f, it denotes that f is a semigroup endomorphism from M to M. |

is_equivalence | relation3 | This symbol represents the boolean binary function which returns true if and only if the second argument is a symmetric relation on the first. |

is_field | ring4 | This is unary boolean function whose argument should be a ring R. The value is true if and only if the ring is commutative and every nonzero element has a multiplicative inverse. |

is_homomorphism | group2 | This symbol is a boolean function with three arguments. The first two arguments are groups M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a group homomorphism from M to N. |

is_homomorphism | field2 | This symbol is a boolean function with three arguments. The first and arguments are fields M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a field homomorphism from M to N. |

is_homomorphism | graph2 | This symbol is a boolean function with three arguments. The first and arguments are graphs M, N, the third is a map f from the vertex set of M to the vertex set of N. When applied to M, N, and f, it denotes that f is a graph homomorphism from M to N. |

is_homomorphism | magma2 | This symbol is a boolean function with three arguments. The first and arguments are magmas M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a magma homomorphism from M to N. |

is_homomorphism | monoid2 | This symbol is a boolean function with three arguments. The first and arguments are monoids M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a monoid homomorphism from M to N. |

is_homomorphism | ring2 | This symbol is a boolean function with three arguments. The first and arguments are rings M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a ring homomorphism from M to N. |

is_homomorphism | semigroup2 | This symbol is a boolean function with three arguments. The first and arguments are semigroups M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a semigroup homomorphism from M to N. |

is_ideal | ring3 | The binary boolean function whose value is true if and only if the second argument is an ideal of the second. |

is_identity | magma1 | This symbols represents a binary boolean function, whose arguments should be a magma and an element of the element set of the magma. When applied to the arguments M and x, it returns true if the element x is an identity of the magma M, that is, x*y = y* x = y for all elements y of M. |

is_in | permgp1 | This is a Boolean function with two arguments. The first argument should be a permutation, the second a permutation group. When evaluated with first argument x and second argument G, it returns true if and only if x belongs to G. |

is_invertible | monoid1 | This symbol represents a binary function, whose first argument is a monoid M and whose second argument is an element x of M. Its value is true iff the argument if x is invertible (that is, has a left and a right inverse) in M. |

is_isomorphism | group2 | This symbol is a boolean function with three arguments. The first and arguments are groups M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a group isomorphism from M to N. This means that f is a homomorphism from M to N, that f is bijective, and that its inverse is a homomorphism from N to M. |

is_isomorphism | field2 | This symbol is a boolean function with three arguments. The first and arguments are fields M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a field isomorphism from M to N. This means that f is a homomorphism from M to N, that f is bijective, and that its inverse is a homomorphism from N to M. |

is_isomorphism | graph2 | This symbol is a boolean function with three arguments. The first and arguments are graphs M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a graph isomorphism from M to N. This means that f is a homomorphism from M to N, that f is bijective, and that its inverse is a homomorphism from N to M. |

is_isomorphism | magma2 | This symbol is a boolean function with three arguments. The first and arguments are magmas M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a magma isomorphism from M to N. This means that f is a homomorphism from M to N, that f is bijective, and that its inverse is a homomorphism from N to M. |

is_isomorphism | monoid2 | This symbol is a boolean function with three arguments. The first and arguments are monoids M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a monoid isomorphism from M to N. This means that f is a homomorphism from M to N, that f is bijective, and that its inverse is a homomorphism from N to M. |

is_isomorphism | ring2 | This symbol is a boolean function with three arguments. The first and arguments are rings M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a ring isomorphism from M to N. This means that f is a homomorphism from M to N, that f is bijective, and that its inverse is a homomorphism from N to M. |

is_isomorphism | semigroup2 | This symbol is a boolean function with three arguments. The first and arguments are semigroups M, N, the third is a map f from the element set of M to the element set of N. When applied to M, N, and f, it denotes that f is a semigroup isomorphism from M to N. This means that f is a homomorphism from M to N, that f is bijective, and that its inverse is a homomorphism from N to M. |

is_list_perm | permutation1 | This symbol is an n-ary function. Its arguments should be positive integers. When applied to arguments a_1,...,a_n, the resulting value is true if a_i is at most n for all i and all a_i are distinct, otherwise it is false. |

is_maximal_ideal | ring4 | The binary boolean function whose value is true iff the second argument is a maximal ideal of the first. |

is_midpoint | plangeo3 | The statement that one point is the midpoint of two others. |

is_normal | group1 | If G, H are the group arguments, then IsNormal(G,H) returns true precisely when H is normal in G. That is, inverse(g)*h*g is defined and contained in H for all h in H and g in G. |

is_permutation | permutation1 | This symbol is a boolean function with one argument. If the argument is not a set of cycles of length at least 2, the boolean value is false. Otherwise it is true if and only if the cycles are disjoint (that is, all entries of all cycles in the argument are mutually distinct. |

is_prime_ideal | ring4 | The binary boolean function whose value is true iff the second argument is a prime ideal of the first. |

is_primitive | permgrp | The unary function whose value is true iff its permutation group argument acts primitively. |

is_primitive | finfield1 | This symbol represents a binary Boolean function. The first argument should be a finite field, the second a an element of that field. When applied to such arguments, the value represented is true if the second argument is a primitive element of the field, that is, a generator of the multiplicative group of the field. |

is_primitive | permgp1 | The unary function with one argument, which should be a permutation group. Its value is true if and only if G acts primitively on the support of G. This means that there is no proper subset B of the support of G with more than one element such that the image of B under an element of G meets B in a proper nonempty subset of B. |

is_primitive_poly | finfield1 | This symbol is a Boolean-valued function with two arguments, the first of which should be a prime number p, and the second of which should be a polynomial with coefficients in GF(p). When applied to p and f, this symbol represents the value true if and only if f is a primitive polynomial, that is, f is irreducible over GF(p), so GF(p)[X]/(f) is a finite field of order p^n, where n is the degree of f, and the image of X in GF(p)[X]/(f) is a generator of the (cyclic) multiplicative group of GF(p)[X]/(f). |

is_reflexive | relation3 | This symbol represents the boolean binary function which returns true if and only if the second argument is a reflexive relation on the first. |

is_relation | relation3 | This symbol is a boolean function of two arguments, S and R. The first argument should be a set. When applied to S and R, the function returns true if and only if the second argument is a subset of the Cartesian product of S with itself. |

is_subfield | field1 | The binary boolean function whose value is true iff the second argument is a subfield of the second. |

is_subgroup | group1 | The binary boolean function whose value is true iff the second argument is a subgroup of the second. |

is_subgroup | permgp1 | This is a Boolean function with two arguments, both of which are permutation groups. When evaluated with first argument H and second argument G it returns true if and only if H is a subgroup of G. |

is_submagma | magma1 | The binary boolean function whose value is true iff the second argument is a submagma of the first. |

is_submonoid | monoid1 | The binary boolean function whose value is true iff the second argument is a submonoid of the second. |

is_subring | ring1 | The binary boolean function whose value is true iff the second argument is a subring of the second. |

is_subsemigroup | semigroup1 | The binary boolean function whose value is true iff the second argument is a subsemigroup of the second. |

is_symmetric | relation3 | This symbol represents the boolean binary function which returns true if and only if the second argument is a symmetric relation on the first. |

is_transitive | permgrp | The unary function whose value is true iff the permutation group argument acts transitively. |

is_transitive | permgp1 | This is a Boolean function with one argument, which should be a permutation group. When evaluated at a permutation group G, it returns the value true if and only if the permutation group argument acts transitively on the support of G. |

is_transitive | relation3 | This symbol represents the boolean binary function which returns true if and only if the second argument is a transitive relation on the first. |

is_zero_divisor | ring4 | This symbol represents a boolean binary function. The first argument is a ring R, the second is an element x of R. When evaluated on R and x, the function returns true if x a zero divisor and nonzero in R. |

isomorphic | group2 | This symbol is a Boolean function with n arguments, n at least 2, which are groups. When applied to M_1, ..., M_n, it denotes the fact that there is an isomorphism from each M_i to each M_j. |

isomorphic | field2 | This symbol is a Boolean function with n arguments, n at least 2, which are fields. When applied to M_1, ..., M_n, it denotes the fact that there is an isomorphism from each M_i to each M_j. |

isomorphic | graph2 | This symbol is a Boolean function with n arguments, n at least 2, which are graphs. When applied to M_1, ..., M_n, it denotes the fact that there is an isomorphism from each M_i to each M_j. |

isomorphic | magma2 | This symbol is a Boolean function with n arguments, n at least 2, which are magmas. When applied to M_1, ..., M_n, it denotes the fact that there is an isomorphism from each M_i to each M_j. |

isomorphic | monoid2 | This symbol is a Boolean function with n arguments, n at least 2, which are monoids. When applied to M_1, ..., M_n, it denotes the fact that there is an isomorphism from each M_i to each M_j. |

isomorphic | ring2 | This symbol is a Boolean function with n arguments, n at least 2, which are rings. When applied to M_1, ..., M_n, it denotes the fact that there is an isomorphism from each M_i to each M_j. |

isomorphic | semigroup2 | This symbol is a Boolean function with n arguments, n at least 2, which are semigroups. When applied to M_1, ..., M_n, it denotes the fact that there is an isomorphism from each M_i to each M_j. |

Joule | units_metric1 | This symbol represents the measure of one Joule. This is the standard SI measure for energy. |

k_subsets | set3 | This symbol represents a binary function whose first argument should be a set and whose second argument should be a natural number. When applied to a set X and a number k, it represents the collection of all subsets of X of size k. |

kernel | fns2 | This symbol denotes the kernel of a given function. This may be defined as the subset of the range of the given function which maps to the identity element of the image of the given function, however no semantics are assumed. The kernel of a function is also known as the null space of the function. |

kernel | ring3 | This symbol represents a unary function. Its argument is a ring homomorphism f : R -> S. When evaluated on f, the function represents the kernel in R of f, that is, the subset {x in R | f(x) = 0}. |

kilo | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $1000$ |

lambda | fns1 | This symbol is used to represent anonymous functions as lambda expansions. It is used in a binder that takes two further arguments, the first of which is a list of variables, and the second of which is an expression, and it forms the function which is the lambda extraction of the expression |

Lambda | lc | The abstraction constructor. It is followed by a list of variables and an OpenMath object. |

Laplacian | veccalc1 | This symbol is used to represent the laplacian function. It takes one argument which should be a vector of scalar valued functions, intended to represent a vector valued function and returns a vector of functions. It should satisfy the defining relation: laplacian(F) = \partial^2(F)/\partial(x_1)^2 + ... + \partial^2(F)/\partial(x_n)^2 |

LaTeX_encoding | altenc | A symbol which heads a piece of LaTeX encoding in an attribution. |

lcm | arith1 | The symbol to represent the n-ary function to return the least common multiple of its arguments. |

lcm | poly | The least common multiple of its polynomial arguments. This is unique up to units, but the choice must be compatible with that made for gcd: see the CMP/FMP. |

leading_coefficient | poly | The leading coefficient with respect to a variable (the second argument). We note that the leading coefficient of 0 is undefined. |

leading_coefficient | polynomial1 | This symbol represents a unary function, whose argument should be univariate polynomial. When applied to a polynomial, it represents the coefficient of the monomial of highest degree. If the polynomial is zero, the value represented is zero. |

leading_monomial | polynomial1 | This symbol represents a unary function, whose argument should be a nonzero univariate polynomial. When applied to such a polynomial, it represents the highest power of the variable occurring in the polynomial. |

leading_term | polynomial1 | This symbol represents a unary function, whose argument should be univariate polynomial. When applied to a polynomial, it represents its leading term, that is the term that is the product of the highest power of the variable and its coefficient. If the polynomial is zero, the value represented is zero. |

left_compose | fns1 | This symbol represents the function which forms the left-composition of its two (function) arguments. |

left_compose | permutation1 | This symbol is a binary function. Its arguments should be permutations. When applied to arguments P1 and P2, the resulting value is the permutation which maps x in Support(P1) union Support(P2) to P1(P2(x)). |

left_coset | group4 | This symbol represents a ternary function whose first argument is a group G, whose second argument is a subgroup H of G, and whose third argument is an element x of G. Its value on G, H, and x is the left coset of H in G containing x, that is, the set x H. |

left_coset_representative | group4 | This symbol represents a quaternary function whose first argument is a group G, whose second argument is a subgroup H of G, whose third argument is left_transversal T of H in G, and whose fourth argument is an element of G. It assigns to G, H, T, g the element of t of T representing the left coset of H containing g, that is, t H = g H . |

left_cosets | group4 | The binary function whose value is the set of left cosets of the second argument in the first. |

left_divides | magma1 | This symbol is a ternary function. Its first argument should be a magma M and the second and third arguments should be elements of M. When applied to M, a, and b, it denotes the fact that a is a left_divisor of b in M. This means that there is v in M such that av=b. |

left_expression | magma1 | This symbol is a binary function. Its first argument should be a magma M, the second argument a list L of elements of M. When applied to M and L, it denotes the left product (L[1] * ( ... (L[n-1] * L[n]) ... )) of all elements in the list L. |

left_inverse | fns1 | This symbol is used to describe the left inverse of its argument (a function). This inverse may only be partially defined because the function may not have been surjective. If the function is not surjective the left inverse function is ill-defined without further stipulations. No other assumptions are made on the semantics of this left inverse. |

left_multiplication | group2 | This symbol is a function with two arguments, which should be a group M and an element x of M. When applied to M and x, it denotes left multiplication on M by x. |

left_multiplication | field2 | This symbol is a function with two arguments, which should be a field M and an element x of M. When applied to M and x, it denotes left multiplication on M by x. |

left_multiplication | monoid2 | This symbol is a function with two arguments, which should be a monoid M and an element x of M. When applied to M and x, it denotes left multiplication on M by x. |

left_multiplication | ring2 | This symbol is a function with two arguments, which should be a ring M and an element x of M. When applied to M and x, it denotes left multiplication on M by x. |

left_multiplication | semigroup2 | This symbol is a function with two arguments, which should be a semigroup M and an element x of M. When applied to M and x, it denotes left multiplication on M by x. |

left_quotient_map | group5 | This symbol is a binary function whose first argument is a group G and whose second argument is an subgroup H of G. When applied to G and H, its value is the natural quotient map from G to the quotient group G/H, sending x to the right coset Hx of G. |

left_ref | polyslp | Takes as argument a node of an slp. Returns the value of the left hand pointer of the node. |

left_regular_representation | monoid3 | This is a unary function whose argument must be a monoid M. When applied to M, it represents the map from M to the maps monoid on M that assigns to m left multiplication by m on M. |

left_regular_representation | semigroup3 | This is a unary function whose argument must be a semigroup M. When applied to M, it represents the map from M to the maps semigroup on M that assigns to m left multiplication by m on M. |

left_transversal | group4 | The binary function whose value is a set of representatives for the left cosets of the second argument as a subgroup of the first. |

length | polyslp | A unary function taking an slp as argument and returning the length of this slp. |

length | dimensions1 | This symbol represents the length physical dimension. |

length | list3 | This symbol represents a function whose argument should be a list. It returns the length of its argument. |

length | permutation1 | This symbol is a function with one argument, which must be a cycle. When applied to cycle(a_1,a_2,...,a_n), it returns the number n. This number is referred to as the length of the cycle. |

leq | relation1 | This symbol represents the binary less than or equal to function which returns true if the first argument is less than or equal to the second, it returns false otherwise. |

lexicographic | polyd | The lexicographic ordering of terms. Note that, if a poly_ring_d_named is used, lexigographic refers to the order of the variables in the poly_ring_d_named, not to their order as strings. |

lexicographic | polyd2 | The lexicographic ordering of monomials. |

lift_binary | set2 | This symbol denotes the lift of a binary operator on elements of X to a component-wise operators on subsets of X. |

light_year | physical_consts1 | This symbol represents the distant for which a beam of light would take a year to traverse, in a vacuum. |

limit | limit1 | This symbol is used to denote the limit of a unary function. It takes 3 arguments: the limiting value of the argument, the method of approach (either null, above, below or both_sides) and the function. |

limitation | moreerrors | This symbol represents the error which is returned when an application reads an error caused by the limitations of an implementation when dealing with OpenMath objects such as limits on the size of objects or on the kind of objects manipulated. This can include limits on the size of a bytearray or integer, a limit on the number of arguments of an application or the inability to deal with Unicode characters outside ISO latin 1. It will have at least one argument, which is a string describing the problem. It may have a second argument which is relevant to the error. |

line | plangeo1 | The symbol is used to indicate a line of planar Euclidean geometry by a variable. The line may (but need not) be subject to constraints. The symbol takes the variable as the first argument and the constraints as further arguments. |

list | list1 | This symbol denotes the list construct which is an n-ary function. The list entries must be given explicitly. |

list_of_lengthn | list3 | This symbol represents a function with two arguments, the first of which is a natural number and the second of which is a list. The first argument is the length of the list. |

list_perm | permutation1 | This symbol is an n-ary constructor. Its arguments should be distinct positive integers in the interval [1,n]. When applied to arguments a_1,...,a_n, the resulting value is the permutation mapping i to a_i for i=1,...,n. |

list_selector | list2 | This symbol takes a positive integer n and a list, and represents the n-th element of that list. |

list_to_matrix | linalg7 | This symbol denotes a binary function. Its first argument must be a ring R, its second argument must be list L of lists of equal lengths whose entries belong to the ring R, up to ring1.expression. When applied to R and L it represents the matrix whose i,j entry consists of the j-th entry from the list L[i]. In particular, the matrix has length(L) rows and length(L[1]) columns. |

list_to_poly_d | polyd3 | This symbol is a function with two arguments. The first argument is a ring R and the second argument is a list L. The entries of L are elements of R or can be cast canconically onto elements of R. When applied to R and L, the symbol denotes the distributed (univariate) polynomial over R with terms (L[i-1],i) for i running over the indices of L (i=1, ..., length(L)). |

list_to_vector | linalg7 | This symbol denotes a binary function. Its first argument must be a ring R, its second argument must be list L with entries belonging to the ring R, up to ring1.expression. When applied to R and L it represents the vector of the same length as the list L whose i-th coordinate is L[i] (or ring1.expression(L[i])). |

list_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type for a list. |

listendomap | permutation1 | This symbol is a function with one argument which is a permutation whose support consists of positive integers. When applied to such a permutation P, it represents the list of length n whose i-th entry is the image of i under P, where n is the maximum of the support of P. |

litre | units_metric1 | This symbol represents the measure of one litre. This is a standard metric measure for physical volume. |

litre_pre1964 | units_metric1 | This symbol represents the previous (1901-1964) measure of one litre. This used to be a standard metric measure for physical volume. |

ln | transc1 | This symbol represents the ln function (natural logarithm) as described in Abramowitz and Stegun, section 4.1. It takes one argument. Note the description in the CMP/FMP of the branch cut. If signed zeros are in use, the inequality needs to be non-strict. |

ln | transc3 | This symbol represents the ln function (natural logarithm) as a multivalued function. |

local_var | prog1 | This symbol can be used to declare local variables. |

log | transc1 | This symbol represents a binary log function; the first argument is the base, to which the second argument is log'ed. It is defined in Abramowitz and Stegun, Handbook of Mathematical Functions, section 4.1 |

log | transc3 | This symbol represents a binary log function; the first argument is the base, to which the second argument is log'ed. It is defined in Abramowitz and Stegun, Handbook of Mathematical Functions, section 4.1 |

look_up | directives1 | This symbol is a function with one argument, which should be a mathematical expression. When applied to a mathematical expression, it asks for mathematical expressions related to the argument. If the argument is a single OpenMath symbol, the service might respond by the list of all properties in the CD containing the argument. Alternatively, the service can provide a list of CDs which use the CD in which the argument occurs. Another service might return all documents in which the symbol occurs. If the argument is a more complicated object, the same services could be called for, but then with all OpenMath symbols occurring in the argument instead of the single one. |

Loschmidt_constant | physical_consts1 | This symbol represents the number of particles per unit volume of an ideal gas at standard temperature and pressure. It is approximately 2.686763 * 10^(25) +/- 2.3 * 10^(20) per metre cubed. |

lower-Hessenberg | linalg5 | This symbol represents a lower-Hessenberg matrix, it takes one argument, the argument is a vector of vectors representing the non-zero elements. The first element of the argument specifies the value of the first super-diagonal, the subsequent elements specify the value of the diagonal and subsequent subdiagonals, all other elements are zero. |

lower-triangular | linalg5 | This symbol represents a lower-triangular matrix, it takes one argument. The argument should be a vector of vectors of elements of the matrix. |

lt | relation1 | This symbol represents the binary less than function which returns true if the first argument is less than the second, it returns false otherwise. |

m_poly_ring | ring3 | This symbol represents a binary function. The first argument should be a ring and the second a list or a set. When evaluated on such arguments R and L, the function represents the free commutative ring over R generated by the elements (or entries) of L. This ring can also be viewed as the ring of polynomials over R with variables the elements of L. |

magma | magma1 | This symbol is a constructor for magmas. It takes two arguments in the following order: a set to specify the elements in the magma and a binary operation to specify the magma operation. The binary operation should act on elements of the set and return an element of the set. |

magma | semigroup1 | This symbol is a unary function. Its argument should be a semigroup S. When applied to S, it denotes the magma with the same element set and binary operation as S. |

magnetic_constant | physical_consts1 | This symbol represents the ratio of the magnetic flux density in a substance to the external field strength for vacuum. It is equal to 4 pi x 10^(-7) H/m. |

make_Semigroup | semigroup | The contructor for the tuples consisting of a setoid, and an associative binary operation. |

make_Setoid | setoid | The contructor for the tuples consisting of a set, an equivalence relation on the set, and a proof that the relation is actually an equivalence relation. |

map | list1 | This symbol represents a mapping function which may be used to construct lists, it takes as arguments a function from X to Y and a list over X in that order. The value that is returned is a list of values in Y. The argument list may be a set or an integer_interval. |

map | set1 | This symbol represents a mapping function which may be used to construct sets, it takes as arguments a function from X to Y and a set over X in that order. The value that is returned is a set of values in Y. The argument list may be a set or an integer_interval. |

map_with_condition | set3 | This symbol represents a function with three arguments. The first argument is a function assignment f (in the form of a lambda binding), the second argument is a set X. The third argument specifies a Boolean function P on X defining the subset Z of X (so Z = {x in X| P(x)}) on which the first argument f is defined, The symbol is used to denote the image {f(x) | x in X and P(x)} of application of the function f on the elements of Z. |

map_with_target | set3 | This symbol represents a function with three arguments. The first argument is a function assignment f (in the form of a lambda binding), the second argument is a set X on which the first argument f is defined. The third argument specifies the range Y of the function. The symbol is used to denote the image {f(x) in Y | x in X} of application of the function f on the elements of X (so as to form a subset of Y). |

map_with_target_and_condition | set3 | This symbol represents a function with four arguments. The first argument is a function assignment f (in the form of a lambda binding), the second argument is a set X on which the first argument f is defined. The third argument specifies the range Y of the function. The fourth argument specifies a Boolean function P on X defining the subset Z of X (so Z = {x in X| P(x)}) on which the first argument f is defined, The symbol is used to denote the image {f(x) in Y | x in X and P(x)} of application of the function f on the elements of Z. |

maps_monoid | monoid3 | This is a unary function whose argument must be a set X or a positive integer. When applied to X, it refers to the monoid of all functions from X to X if X is a set and to {1,...,X} if X is an integer, whose binary operation is composition of maps and whose identity element is the identity map on the set X, respectively {1,...,X}. |

maps_semigroup | semigroup3 | This is a unary function whose argument must be a set X or a positive integer. When applied to X, it refers to the semigroup of all functions from X to X if X is a set and to {1,...,X} if X is an integer, whose binary operation is composition of maps and whose identity element is the identity map on the set X, respectively {1,...,X}. |

mapsto | sts | This symbol represents the construction of a function type. The first n-1 children denote the types of the arguments, the last denotes the return type. |

mapsto | lc | The type constructor of non-dependant function space. The first n-1 children denote the types of the arguments, the last denotes the return type. Contrary to sts:mapsto, arguments cannot be variables but have to be OpenMath objects that map to ground OpenMath terms (they contain no variables). |

mass | dimensions1 | This symbol represents the mass physical dimension. |

MathML_encoding | altenc | A symbol which heads a piece of MathML encoding in an attribution. The MathML encoding is an XML encoding, and the details may be found at: http://www.w3.org/Math/Overview.html |

matrix | linalg2 | This symbol is an n-ary matrix constructor which requires matrixrow's as arguments. It is used to represent matrices. |

matrix | linalg3 | This symbol is an n-ary matrix constructor which requires matrixcolumn's as arguments. It is used to represent matrices. |

matrix_ordering | polyd | The argument is a matrix with as many columns as indeterminates (= rank). Each row in turm is multiplied by the column vector of exponents to produce a weighting for comparison purposes. |

matrix_ordering | polyd2 | The argument is a matrix with as many columns as indeterminates (= rank). Each row in turm is multiplied by the column vector of exponents to produce a weighting for comparison purposes. |

matrix_ring | ring3 | This symbol represents a binary function. The first argument is a positive integer n, the second is a ring R. When evaluated on such argument n and R, the function represents the ring of n x n matrices over R. |

matrix_selector | linalg1 | This symbol represents the function which allows individual entries to be selected from a matrix. It takes three arguments, the first is the index of the row and the second is the index of the column of the required element, the third argument is the matrix in question. The indexing is one based, i.e. the element in the top left hand corner is indexed by (1,1). |

matrix_tensor | linalg6 | This symbol denotes a n-nary function which is used to construct the tensor product matrix of its arguments, which must be matrices. |

matrix_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type for a matrix (n tuple of rows, where each row is an m tuple for some m, it should be noted that each row must be the same length). |

matrixcolumn | linalg3 | This symbol is an n-ary constructor used to represent columns of matrices. Its arguments should be members of a ring. |

matrixrow | linalg2 | This symbol is an n-ary constructor used to represent rows of matrices. Its arguments should be members of a ring. |

max | minmax1 | This symbol denotes the unary maximum function which takes a set as its argument and returns the maximum element in that set. |

mean | s_data1 | This symbol represents an n-ary function denoting the mean of its arguments. That is, their sum divided by their number. |

mean | s_dist1 | This symbol represents a unary function denoting the mean of a distribution. The argument is a univariate function to describe the distribution. That is, if f is the function describing the distribution. The mean is the expression integrate(x*f(x)) w.r.t. x over the range (-infinity,infinity). |

median | s_data1 | This symbol represents an n-ary function denoting the median of its arguments. That is, if the data were placed in ascending order then it denotes the middle one (in the case of an odd amount of data) or the average of the middle two (in the case of an even amount of data). |

mega | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^6$ |

metre | units_metric1 | This symbol represents the measure of one metre. This is the standard SI unit measure for physical distance. |

metre_sqrd | units_metric1 | This symbol represents the measure of one metre squared. This is the standard SI measure for physical area. |

metres_per_second | units_metric1 | This symbol represents the measure of one metre per second. This is the standard SI measure for speed. |

metres_per_second_sqrd | units_metric1 | This symbol represents the measure of one metre per second squared. This is the standard SI measure for acceleration. |

micro | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^-6$ |

midpoint | plangeo3 | The midpoint between two points or two endpoints of a segment. |

mile | units_imperial1 | This symbol represents the measure of one (land, or statute) mile. This is a standard imperial measure for distance, defined in terms of the foot. |

mile_us_survey | units_us1 | This symbol represents the measure of one U.S. Survey mile. |

miles_per_hr | units_imperial1 | This symbol represents the measure of one mile per hour. This is a standard imperial measure for speed. |

miles_per_hr_sqrd | units_imperial1 | This symbol represents the measure of one mile per hour squared. This is a standard imperial measure for acceleration. |

milli | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $0.001$ |

min | minmax1 | This symbol denotes the unary minimum function which takes a set as its argument and returns the minimum element in that set. |

minimal_groebner_element | polygb2 | This symbol is a function with 3 arguments. First argument is a list of variables, the second is an ordering, the third is a list B of polynomials. [Optionally, the fourth is a polynomial ring.] When applied to its arguments, it represents the polynomial in the Groebner basis of B with respect to the ordering with the least leading monomial. |

minimal_polynomial | finfield1 | This symbol represents a function with one or two arguments. Its first argument should be an element x of a finite field F. The second argument should be a subfield K of F. It returns the minimal polynomial of x over K. If there is only one argument, K defaults to the prime subfield of F. |

minus | arith1 | The symbol representing a binary minus function. This is equivalent to adding the additive inverse. |

minus | opnode | A constant value, constructs the minus for subtraction nodes. |

minus | field1 | This symbol represents a unary function, whose argument should be a field S. It returns the map sending an element of S to its additive inverse. |

minus | polyd1 | The sum. The argument is a DMPL. The sum lies within the same "poly_ring_d", i.e., a program implementing this operation should return a DMP with the same "poly_ring_d". |

minute | units_time1 | This symbol represents the measure of one minute of time. |

mode | s_data1 | This symbol represents an n-ary function denoting the mode of its arguments. That is the value which occurs with the greatest frequency. |

modulo_relation | integer2 | This symbol represents a univariate function, whose argument should be an integer. When applied to an integer m, it denotes the equivalence relation of being equal modulo m on Z. |

modulo_relation | polynomial2 | This symbol represents a univariate function, whose argument should be a polynomial. When applied to a polynomial m, it denotes the equivalence relation of being equal modulo m. |

mole | physical_consts1 | This symbol represents the number of atoms in one gramme of carbon(12). |

moment | s_data1 | This symbol is used to denote the i'th moment of a set of data. The first argument should be the degree of the moment (that is, for the i'th moment the first argument should be i), the second argument should be the point about which the moment is being taken and the rest of the arguments are treated as the data. For n data values x_1, x_2, ..., x_n the i'th moment about c is (1/n) ((x_1-c)^i + (x_2-c)^i + ... + (x_n-c)^i). See CRC Standard Mathematical Tables and Formulae, editor: Dan Zwillinger, CRC Press Inc., 1996, section 7.7.1. |

moment | s_dist1 | This symbol represents a ternary function to denote the i'th moment of a distribution. The first argument should be the degree of the moment (that is, for the i'th moment the first argument should be i), the second argument is the value about which the moment is to be taken and the third argument is a univariate function to describe the distribution. That is, if f is the function which describe the distribution. The i'th moment of f about a is the integral of (x-a)^i*f(x) with respect to x, over the interval (-infinity,infinity). |

momentum | dimensions1 | This symbol represents the momentum physical dimension, it is mass times velocity. |

monoid | group1 | This symbol is a unary function, whose argument should be a group G. When applied to G its value is the monoid underlying G. |

monoid | monoid1 | This symbol is a constructor for monoids. It takes three arguments in the following order: a set to specify the elements in the monoid, a binary operation to specify the monoid operation, and an element to specify the identity. The binary operation should act on elements of the set and return an element of the set. |

monte_carlo_eq | polyslp | This is a Monte-Carlo equality test, it takes three arguments, the first two are slps representing polynomials, the third argument is the maximum probability of incorrectness that is required of the equality test. (Monte-Carlo equality tests are very important for slps as they offer the only tractable method of solving the equality problem in many cases) |

multinomial | combinat1 | The multinomial coefficient, multinomial(n, n1, ... nk) is the number of ways of choosing ni objects of type i (i from 1 to k) without regard to order, in such a way that the total number of objects chosen is n. multinomial(n, n1, ... nk) is equal to n!/(n1!*n2! ...*nk!). |

multiplication | group1 | This symbol represents a unary function, whose argument should be a group G. It returns the multiplication map on G. We allow for the map to be n-ary. |

multiplication | field1 | This symbol represents a unary function, whose argument should be a field S. It returns the multiplication map on the field. We allow for the map to be n-ary. |

multiplication | magma1 | This symbol represents a unary function, whose argument should be a magma G. It returns the multiplication map on G. We allow for the map to be n-ary. |

multiplication | monoid1 | This symbol represents a unary function, whose argument should be a monoid M. It returns the multiplication map on M. We allow for the map to be n-ary. |

multiplication | ring1 | This symbol represents a unary function, whose argument should be a ring S. It returns the multiplication map on S. We allow for the map to be n-ary. |

multiplication | semigroup1 | This symbol represents a unary function, whose argument should be a semigroup S. It returns the multiplication map on S. We allow for the map to be n-ary. |

multiplicative_group | field1 | This symbol is a unary function, whose argument should be a field S. When applied to S its value is the multiplicative group on the nonzero elements of S. |

multiplicative_group | ring3 | This is a unary function, whose argument is a ring R. When applied to R, it denotes the group of invertible elements of R with respect to the multiplication on R. |

multiplicative_monoid | ring1 | This symbol is a unary function, whose argument should be a ring S. When applied to S its value is the monoid underlying S. |

multiset | multiset1 | This symbol represents the multiset construct. It is either an n-ary function, in which case the multiset entries are given explicitly, or it works on an elements construct. There is no implied ordering to the elements of a multiset. |

N | setname1 | This symbol represents the set of natural numbers (including zero). |

Name | meta | An element containing the string corresponding to the name of the symbol being defined. This must match the syntax for symbol names given in the OpenMath Standard. Here and elsewhere white space occurring at the begining or end of the string will be ignored. |

NaN | nums1 | A symbol to convey the notion of not-a-number. The result of an ill-posed floating computation. See IEEE standard for floating point representations. |

nano | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^-9$ |

nary | sts | Constructs a child of mapsto which denotes an arbitrary number of copies of the argument of nary. |

nassoc | sts | Constructs a child of mapsto which denotes an arbitrary number of copies of the argument of nassoc. The operator is associative on these arguments which means that repeated uses may be flattened/unflattened. |

negation | ring1 | This symbol represents a unary function, whose argument should be a ring S. It returns the map sending an element of S to its additive inverse. |

neq | relation1 | This symbol represents the binary inequality function. |

neqmod | integer2 | This symbol represents a Boolean valued trivariate function, whose arguments should be integers. When applied to integers a, b, m, it denotes the Boolean evalue of the assertion that a and b are not equal modulo m. |

neqmod | polynomial2 | This symbol represents a Boolean valued trivariate function, whose arguments should be polynomials. When applied to polynomials a, b, m, it denotes the Boolean evalue of the assertion that a and b are not equal modulo m. |

Newton | units_metric1 | This symbol represents the measure of one Newton. This is the standard SI measure for force. |

Newton_per_sqr_metre | units_metric1 | This symbol represents the measure of one Newton per square metre. This is another (deprecated in OpenMath) name for the standard SI measure for pressure, the Pascal. |

nil | list2 | The empty list |

node_selector | polyslp | Takes an slp as the first argument, the second argument is the position of the required node. Returns the node of the slp at this position. |

normal_closure | group1 | The binary function whose value is the set of conjugates of the elements of the second group by elements of the first, where multiplication between them is defined. |

normalizer | group3 | This symbols represents a binary function whose first argument should be a group G and whose second argument should be a set of elements or a subgroup L of the group G. Its value is the subgroup of G of all elements normalizing L. |

not | logic1 | This symbol represents the logical not function which takes one boolean argument, and returns the opposite boolean value. |

notin | multiset1 | This symbol has two arguments, an element and a multiset. It is used to denote that the element is not in the given multiset. |

notin | set1 | This symbol has two arguments, an element and a set. It is used to denote that the element is not in the given set. |

notprsubset | multiset1 | This symbol has two (multiset) arguments. It is used to denote that the first multiset is not a proper subset of the second. A proper subset of a multiset is a subset of the multiset but not actually equal to it. |

notprsubset | set1 | This symbol has two (set) arguments. It is used to denote that the first set is not a proper subset of the second. A proper subset of a set is a subset of the set but not actually equal to it. |

notsubset | multiset1 | This symbol has two (multiset) arguments. It is used to denote that the first multiset is not a subset of the second. |

notsubset | set1 | This symbol has two (set) arguments. It is used to denote that the first set is not a subset of the second. |

nthdiff | calculus1 | This symbol is used to express the nth-iterated ordinary differentiation of a unary function. The first argument is n, and the second the unary function. |

null | limit1 | This symbol is used within a limit construct to avoid specifying the method of approach to the limit. It takes no arguments. |

NumericalValue | sts | Denotes an OpenMath object that is to be thought of as something that represents a numerical value, or a numerical value. |

Object | sts | Denotes any OpenMath object. |

omtype | omtypes | The type of symbolic type symtype |

one | alg1 | This symbol represents the multiplicative identity element. |

op_node | polyslp | This constructor takes three arguments. The first argument is a symbol from opnode, meant to specify whether the node is a plus, minus times or divide node, the second and third arguments are integers, which are the numbers of the lines which are the arguments of the operation |

or | logic1 | This symbol represents the logical or function which is an n-ary function taking boolean arguments and returning a boolean value. It is true if any of the arguments are true or false otherwise. |

orbit | permgrp | The binary function whose value is the set of integers which are in the orbit of the second argument under the action of the first argument which is a permutation group. |

orbit | permgp1 | The binary function whose first argument should be a permutation group G. If the second argument is an element of the support of G, the value is the orbit of the second argument under the action of G. Otherwise, it is the singleton consisting of the second argument. |

orbits | permgp1 | This is a function with one argument, which should be a permutation group. When evaluated at a permutation group G, it returns the set of all orbits of G on elements from the support of G. |

ord | integer2 | This symbol denotes a binary function. Its first argument shoud be a prime number p, the second an integer n. When applied to p and n, it represents the highest power of p occurring in a factorization of n. |

order | relation0 | Proposition; the type of order relations, namely relations that are reflexive, antisymmetric and transitive. |

order | permgp1 | This is a function with one argument, which should be a permutation group. When evaluated with argument G it returns the size of the group G. |

order | permutation1 | This symbol is a function with one argument which should be a permutation. When applied to a permutation P, it represents the least positive integer n for which composition of n copies of P represents the identity (that is, a permutation with empty support). Note: in this definition of the order, it does not matter whether left_compose or right_compose is being used. |

ordering | polyd | Used as an attribute to indicate an ordering of the terms in a polynomial or list of polynomials. The value of this attribute should be one of the constructors specifying ordering. |

ordering | polyd2 | Used as an attribute to indicate an ordering of the monomials in a polynomial or list of polynomials. The value of this attribute should be one of the constructors specifying ordering. |

oriented_interval | interval1 | A symbol to denote a continuous 1-dimensional interval without any information about the character of the end points (used in definite integration). The arguments are the start and the end points of the integration, in either order. |

other | mathmlattr | A symbol to be used within an OpenMath attribute to specify the MathML "other" attribute of the object. The annotation should be an OpenMath string representing the value of the other attribute. |

otherwise | piece1 | This symbol introduces the 'default' value of a piecewise construct. If none of the previous piece constructs can provide the value, this will. It has a single child, the value. |

outerproduct | linalg1 | This symbol represents the outer product function. It takes two vector arguments and returns a matrix. It is defined as follows: if we write the {i,j}'th element of the matrix to be returned as m_{i,j}, then: m_{i,j}=a_i * b_j where a_i,b_j are the i'th and j'th elements of a, b respectively. |

P | setname1 | This symbol represents the set of positive prime numbers. |

Pair | sigma | The pairing constructor. It takes two OpenMath objects as first element and second element of the pair, and a third optional OpenMath object that represents the type of this pair. |

Pair | ecc | The pairing constructor. It takes two OpenMath objects as first element and second element of the pair, and a third optional OpenMath object that represents the type of the pair. |

PairProj1 | sigma | The first projection function. It satisfies sigma-reduction. |

PairProj1 | ecc | The first projection function that extracts the first component of a Pair. It satisfies the sigma-reduction rule. |

PairProj2 | sigma | The second projection function. It satisfies sigma-reduction. |

PairProj2 | ecc | The second projection function that extracts the second component of a Pair. It satisfies sigma-reduction rule. |

parallel | plangeo3 | parallel is a binary boolean function with input two lines, halflines or segments. Its value is true whenever the two inputs are parallel. |

partial_equivalence | relation0 | Proposition; the type of partial_equivalence relations, namely relations that are symmetric, and transitive. |

partialdiff | calculus1 | This symbol is used to express partial differentiation of a function of more than one variable. It has two arguments, the first is a list of integers which index the variables of the function, the second is the function. |

partialdiffdegree | calculus1 | This symbol is used to express partial differentiation of a function of more than one variable. It has three arguments, the first is a list of integers which give the degrees by which the function is differentiated by the corresponding variable. The second is the total degree (which should therefore be the sum of the values in the first list, but may be given symbolically). The third is the function. |

partially_factored | poly | The constructor for a factorization. Its arguments are formal powers (see operator above), where nothing in particular is assumed about the polynomials (they may or may not be irreducible, or relatively prime). |

Pascal | units_metric1 | This symbol represents the measure of one Newton per square metre. This is the standard SI measure for pressure. |

permutation | permut1 | The n-ary constructor permutation. The arguments are the integers 1 .. n in some order. permutation(p1, ..., pn) is the function which takes 1 to p1, 2 to p2 and so on. |

permutation | permutation1 | This symbol is an n-ary constructor whose arguments are cycles of length at least 2 with the property that all entries of all cycles are mutually distinct. The permutation symbol constructs a bijective map from the set X of entries of the cycles to X. The map is defined as follows: if E occurs as an entry of a cycle, then the permutation maps E to the entry following E in the same cycle if it exists and to the first entry in the same cycle otherwise. When applied to an element y outside X, the constructed permutation is considered to fix y. |

permutationsn | permutation1 | This symbol is a unary function. Its argument should be a positive integer. When applied to argument n, the resulting value is the set of all permutations of the set {1,..., n}. |

perpbisector | plangeo3 | Given two distinct points A and B, this is the line of all points at equal distance to both A and B. |

perpendicular | plangeo3 | perpendicular is a binary boolean function with input two lines, halflines or segments. Its value is true whenever the two inputs are perpendicular to each other. |

perpline | plangeo3 | Given a point p and a line L, this defines the line through p perpendicular to L. |

peta | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^15$ |

pi | nums1 | A symbol to convey the notion of pi, approximately 3.142. The ratio of the circumference of a circle to its diameter. |

pico | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^-12$ |

piece | piece1 | This introduces an individual component of a piecewise definition. It has precisely two arguments: the first is the value, and the second is a Boolean (meant to be a predicate) which is true if and only if this piece is to provide the value of the piecewise construct. |

piecewise | piece1 | This operator heads an expression that is being defined piecewise. Its arguments are n objects built with the piece constructor, optionally followed by one built with otherwise constructor. |

pint | units_imperial1 | This symbol represents the measure of one (imperial) pint. This is the standard imperial measure for volume. See units_us1 for the U.S. pint. |

pint_us_dry | units_us1 | This symbol represents the measure of one U.S. dry pint. |

pint_us_liquid | units_us1 | This symbol represents the measure of one U.S. liquid pint. |

PiType | lc | The type constructor of dependant function space. It binds the (type-attributed) variables in the body, that is an OpenMath object. |

Planck_constant | physical_consts1 | This symbol represents the fundamental constant equal to the ratio of the energy of a quantum of energy to its frequency. It is approximately equal to 6.6260755*10^(-34) +/- 4.0*10^(-40) Joule seconds. |

plus | arith1 | The symbol representing an n-ary commutative function plus. |

plus | indnat | Addition of natural numbers defined recursively by using the successor. |

plus | opnode | A constant value, constructs the plus for addition nodes. |

plus | polyd | The sum. The argument is a DMPL. The sum lies within the same "PolyRingD" i.e. a program implementing this operation should return a DMP with the same "poly_ring_d" (or "poly_ring_d_named"). |

plus | polyd1 | The sum. The argument is a DMPL. The sum lies within the same "poly_ring_d", i.e., a program implementing this operation should return a DMP with the same "poly_ring_d". |

point | plangeo1 | The symbol is used to indicate a point of planar Euclidean geometry by a variable. The point may (but need not) be subject to constraints. The symbol takes the variable as the first argument and the constraints as further arguments. |

polarline | plangeo3 | Given a point p and a circle C this defines the polar line of p with respect to C. |

poly_d_named_to_arith | polyd3 | This symbol is a unary function. Its argument is a DMP with named variables. When applied to R, the symbol denotes the arithmetic expression that is the sum of the terms. |

poly_d_to_arith | polyd3 | This symbol is a binary function. The first argument is a DMP and the second argument is a list of objects, typically variables or arithmetic expressions, at least as many as there are variables in the ring to which the DMP belongs. When applied to R and L, the symbol denotes the arithmetic expression that is the sum of the terms with the i-th variable of the ring of the DMP being substituted by the i-th expression or variable of the list L. |

poly_r_rep | polyr | A constructor for the representation of polynomials. The first argument is the polynomial variable, the rest are monomials (in decreasing order of exponent). |

poly_ring | ring3 | This symbol represents a binary function. The first argument should be a ring and the second a variable. When evaluated on such arguments R and X, the function represents the free commutative ring over R generated by X. This ring can also be viewed as the ring of polynomials over R with indeterminate X. |

poly_ring_d | polyd | The constructor of polynomial ring. The first argument is a ring (the ring of the coefficients), the second is the number of variables as an integer. |

poly_ring_d | polyd1 | The constructor of polynomial ring. The first argument is a ring (the ring of the coefficients), the second is the number of variables as an integer. |

poly_ring_d_named | polyd | The constructor of polynomial ring. The first argument is a ring (the ring of the coefficients), the remaining arguments are the names of the variables. The first variable given is the most important from the point of view of lexicographic ordering, then the second, and so on. |

poly_ring_d_named | polyd1 | The constructor of polynomial ring. The first argument is a ring (the ring of the coefficients), the remaining arguments are the names of the variables. The first variable given is the most important from the point of view of lexicographic ordering, then the second, and so on. |

poly_ring_SLP | polyslp | The constructor of the polynomial ring. The first argument is a ring, (the ring of the coefficients), the rest are the variables, in any order. |

poly_u_rep | polyu | A constructor for the representation of polynomials. The first argument is the polynomial variable, the rest are monomials (in decreasing order of exponent). |

polynomial_assertion | plangeo5 | This symbol is a function in one argument, which should be an assertion whose configuration is coordinatized (that is, each geometric object involved has coordinates). When evaluated at an assertion assertion(C,T) it represents the assertion that the constant polynomial 1 belongs to the ideal of the polynomial ring over a coefficient ring R containing the rationals and all global (unbound) coordinates of C, in the bound variables of ideal(C) and an external variable t, generated by ideal(C)[bound variables] and 1-f_T t. Here f_T is a polynomial such that f_T=0 is equivalent to the thesis T being true. This means f_T is in the radical ideal of ideal(C)[bound variables]. The interpretation is as follows: There are no parameter choices for the bound variables such that f_T is nonzero. In other words, for all parameter choices of a coordinatization of C, we must have f_T=0. So the truth of the assertion that thesis T holds in configuration C is reflected by the truth of polynomial_assertion(C,T). |

polynomial_r | polyr | The constructor of Recursive Polynomials. The first argument is the polynomial ring containing the polynomial and the second is a "poly_r_rep". |

polynomial_ring | polysts | The type of all polynomial rings, e.g. from polyr or polyd OCDs |

polynomial_ring_r | polyr | The constructor of a recursive polynomial ring. The first argument is a ring (the ring of the coefficients), the rest are the variables (in order). |

polynomial_ring_u | polyu | The constructor of a univariate polynomial ring. The first argument is a ring (the ring of the coefficients), the second is the variable. |

polynomial_SLP | polyslp | The constructor of Polynomials built with Straight Line Program representation. The first argument is the polynomial ring containing the polynomial built with poly_ring_SLP, The second argument is the program body built with prog_body. |

polynomial_u | polyu | The constructor of Recursive Polynomials. The first argument is the polynomial ring containing the polynomial and the second is a "poly_u_rep". |

pound_force | units_imperial1 | This symbol represents the measure of force of one pound. |

pound_mass | units_imperial1 | This symbol represents the measure of the mass which weighs one pound under the influence of standard gravity. |

power | arith1 | This symbol represents a power function. The first argument is raised to the power of the second argument. When the second argument is not an integer, powering is defined in terms of exponentials and logarithms for the complex and real numbers. This operator can represent general powering. |

power | group1 | This is a symbol with three arguments. The first argument is a group G. Its second argument is an element g of G and the third argument is an integer k. It denotes the element g^k in G. |

power | poly | Takes a polynomial and a (non-negative) integer and produces a formal power. Although OpenMath does not specify operational semantics, the idea here is that these powers are not evaluated. We note that the power from arith1 would suggest the expanded form. |

power | polyd | The power. First argument is a DMP, second argument is the integer power. The power lies within the same "PolyRingD" i.e. a program implementing this operation should return a DMP with the same "poly_ring_d" (or "poly_ring_d_named"). |

power | field1 | This is a symbol with two or three arguments. Its first argument should be an element g of a field and the second argument should be an integer. The optional third argument is the field G containing g. It denotes the element g^k in G. |

power | polyd1 | The power. First argument is a DMP, second argument is the integer power. The power lies within the same "poly_ring_d", i.e., a program implementing this operation should return a DMP with the same "poly_ring_d". |

power | ring1 | This is a symbol with two or three arguments. Its first argument should be a an element g of a ring and the second argument should be an integer. The optional third argument is the ring G containing g. It denotes the element g^k in G. |

powerset | set3 | This symbol represents unary function whose argument should be a set. When applied to a set X, it represents the collection of all subsets of X. |

pre_order | relation0 | Proposition; the type of preorder relations, namely relations that are reflexive and transitive. |

predicate_on_list | fns2 | This symbol is used to denote the chains of application or a binary predicate typified by a < b < c. In particular it is used to support the usage in MathML, where transative relations are classed as nary, but the underlying OpenMath symbols are binary. The symbol takes two arguments; the first of which is the binary predicate, the second a list. It is true if every application of the predicate on a pair of elements of the list, taken in order, returns true, otherwise it is false. |

prefix | units_ops1 | This symbol represents the fact that the second argument (a unit) has been effectively multiplied by a constant specified by the first argument (a prefix). |

pressure | dimensions1 | This symbol represents the pressure physical dimension. |

primitive_element | finfield1 | This symbol has one or two arguments. If there is only one argument, it must be a prime power q. The optional second argument is a polynomial m which is primitive over the prime subfield of GF(q). This symbol returns a primitive element for GF(q) with minimal polynomial m. If there is only one argument, then the minimal polynomial is assumed to be the conway polynomial for GF(q). |

principal_ideal | ring3 | This symbol represents a binary function. The first argument is a ring R and the second argument is an element of R. When evaluated on R and such a second argument, the function represents the ideal in R generated by the second argument. |

procedure_block | prog1 | The block of code defining the body of the procedure. The syntax is procedure_block(local_var, global_var, block1), where local_var encodes the local variables (private to the procedure body), gloval_var are global variables that are know to the procedure and block1 is the body of the procedure. All these elements, locar_var, global_var and block1, should be present (but they can also be empty). |

procedure_call | prog1 | Symbol procedure_call can be used to "call" already defined procedures. The syntax is procedure_call(name, call_arguments), where name is the encoding of an OpenMath variable (OMV) representing the name of the function and call_arguments are the arguments to pass to the function. Both, name and call_arguments, should be present but call_arguments can be empty. |

procedure_definition | prog1 | This symbol can be used to define a procedure. The sintax is procedure_definition(name, def_arguments, procedure_block), where name is the encoding of an OpenMath variable representing the name of the procedure, def_arguments encodes the argument the procedure can receive and procedure_block encodes the body of the procedure. Contrary to function procedures can have knowledge about global objects by means of the global_var construct (see procedure block). |

product | arith1 | An operator taking two arguments, the first being the range of multiplication e.g. an integral interval, the second being the function to be multiplied. Note that the product may be over an infinite interval. |

prog_body | polyslp | The constructor of the body of the straight line program the arguments represent straight line instructions, as constructed by the following three constructors, op_node, inp_node and const_node, possibly wrapped in the return symbol (from the opnode CD). The order is taken to be the order in which they appear. |

Prop | typesorts | The type of propositions |

prove | directives1 | This symbol is a function with one argument, which should be a clause. When applied to a clause C, it asks for a proof of C. |

prove_in_theory | directives1 | This symbol is a function with two arguments, the first of which should be a clause and the second of which should be a symbol indicating a logic theory. When applied to arguments C, T, it asks for a proof of C in theory T. |

prsubset | multiset1 | This symbol has two (multiset) arguments. It is used to denote that the first multiset is a proper subset of the second, that is a subset of the second multiset but not actually equal to it. |

prsubset | set1 | This symbol has two (set) arguments. It is used to denote that the first set is a proper subset of the second, that is a subset of the second set but not actually equal to it. |

Q | setname1 | This symbol represents the set of rational numbers. |

Q | fieldname1 | This is a symbol representing the field of rational numbers. |

quaternion_group | groupname1 | This symbol represents the quaternion group of order 8. |

quaternion_group | permgp2 | This symbol represents the quaternion group of order 8, viewed as a permutation group by means of the regular representation (multiplication from the right). It is generated by (1,2,3,4)(5,8,6,7) and (1,5,2,6)(3,7,4,8). (In the usual notation, the 8 elements are 1, -1, i, -i, j, -j, k, -k.) |

quaternions | ringname1 | This symbol represents a unary function. Its argument is a ring R. When evaluated on R, the function represents the ring of quaternions over R, that is, the ring with basis 1,i,j,k over R such that ij=-ji=k, i^2=j^2=k^2=-1. |

quotient | integer1 | The symbol to represent the integer (binary) division operator. That is, for integers a and b, quotient(a,b) denotes q such that a=b*q+r, with |r| less than |b| and a*r positive. |

quotient | polyslp | A quotient function for polynomials represented by slps. It is a requirement that this is an exact division. |

quotient | polynomial3 | This symbol represents the binary division operator on univariate polynomials over fields. That is, for univariate polynomials a and b, quotient(a,b) denotes the polynomial q such that a=b*q+r, with degree(r) less than degree(b). |

quotient_by_poly_map | ring5 | This symbol is a binary function whose first argument is a ring R, and whose second argument is a univariate polynomial f with coefficients from R. So, if the indeterminate is X, when applied to R and f, the function has value the natural quotient map from R[X] to the quotient ring R[X]/(f). |

quotient_group | group3 | The binary function whose value is the factor group of the first argument by the second, assuming the second is normal in the first. |

quotient_map | ring5 | This symbol is a binary function whose first argument is a ring R and whose second argument is an ideal I of R. When applied to R and I, its value is the natural quotient map from R to the quotient ring R/I. |

quotient_ring | ring3 | This is a binary function, whose first argument is a ring R and whose second argument is an ideal I of R. When applied to R and I, it denotes the quotient ring of R by I. |

QuotientField | setname2 | This symbol represents the quotient field of any integral domain. |

R | setname1 | This symbol represents the set of real numbers. |

R | fieldname1 | This is a symbol representing the field of real numbers. |

radius | plangeo3 | The radius of a circle. |

radius_of | plangeo3 | Gives the radius of a circle. |

range | fns1 | This symbol denotes the range of a function, that is a set that the function will map to. The single argument should be the function whos range is being queried. It should be noted that this is not necessarily equal to the image, it is merely required to contain the image. |

rank | linalg4 | This symbol represents the function which takes one matrix argument and returns the number of linearly independent rows (or columns) of that matrix. |

rank | polyd1 | This is a unary function, whose argument can be a DMP, a poly_ring_d, or a poly_ring_d_named. When applied to its argument, it represents the number of variables of the polynomial ring involved. |

rational | nums1 | This symbol represents the constructor function for rational numbers. It takes two arguments, the first is an integer p to denote the numerator and the second a nonzero integer q to denote the denominator of the rational p/q. |

rational_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type of a rational number. |

real | complex1 | This represents the real part of a complex number |

real_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type of a real number. |

reduce | polyd | The reduction of a polynomial with respect to a Groebner basis. First argument is a DMP, the second argument is a "groebnered" object. i.e. a program implementing this operation should return a DMP which represents the polynomial reduced with respect to the Groebner basis. |

reduce | polygb1 | The reduction of a polynomial with respect to a list P of polynomials. First argument is a polynomial expression p, the second argument is the list P of polynomials, the third argument is a list of variables, the fourth argument is a monomial reduction ordering. A program implementing this operation should return a polynomial which represents a polynomial reduced from p with respect to P. This means that p is expressible as the sum of the returned polynomial and a linear combination of the polynomials from P with coefficients being polynomials in the variables given in the third argument, and that no monomial of the returned polynomial is divisible by the leading monomial of an element from P. |

reflexive | relation0 | Proposition; the type of reflexive binary relations. |

reflexive_closure | relation3 | This symbol represents a binary function whose first argument is a set S, whose second argument is a relation R on S. When applied to S and R, it represents the smallest reflexive relation (with respect to inclusion) on S containing R. |

relation | relation0 | Type constructor; returns the type of binary relations on a set. |

remainder | integer1 | The symbol to represent the integer remainder after (binary) division. For integers a and b, remainder(a,b) denotes r such that a=b*q+r, with |r| less than |b| and a*r positive. |

remainder | polynomial3 | The symbol represents a binary function, whose arguments should be univariate polynomials in the same polynomial ring whose coefficient ring is a field. When applied to a and b, it represents the polynomial remainder after division of a by b. |

resistance | dimensions1 | This symbol represents the resistance physical dimension, it is the resistance that an electrical circuit has to flow of charge. |

response | directives1 | This symbol is a function of one argument, which should be a query. When applied to a query, it refers to the response a service might give. It will mainly be used in this CD to express formal mathematical properties of queries. |

rest | list2 | This symbol represents a function which returns a list made up of all the elements except the first of its argument, which should be a list. |

restriction | fns1 | restriction takes two arguments, a function f, and a set S, which should be a subset of domain(f) and returns the function f restricted to S. |

resultant | poly | Function taking three arguments, it represents the resultant of two polynomials, which are the first two arguments, with respect to the given variable which is the third argument. |

return | opnode | A unary function, takes a node of an slp, returns the value of the polynomial which corresponds to this node of the slp. |

return | prog1 | This symbol can be used to return values from fuctions. |

return_node | polyslp | Takes an slp as the argument, and returns the return node of the slp. |

reverse | list2 | The reverse of a list |

reverse_lexicographic | polyd | The reverse lexicographic ordering of terms. Note that, if a poly_ring_d_named is used, lexigographic refers to the order of the variables in the poly_ring_d_named, not to their order as strings. |

reverse_lexicographic | polyd2 | The reverse lexicographic ordering of monomials |

right_compose | fns2 | This symbol represents a function forming the right-composition of its two functional arguments. |

right_compose | permutation1 | This symbol is a binary function. Its arguments should be permutations. When applied to arguments P1 and P2, the resulting value is the permutation which maps x in Support(P1) union Support(P2) to P2(P1(x)). |

right_coset | group4 | This symbol represents a ternary function whose first argument is a group G, whose second argument is a subgroup H of G, and whose third argument is an element x of G. Its value on G, H, and x is the right coset of H in G containing x, that is, the set H x. |

right_coset_representative | group4 | This symbol represents a quaternary function whose first argument is a group G, whose second argument is a subgroup H of G, whose third argument is right_transversal T of H in G, and whose fourth argument is an element of G. It assigns to G, H, T, g the element of t of T representing the right coset of H containing g, that is, H t = H g. |

right_cosets | group4 | The binary function whose value is the set of right cosets of the second argument in the first. |

right_divides | magma1 | This symbol is a ternary function. Its first argument should be a magma M and the second and third arguments should be elements of M. When applied to M, a, and b, it denotes the fact that a is a right_divisor of b in M. This means that there is v in M such that va = b. |

right_expression | magma1 | This symbol is a binary function. Its first argument should be a magma M, the second argument a list L of elements of M When applied to M and L, it denotes the right product (( ... (L[1] * L[2]) * ... ) * L[n]) of all elements in the list L. |

right_inverse | fns1 | This symbol is used to describe the right inverse of its argument (a function). This inverse may only be partially defined because the function may not have been surjective. If the function is not surjective the right inverse function is ill-defined without further stipulations. No other assumptions are made on the semantics of this right inverse. |

right_inverse_multiplication | group2 | This symbol is a function with two arguments, which should be a group M and an element x of M. When applied to M and x, it denotes right multiplication on M by the inverse of x. |

right_multiplication | group2 | This symbol is a function with two arguments, which should be a group M and an element x of M. When applied to M and x, it denotes right multiplication on M by x. |

right_multiplication | field2 | This symbol is a function with two arguments, which should be a field M and an element x of M. When applied to M and x, it denotes right multiplication on M by x. |

right_multiplication | monoid2 | This symbol is a function with two arguments, which should be a monoid M and an element x of M. When applied to M and x, it denotes right multiplication on M by x. |

right_multiplication | ring2 | This symbol is a function with two arguments, which should be a ring M and an element x of M. When applied to M and x, it denotes right multiplication on M by x. |

right_multiplication | semigroup2 | This symbol is a function with two arguments, which should be a semigroup M and an element x of M. When applied to M and x, it denotes right multiplication on M by x. |

right_quotient_map | group5 | This symbol is a binary function whose first argument is a group G and whose second argument is an subgroup H of G. When applied to G and H, its value is the natural quotient map from G to the quotient group G/H, sending x to the left coset xH of G. |

right_ref | polyslp | Takes as argument a node of an slp. Returns the value of the right hand pointer of the node. |

right_transversal | group4 | The binary function whose value is a set of representatives for the right cosets of the second argument as a subgroup of the first. |

ring | ring1 | This symbol is a constructor for rings. It takes six arguments R, a, o, i, m, e,: which are, respectively, a set R to specify the elements in the ring, a binary operation a on R, an element o of R, and a unary operation i on R such that [R,a,o,i] is a commutative group, a binary operation m on R and an element e of R such that [R,m,e] is a monoid. |

Role | meta | An element containing the string corresponding to the role of the symbol being defined. |

root | arith1 | A binary operator which represents its first argument "lowered" to its n'th root where n is the second argument. This is the inverse of the operation represented by the power symbol defined in this CD. Care should be taken as to the precise meaning of this operator, in particular which root is represented, however it is here to represent the general notion of taking n'th roots. As inferred by the signature relevant to this symbol, the function represented by this symbol is the single valued function, the specific root returned is the one indicated by the first CMP. Note also that the converse of the second CMP is not valid in general. |

round | rounding1 | The round to nearest operation. |

rowcount | linalg4 | This symbol represents the function which takes one matrix argument and returns the number of rows in that matrix. |

scalar | linalg5 | This symbol represents a matrix which is a scalar constant times the identity matrix. It should take two arguments, the first specifes the number of rows and columns in the matrix respectively and the third specifies the scalar multiplier. |

scalarproduct | linalg1 | This symbol represents the scalar product function. It takes two vector arguments and returns a scalar value. The scalar product of two vectors a, b is defined as |a| * |b| * cos(\theta), where \theta is the angle between the two vectors and |.| is a euclidean size function. Note that the scalar product is often referred to as the dot product. |

schreier_tree | permgp1 | This is a function with two arguments. The first argument should be a permutation group G, the second argument a point x permuted by G. When evaluated at G and x, it returns a list of three lists X,V,B. The first list, X, enumerates the points of the G-orbit of x. The second list and the third list both have the same length as X, say n. The second list represents a map V from [1,...,n] to {-m,...,-1,0,1,...,m}, where m is the number of generators of G, and the third list represents a map B from [1,...,n] to X. These maps satisfy the following properties: X(1) = B(1) = x. Moreover, V(i) = 0 if and only if i = 1. For each index i distinct from 1, the value B(i) is equal to X(j) for some index j smaller than i. If V(i) is positive, then X(i) is the image of B(i) under the V(i)-th generator of G. If V(i) is negative, then B(i) is the image of X(i) under the (-V(i))-th generator of G. |

sdev | s_data1 | This symbol represents a function requiring two or more arguments, denoting the sample standard deviation of its arguments. That is, the square root of (the sum of the squares of the deviations from the mean of the arguments, divided by the number of arguments). See CRC Standard Mathematical Tables and Formulae, editor: Dan Zwillinger, CRC Press Inc., 1996, (7.7.11) section 7.7.1. |

sdev | s_dist1 | This symbol represents a unary function denoting the standard deviation of a distribution. The argument is a univariate function to describe the distribution. The standard deviation of a distribution is the arithmetical mean of the squares of the deviation of the distribution from the mean. |

SDMP | polyd | The constructor for multivariate polynomials without any indication of variables or domain for the coefficients. Its arguments are just "term"s. No terms should differ only by the coefficient (i.e it is not permitted to have both "2*x*y" and "x*y" as terms in a SDMP). SDMP can be attributed with the "ordering" symbol to indicate a particular ordering of its terms. This attribute shall not be set if the SDMP is part of DMPL that has this attribute set. If the SDMP is ordered, explicitly or implicitly via an outer ordering, the terms must be in decreasing order with respect to this order. The zero polynomial is represented by an SDMP with no terms. |

SDMP | polyd1 | The constructor for multivariate polynomials without any indication of variables or domain for the coefficients. Its arguments are just "monomial"s. No monomials should differ only by the coefficient (i.e it is not permitted to have both "2*x*y" and "x*y" as monomials in a SDMP). SDMP can be attributed with the "ordering" symbol to indicate a particular ordering of its monomials. This attribute shall not be set if the SDMP is part of DMPL that has this attribute set. |

sec | transc1 | This symbol represents the sec function as described in Abramowitz and Stegun, section 4.3. It takes one argument. |

sech | transc1 | This symbol represents the sech function as described in Abramowitz and Stegun, section 4.5. It takes one argument. |

second | units_metric1 | This symbol represents the measure of one second. This is the standard SI measure for time. |

second | units_time1 | This symbol represents the measure of one second of time. This is the standard SI unit measure for time. |

segment | plangeo2 | The segment of a line between two points of the line. The segment is contained in the affine part of the line. The symbol takes as arguments the two points. |

select | list3 | This symbol takes two lists as arguments, L and M say. The second argument is a list containing only entries from [1..n], where n is the length of L. The symbol represents the function which returns a list whose length is equal to the length of M, and having at position k the value of L at position M_k. |

semigroup | monoid1 | This symbol is a unary function, whose argument should be a monoid M. When applied to M its value is the semigroup underlying M. |

semigroup | semigroup1 | This symbol is a constructor for semigroups. It takes two arguments in the following order: a set to specify the elements in the semigroup, and a binary operation to specify the semigroup operation. The binary operation should act on elements of the set and return an element of the set. |

Semigroup | semigroup | The contructor for the type of semigroups as a Setoid with a binary operation. |

set | set1 | This symbol represents the set construct. It is an n-ary function. The set entries are given explicitly. There is no implied ordering to the elements of a set. |

set_affine_coordinates | plangeo4 | Defines the affine coordinates of an affine point or line. |

set_coordinates | plangeo4 | This symbol defines the coordinates of a point or a line. The coordinates are the projective coordinates and consist of a vector of length 3. Points whose third coordinates are zero are the points at infinity. The line whose first two coordinates are zero is the line at infinity. |

set_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type for a set. |

setdiff | multiset1 | This symbol is used to denote the multiset difference of two multisets. It takes two multisets as arguments, and denotes the multiset that contains all the elements that occur in the first multiset with strictly greater multiplicity than in the second. The multiplicity in the result is the difference of the two. |

setdiff | set1 | This symbol is used to denote the set difference of two sets. It takes two sets as arguments, and denotes the set that contains all the elements that occur in the first set, but not in the second. |

SetNumericalValue | sts | Denotes an OpenMath object that is to be thought of as something that represents a set of numerical values, or a set of numerical values. |

Setoid | setoid | The contructor for the type of set with an equivalence relation on it. |

SigmaType | sigma | The type constructor of cartesian products. It takes a list of type-attributed variables and an OpenMath object. |

SigmaType | ecc | The binder symbol used to construct the type of Cartesian products. The (either plain or attributed) variables might occur in the body \OM\ object. |

sign | permutation1 | This symbol is a function with one argument which should be a permutation. When applied to a permutation P, it represents the sign of P, which is equal to -1 if P is an odd permutation and equal to 1 otherwise. |

Signature | metasig | This symbol is used to represent the element of a signature file which specifies the signature of a symbol. It should take two string children, the first should be the symbol who's signature is being specified, the second should be an 'OMOBJ' element which specifies the signature. Additionally the second argument should specify an object which must represent a valid type in the type system identified by the XML attribute 'type' corresponding to the element which corresponds to the symbol 'CDSignatures' enclosing this symbol. |

sin | transc1 | This symbol represents the sin function as described in Abramowitz and Stegun, section 4.3. It takes one argument. |

sinh | transc1 | This symbol represents the sinh function as described in Abramowitz and Stegun, section 4.5. It takes one argument. |

size | multiset1 | This symbol is used to denote the number of elements in a multiset. It is either a non-negative integer, or an infinite cardinal number. The symbol infinity may be used for an unspecified infinite cardinal. |

size | set1 | This symbol is used to denote the number of elements in a set. It is either a non-negative integer, or an infinite cardinal number. The symbol infinity may be used for an unspecified infinite cardinal. |

size | linalg4 | This symbol represents the function which takes one vector argument and returns the length of that vector. |

size | list2 | This symbol is used to denote the number of elements in a list. It is either a non-negative integer. |

skew-symmetric | linalg5 | This symbol represents a skew-symmetric matrix, it takes one argument. The argument should be a vector of vectors of elements of the matrix. For j>i the ij'th element of the matrix is the (j-i+1)'th element of the i'th element of the argument. This determines the elements above the diagonal of the matrix, the elements below the diagonal of the matrix must conform to the rule M = - transpose M. This rule implies that the elements on the diagonal must be equal to 0, therefore we do not include these in the argument. |

SL | group3 | This symbol is a function with one argument, which should be a a module V over a commutative ring. When applied to V it represents the group of all invertible linear transformations of V of determinant 1. |

SLn | group3 | This symbol is a function with two arguments. The first should be a positive integer n, the second a field F. When applied to n and F it represents the group of all invertible linear transformations of the vector space over F of dimension n having determinant 1. |

slp_degree | polyslp | A unary function taking an slp as argument and returning the apparent multiplicative degree of the slp, without performing any cancellation. |

source | graph1 | Given an arrow, this symbol refers to the vertex where the arrow starts. It takes one argument, the arrow. |

specification | fns3 | This symbol denotes the specification of a function. It is a unary function. When aplied to its argument, which should be a function applied to three arguments, it returns the third argument of the function, that is, the function specification. |

speed | dimensions1 | This symbol represents the speed physical dimension. It is the size of the derivative of distance with respect to time. |

speed_of_light | physical_consts1 | This symbol represents the speed of light in a vacuum. It is approximately 299792458 metres per second. |

squarefree | poly | The square-free decomposition of its argument. A program that can compute the factorization is required to return a "squarefreed" object. |

squarefreed | poly | The constructor for a square-free factorization. Its arguments should have the structure of the above "factored", where the polynomials should be square-free. Note that this is not necessarily a minimal square-free decomposition: some exponents can occur more than once. Again, this is a statement that we have a square-free factorisation, rather than a request to compute one. |

stabilizer | permgrp | The first argument is a permutation group, the second is some object (point or set) upon which the first argument acts. The value is the subgroup of the first argument which stabilize the second argument. |

stabilizer | permgp1 | This is an n-ary function with n at least 2. The first argument is a permutation group G, the other arguments are elements x_2,x_3,...,x_n upon which G acts. The value is the subgroup of G consisting of all permutations which stabilize each of x_2,x_3,...,x_n. |

stabilizer_chain | permgp1 | This function takes one argument which should be a permutation group. When applied to the permutation group G, its value is a list consisting of two lists B, H of equal length. The first list B is a base for G, whereas the i-th entry H[i] of the second list is the stabilizer in G of the elements B[1], ..., B[i]. |

Stirling1 | combinat1 | The Stirling numbers of the first kind. (-1)^(n-m)*Stirling1(n,m) is the number of permutations of n symbols which have exactly m cycles. Note that there are a few slightly different definitions of these numbers. |

Stirling2 | combinat1 | The Stirling numbers of the second kind. Stirling2(n, m) is the number of partitions of a set with n elements into m non empty subsets. Note that there are a few slightly different definitions of these numbers. |

strict_order | relation0 | Proposition; the type of strict order relations, namely relations that are irreflexive, antisymmetric and transitive. |

string | omtypes | The type of character strings |

strings | monoid3 | This symbol represents a unary function. The argument is a list or a set. When evaluated on such an argument, the function represents the set of all strings whose characters are entries of the list or set. |

structure | sts | The structure element is used to represent a structure of a particular (algebraic) type. |

style | mathmlattr | A symbol to be used within an OpenMath attribute to specify the style attribute of the object. The annotation should be an OpenMath string representing the value of the style attribute. |

subfield | field1 | This symbol is a constructor symbol with one or two arguments. The first argument is a list or set, D, of field elements. The optional second argument is the field G containing D. It denotes the subfield of G generated by D. |

subgroup | group1 | This symbol is a constructor symbol with one or two arguments. The first argument is a list or set, D, of group elements. The optional second argument is the group G containing D. It denotes the subgroup of G generated by D. |

submagma | magma1 | This symbol is a constructor symbol with two arguments. The first argument is a magma M, the second a list or set, D, of elements of M. When applied to M and D, it denotes the submagma of M generated by D. |

submonoid | monoid1 | This symbol is a constructor symbol with two arguments. The first argument is a monoid M, the second a list or set, D, of elements of M. When applied to M and D, it denotes the submonoid of M generated by D. |

subring | ring1 | This symbol is a constructor symbol with one or two arguments. The first argument is a list or set, D, of ring elements. The optional second argument is the ring G containing D. It denotes the subring of G generated by D. |

subsemigroup | semigroup1 | This symbol is a constructor symbol with two arguments. The first argument is a semigroup S, the second a list or set, D, of elements of S. When applied to S and D, it denotes the subsemigroup of S generated by D. |

subset | multiset1 | This symbol has two (multiset) arguments. It is used to denote that the first set is a subset of the second, i.e. every element of the first occurs with multiplicity at least as much in the second. |

subset | set1 | This symbol has two (set) arguments. It is used to denote that the first set is a subset of the second. |

subtraction | field1 | This symbols represents a unary function, whose argument should be a field. It returns the binary operation of subtraction on the field. |

subtraction | ring1 | This symbols represents a unary function, whose argument should be a ring. It returns the binary operation of subtraction on the ring. |

succ | indnat | Successor function on the natural number. Constructor for the inductively defined natural numbers. Takes argument a a natural number and returns a natural number. |

suchthat | list1 | This symbol represents the suchthat function which may be used to construct lists, it takes two arguments. The first argument should be the set which contains the elements of the list, the second argument should be a predicate, that is a function from the set to the booleans which describes if an element is to be in the list returned. |

suchthat | set1 | This symbol represents the suchthat function which may be used to construct sets, it takes two arguments. The first argument should be the set which contains the elements of the set we wish to represent, the second argument should be a predicate, that is a function from the set to the booleans which describes if an element is to be in the set returned. |

sum | arith1 | An operator taking two arguments, the first being the range of summation, e.g. an integral interval, the second being the function to be summed. Note that the sum may be over an infinite interval. |

support | permgp1 | This represents a unary function whose argument should be a permutation group. When evaluated at a permutation group G, it is the set of points which are moved a member of G. |

support | permutation1 | This symbol is a function with one argument which is a permutation. When applied to a permutation whose arguments are the cycles A1,...,An, it represents the set A which is the union of the entries of all Ai for i=1,...,n. |

sylow_subgroup | group3 | This symbol represents a binary function with two arguments, the first is a group G and the second a prime number p. When applied to G and p, it represents a Sylow p-subgroup of G (which is unique up to conjugacy in G). |

symmetric | linalg5 | This symbol represents a symmetric matrix, it takes one argument. The argument should be a vector of vectors of elements of the matrix. For j>=i the ij'th element of the matrix is the (j-i+1)'th element of the i'th element of the argument. This determines the upper triangle of the matrix, the lower triangle is specified by the rule M = transpose M. |

symmetric | relation0 | Proposition; the type of symmetric binary relations. |

symmetric_closure | relation3 | This symbol represents a binary function whose first argument is a set S, whose second argument is a relation R on S. When applied to S and R, it represents the smallest symmetric relation (with respect to inclusion) on S containing R. |

symmetric_group | group3 | This symbol is a function with one argument, which should be a set X. When applied to a set X it represents the group of all permutations on X . |

symmetric_group | permgp2 | This symbol represents a unary function. Its argument is either a positive integer or a set. When evaluated on a set, it represents the permutation group of all permutations of that set. When evaluated on a positive integer n, it represents the permutation group of all permutations of the set {1,..., n}. |

symmetric_groupn | group3 | This symbol is a function with one argument, which should be a natural number n. When applied to n it represents the group of all permutations on the set {1,2,... ,n}. |

symtype | omtypes | The type of symbolic types introduced in other CDs |

tan | transc1 | This symbol represents the tan function as described in Abramowitz and Stegun, section 4.3. It takes one argument. |

tangent | plangeo3 | Given a line L and a circle C this boolean checks whether L is a tangent line to C. |

tanh | transc1 | This symbol represents the tanh function as described in Abramowitz and Stegun, section 4.5. It takes one argument. |

target | graph1 | Given an arrow, this symbol refers to the vertex the arrow points to. It takes one argument, the arrow. |

temperature | dimensions1 | This symbol represents the temperature physical dimension. |

tera | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^12$ |

term | polyd | The constructor of terms. Valid applications are of the form Term(coeff, exp1, exp2, ... expn) which represents the term coeff * var1^exp1*...varn^expn where n is the number of variables, expi are non-negative integers. coeff should be non-zero. |

term | polyr | A constructor for monomials, that is products of powers and elements of the base ring. First argument is from N (the exponent of the variable implied by an outer poly_r_rep) second argument is a coefficient (from the ground field, or a polynomial in lesser variables). |

term | polyu | A constructor for monomials, that is products of powers and elements of the base ring. First argument is from N (the exponent of the variable implied by an outer poly_u_rep) second argument is a coefficient (from the ground field) |

term | polyd1 | The constructor of monomials. Valid applications are of the form Term(coeff, exp1, exp2, ... expn) which represents the monomial coeff * var1^exp1*...varn^expn where n is the number of variables, expi are non-negative integers. |

time | dimensions1 | This symbol represents the time physical dimension. |

times | arith1 | The symbol representing an n-ary multiplication function. |

times | arith2 | The symbol representing an n-ary multiplication function inheriting from the times in arith1, but with the extra property that here it must be commutative. |

times | indnat | Multiplication of natural numbers defined recursively by using the successor and plus. |

times | opnode | A constant value, constructs the times for multiplication nodes. |

times | polyd | The product. The argument is a DMPL. The product lies within the same "PolyRingD" i.e. a program implementing this operation should return a DMP with the same "poly_ring_d" (or "poly_ring_d_named"). |

times | polyd1 | The product. The argument is a DMPL. The product lies within the same "poly_ring_d", i.e., a program implementing this operation should return a DMP with the same "poly_ring_d". |

transitive | relation0 | Proposition; the type of transitive binary relations. |

transitive_closure | relation3 | This symbol represents a binary function whose first argument is a set S, whose second argument is a relation R on S. When applied to S and R, it represents the smallest transitive relation (with respect to inclusion) on S containing R. |

transpose | linalg1 | This symbol represents a unary function that denotes the transpose of the given matrix or vector |

tridiagonal | linalg5 | This symbol represents a tridiagonal matrix, it takes one argument which should be a vector of vectors which should have three elements. These should be vectors representing the sub-diagonal, the diagonal and the super-diagonal in that order. |

true | logic1 | This symbol represents the boolean value true. |

trunc | rounding1 | The round to zero operation. |

Tuple | ecc | The n-ary tupling constructor when n>2. The arguments are the element of the tuple. Tuple objects can also be constructed by successive nesting of Pair. |

type | mathmltypes | A symbol to be used within an OpenMath attribute to specify the type of the object. |

type | sts | A symbol to be used within an OpenMath attribute to specify the type of the object. |

type | cc | Attribution tag to denote type-judgement |

type | lc | Attribution tag to denote type-judgement |

type | ecc | Attribution tag to denote type-judgement |

type | icc | Attribution tag to denote type-judgement |

type | plangeo1 | The symbol represents the type of the basic geometric objects: points, lines, configuration. |

Type | typesorts | The cumulative type of the type of sets in a hierarchy of types. |

Type0 | typesorts | The type of sets in a hierarchy of types. |

typecoerce | cc | Attribution tag to denote type-judgement with coercion |

typecoerce | lc | Attribution tag to denote type-judgement with coercion |

typecoerce | ecc | Attribution tag to denote type-judgement with coercion |

typecoerce | icc | Attribution tag to denote type-judgement with coercion |

unary_minus | arith1 | This symbol denotes unary minus, i.e. the additive inverse. |

unexpected | moreerrors | This symbol represents the error which is returned when an application reads an error caused by an unexpected problem. It will have at least one argument, which is a string describing the problem. It may have a second argument which is relevant to the error. |

unexpected_symbol | error | This symbol represents the error which is raised when an application reads a symbol which is not present in the mentioned content dictionary. When receiving such a symbol, the application should act as if it had received the OpenMath error object constructed from unexpected_symbol and the unexpected symbol as in the example below. |

unhandled_symbol | error | This symbol represents the error which is raised when an application reads a symbol which is present in the mentioned content dictionary, but which it has not implemented. When receiving such a symbol, the application should act as if it had received the OpenMath error object constructed from unhandled_symbol and the unhandled symbol as in the example below. |

union | multiset1 | This symbol is used to denote the n-ary union of multisets. It takes multisets as arguments, and denotes the multiset that contains all the elements that occur in any of them, with multiplicity the sum of all the multiplicities in the multiset arguments. |

union | set1 | This symbol is used to denote the n-ary union of sets. It takes sets as arguments, and denotes the set that contains all the elements that occur in any of them. |

unit_prefix | units_sts | The type of all unit prefixes, such as "kilo". |

unsupported_CD | error | This symbol represents the error which is raised when an application reads a symbol where the mentioned content dictionary is not present. When receiving such a symbol, the application should act as if it had received the OpenMath error object constructed from unsupported_CD and the symbol from the unsupported Content Dictionary as in the example below. |

unwind | transc2 | The unwinding number denotes the extent to which $z=\ln\exp z$ is not true. It was orignally defined in Corless,R.M. & Jeffrey,D.J., The Unwinding Number. SIGSAM Bulletin 30(1996) 2, pp. 28-35. However, we take the definition (which has a change of sign) from Corless,R.M., Davenport,J.H., Jeffrey,D.J. & Watt,S.M., According to Abramowitz and Stegun. SIGSAM Bulletin 34(2000) 2, pp. 58--65. Note that the symbol is normally denoted by ${\cal K}$. |

upper-Hessenberg | linalg5 | This symbol represents an upper-Hessenberg matrix, it takes one argument, the argument is a vector of vectors representing the non-zero elements. The first element of the argument specifies the value of the first subdiagonal, the subsequent elements specify the value of the diagonal and subsequent super-diagonals, all other elements are zero. |

upper-triangular | linalg5 | This symbol represents an upper-triangular matrix, it takes one argument. The argument should be a vector of vectors of elements of the matrix. |

variables | polyd1 | This is a unary function, whose argument is a poly_ring_d_named. When applied to its argument, it represents the list of variables of the polynomial ring. |

variance | s_data1 | This symbol represents a function requiring two or more arguments, denoting the variance of its arguments. That is, the square of the standard deviation. |

variance | s_dist1 | This symbol represents a unary function denoting the variance of a distribution. The argument is a function to describe the distribution. That is if f is the function which describes the distribution. The variance of a distribution is the square of the standard deviation of the distribution. |

vector | linalg2 | This symbol represents an n-ary function used to construct (or describe) vectors. Vectors in this CD are considered to be row vectors and must therefore be transposed to be considered as column vectors. |

vector | linalg3 | This symbol represents an n-ary function used to construct (or describe) vectors. Vectors in this CD are considered to be column vectors, and must therefore be transposed to be considered as row vectors. |

vector_selector | linalg1 | This symbol represents the function which allows individual entries to be selected from a vector, or a matrixrow. It takes two arguments. The first argument is the position in the vector (or matrixrow) of the required entry, the second argument is the vector (or matrixrow) in question. The indexing is one based, i.e. the first element is indexed by one. |

vector_tensor | linalg6 | This symbol denotes a n-nary function which is used to construct the tensor product vector of its arguments, which must be vectors. |

vector_type | mathmltypes | A symbol to be used as the argument of the type symbol to convey the type of a (column) vector, an n-tuple of entries. |

vectorproduct | linalg1 | This symbol represents the vector product function. It takes two three dimensional vector arguments and returns a three dimensional vector. It is defined as follows: if we write a as [a_1,a_2,a_3] and b as [b_1,b_2,b_3] then the vector product denoted a x b = [a_2b_3 - a_3b_2 , a_3b_1 - a_1b_3 , a_1b_2 - a_2b_1]. Note that the vector product is often referred to as the cross product. |

velocity | dimensions1 | This symbol represents the velocity physical dimension. It is the derivative of distance with respect to time. |

vertexset | graph1 | This symbol represents the vertex set of a (directed or undirected) graph. It takes one argument, the graph. |

vierer_group | permgp2 | This symbol represents the Klein Vierer group of order 4, viewed as a permutation group of degree 4. It consists of the identity, (1,2)(3,4), (1,3)(2,4), and (1,4)(2,3). |

volt | units_metric1 | This symbol represents the measure of one volt. This is the standard SI measure for voltage. |

voltage | dimensions1 | This symbol represents the voltage physical dimension. |

volume | dimensions1 | This symbol represents the volume physical dimension. |

Watt | units_metric1 | This symbol represents the measure of one Watt. This is the standard SI measure for power. |

week | units_time1 | This symbol represents the measure of one week of time. |

weighted | polyd | The first argument is a list of integers to act as variable weights, and the second is an ordering. The result is an ordering. |

weighted | polyd2 | The first argument is a list of integers to act as variable weights, and the second is an ordering. The result is an ordering. |

weighted_degree | polyd | The total degree of its argument, taking into account any weights declared. The value returned is an integer: non-negative if the weights are. We note that the degree of 0 is undefined. |

weighted_degree | polyd2 | The total degree of its argument, taking into account any weights declared. The value returned is an integer: non-negative if the weights are. We note that the degree of 0 is undefined. |

while | prog1 | The symbol the while loop. The syntax is while(conditional_block, block1), where conditional_block is the block that determines when to stop the while loop and block1 is the body of the while loop. |

xor | logic1 | This symbol represents the logical xor function which is an n-ary function taking boolean arguments and returning a boolean value. It is true if there are an odd number of true arguments or false otherwise. |

yard | units_imperial1 | This symbol represents the measure of one yard. This is a standard imperial measure for distance, defined in terms of the foot. |

yard_us_survey | units_us1 | This symbol represents the measure of one U.S. Survey yard. |

yocto | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^-24$ |

yotta | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^24$ |

Z | setname1 | This symbol represents the set of integers, positive, negative and zero. |

Z | ringname1 | This symbol represents the ring of integers. |

zepto | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^-21$ |

zero | alg1 | This symbol represents the additive identity element. |

zero | linalg5 | This symbol denotes a function with two integral arguments m,n which is used to construct an (mxn) zero matrix. |

zero | indnat | The natural number 0, also constant base function for the inductive definition of the type of natural numbers |

zero | field1 | This symbols represents a unary function, whose argument should be a field. It returns the zero element of the field. |

zero | ring1 | This symbols represents a unary function, whose argument should be a ring. It returns the zero element of the ring. |

zero_Celsius | physical_consts1 | This symbol represents the zero of the Celsius temperature scale. |

zero_Fahrenheit | physical_consts1 | This symbol represents the zero of the Fahrenheit temperature scale. |

zetta | units_siprefix1 | This symbol represents the fact that the subsequent unit has been effectively multiplied by $10^21$ |

Zm | setname2 | This symbol represents the set of integers modulo m, where m is not necessarily a prime. It takes one argument, the integer m. |

Zm | ringname1 | This symbol represents the ring of integers modulo m, where m is not necessarily a prime. It takes one argument, the integer m. |