val = isBirationalMap(Pi)
val = isBirationalMap(phi)
The function isBirationalMap computes whether a map between projective varieties is birational. The option AssumeDominant being true will cause the function to assume that the kernel of the associated ring map is zero (default value is false). The target and source must be varieties; their defining ideals must be prime. Let's check that the plane quadratic Cremona transformation is birational.




We can also verify that a cover of $P^1$ by an elliptic curve is not birational.




Note that the Frobenius map is not birational.




Also see the very fast probabilistic birationality checking of the Cremona package: isBirational.
The object isBirationalMap is a method function with options.