This function applies a general algorithm to calculate the inverse map passing through the computation of the graph. Note that by default the option Verify is set to true, which means that the birationality of the map is verified using degree Phi == 1 and image Phi == target Phi.
i1 : -- map defined by the quadrics through a rational normal quartic curve Phi = rationalMap PP_(ZZ/65521)^(1,4); o1 : MultirationalMap (rational map from PP^4 to PP^5) |
i2 : -- we see Phi as a dominant map Phi = rationalMap(Phi,image Phi); o2 : MultirationalMap (dominant rational map from PP^4 to hypersurface in PP^5) |
i3 : time inverse Phi; -- used 0.17718 seconds o3 : MultirationalMap (birational map from hypersurface in PP^5 to PP^4) |
i4 : Psi = last graph Phi; o4 : MultirationalMap (birational map from 4-dimensional subvariety of PP^4 x PP^5 to hypersurface in PP^5) |
i5 : time inverse Psi; -- used 0.302457 seconds o5 : MultirationalMap (birational map from hypersurface in PP^5 to 4-dimensional subvariety of PP^4 x PP^5) |
i6 : Eta = first graph Psi; o6 : MultirationalMap (birational map from 4-dimensional subvariety of PP^4 x PP^5 x PP^5 to 4-dimensional subvariety of PP^4 x PP^5) |
i7 : time inverse Eta; -- used 0.89858 seconds o7 : MultirationalMap (birational map from 4-dimensional subvariety of PP^4 x PP^5 to 4-dimensional subvariety of PP^4 x PP^5 x PP^5) |
i8 : assert(Phi * Phi^-1 == 1 and Phi^-1 * Phi == 1) |
i9 : assert(Psi * Psi^-1 == 1 and Psi^-1 * Psi == 1) |
i10 : assert(Eta * Eta^-1 == 1 and Eta^-1 * Eta == 1) |