This book introduces readers to fuzzy sets and fuzzy systems, providing a thorough explanation of both the mathematics behind fuzzy logic and the application of fuzzy systems. Throughout the book, application led material is presented, contextualizing the material in each chapter. This book begins with an introduction to fuzzy sets. Also covered are linguistic variables, the main operations that allow us to build fuzzy systems, a section on how to build fuzzy systems, and a section on learning fuzzy systems. Data-driven fuzzy systems (ANFIS) are covered, along with Fuzzy clustering (fuzzy c-means) and Type-2 fuzzy systems Non-stationary fuzzy systems. This book includes exercises to test student understanding, including freely available R code. At the end of the book, the authors briefly present open research questions in fuzzy logic including more detail on type-2 fuzzy sets and non-stationary fuzzy sets. Also highlighted are topics for student to explore, such as MSc projects.