Solving Problems Involving Rational Functions