The third edition of this textbook presents an updated approach to fuzzy sets and systems that can model uncertainty -- i.e., "type-2" fuzzy sets and systems. The author demonstrates how to overcome the limitations of classical fuzzy sets and systems, enabling a wide range of applications from time-series forecasting to knowledge mining to control. In this latest edition, a bottom-up approach is presented that begins by introducing classical (type-1) fuzzy sets and systems, and then explains how they can be modified to handle uncertainty. The author covers fuzzy rule-based systems - from type-1 to interval type-2 to general type-2 - in one volume. A new chapter describes recent advances in type-1 and type-2 rule based fuzzy systems, including explainable AI (XAI), machine learning, new parameterizations of membership functions, and a top-down approach to fuzzy systems, explaining the performance improvement potential for the hierarchy of fuzzy systems using rule partitions, type-3 fuzzy sets and systems, etc. For hands-on experience, the book provides information on accessing MatLab and Java software to complement the content. The book features a full suite of classroom material.