Singular/Sources — pull request #506 by jakobkroeker (2014-02-07 20:57:00+00:00)
Title: fix proposal for  variable conflicts in primdec.lib

needs a careful review by Gerd or Hans.
(e..g not sure if situation in `zerodec()` is covered sufficiently by tests)

The part in zeroRad() is tricky, intricate and more costly due to the lack of Singular functionality
(it is not possible do the following:)
```
ring rng = (0,a),(b),dp;
ideal I = a,b;
ring rng2 = 0,(c,d),dp;
map f = rng,c,d;
ideal I=f(I); //cannot.
```
and the fact that my proposal to add new nonconflicting variables was rejected.

But variable conflicts are a no-go and we have to workaround.
To understand what is happening , draw a picture:

We imap F and I from R to @R, then we rename variables for I,F (fetch from @R to @S1), and then we rename parameter variables in F to y(1..npars(R)) by fetch, while keeping names for I (imap from @S1 to @S . To rename parameter variables of F, we can fetch directly from @R to @S.
When mapping J back to R we can construct a direct backmap from @S or we have to go via @S1 and @R using fetch and imap.