If you are installing vinyl flooring over tile I would recommend that your foundation be floated off with a self leveling portland based floor float. "Easy Float Floor Mix" is the name of one product. Vinyl flooring is plyable and stretches easy and direct installation of vinyl over tile can cause a tile pattern to form in your new vinyl floor. It can be applied in thin layers.
If you are installing ceramic tile over concrete and your foundation is wavy or has lots of dips and humps these areas should be repaired in the same fashion. Take a 4' level and place it flush on your concrete foundation in various areas to check for these problems.
If you are installing new vinyl over old vinyl I would recommend you apply an acrylic based coating to the surface of the old vinyl first. It will increase the mechanical bond of the glue used to install the new layer.