Home Online Manual
Top
Back: hres
Forward: impart
FastBack: Functions and system variables
FastForward: Control structures
Up: Functions
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

5.1.59 imap

Syntax:
imap ( ring_name, name )
Type:
number, poly, vector, ideal, module, matrix or list (the same type as the second argument)
Purpose:
identity map on common subrings. imap is the map between rings and qrings with compatible ground fields which is the identity on variables and parameters of the same name and 0 otherwise. (See map for a description of possible mappings between different ground fields). Useful for mapping from a homogenized ring to the original ring or for mappings from/to rings with/without parameters. Compared with fetch, imap uses the names of variables and parameters. Unlike map and fetch imap can map parameters to variables.
Mapping rational functions which are not polynomials to polynomials is undefined (i.e. the result depends on the version).
Example:
 
  ring r=0,(x,y,z,a,b,c),dp;
  ideal i=xy2z3a4b5+1,homog(xy2z3a4b5+1,c); i;
==> i[1]=xy2z3a4b5+1
==> i[2]=xy2z3a4b5+c15
  ring r1=0,(a,b,x,y,z),lp;
  ideal j=imap(r,i); j;
==> j[1]=a4b5xy2z3+1
==> j[2]=a4b5xy2z3
  ring r2=(0,a,b),(x,y,z),ls;
  ideal j=imap(r,i); j;
==> j[1]=1+(a4b5)*xy2z3
==> j[2]=(a4b5)*xy2z3
See fetch; homog; map; qring; ring.