Algebra 2 by Edward Kohn & David Alan Herzog