### 4.10.1 map declarations

Syntax:
  `map` name `=` preimage_ring_name `,` ideal_expression `;`
  `map` name `=` preimage_ring_name `,` list_of_poly_and_ideal_expressions `;`
  `map` name `=` map_expression `;`

Purpose:
  defines a ring map from preimage_ring to basering.
  Maps the variables of the preimage ring to the generators of the ideal. If the ideal contains less elements than variables in the preimage_ring the remaining variables are mapped to 0, if the ideal contains more elements these are ignored. The image ring is always the current basering. For the mapping of coefficients from different fields see map.

Default:
  none

Note:
  There are standard mappings for maps which are close to the identity map: `fetch` and `imap`.

  The name of a map serves as the function which maps objects from the preimage_ring into the basering. These objects must be defined by names (no evaluation in the preimage ring is possible).

Example:

        ring r1=32003,(x,y,z),dp;
        ideal i=x,y,z;
        ring r2=32003,(a,b),dp;
        map f=r1,a,b,a+b;
        // maps from r1 to r2,
        // x -> a
        // y -> b
        // z -> a+b
        f(i);
      ==> _[1]=a
      ==> _[2]=b
      ==> _[3]=a+b
        // operations like f(i[1]) or f(i*i) are not allowed
        ideal i=f(i);
        // objects in different rings may have the same name
        map g   = r2,a2,b2;
        map phi = g(f);
        // composition of map f and g
        // maps from r1 to r2,
        // x -> a2
        // y -> b2
        // z -> a2+b2
        phi(i);
      ==> _[1]=a2
      ==> _[2]=b2
      ==> _[3]=a2+b2

See fetch; ideal expressions; imap; map; ring.

User manual for Singular version 4-0-3, 2016, generated by texi2html.