So-called classical logic--the logic developed in the early twentieth century by Gottlob Frege, Bertrand Russell, and others--is computationally the simplest of the major logics, and it is adequate for the needs of most mathematicians. But it is just one of the many kinds of reasoning in everyday thought. Consequently, when presented by itself--as in most introductory texts on logic--it seems arbitrary and unnatural to students new to the subject.
In Classical and Nonclassical Logics , Eric Schechter introduces classical logic alongside constructive, relevant, comparative, and other nonclassical logics. Such logics have been investigated for decades in research journals and advanced books, but this is the first textbook to make this subject accessible to beginners. While presenting an assortment of logics separately, it also conveys the deeper ideas (such as derivations and soundness) that apply to all logics. The book leads up to proofs of the Disjunction Property of constructive logic and completeness for several logics.
The book begins with brief introductions to informal set theory and general topology, and avoids advanced algebra; thus it is self-contained and suitable for readers with little background in mathematics. It is intended primarily for undergraduate students with no previous experience of formal logic, but advanced students as well as researchers will also profit from this book.
I really appreciate, as a fuzzy logic enjoyer, Schechter's deliberate choice to identify classical logic and other logics as merely choices, and noting the non-necessity of things like the Law of the Excluded Middle to a system of reasoning. This book does well in presenting the propositional or sentiential calculus, the so called zeroth-order logic. It presents a fine, but not exemplary, presentation of syntactics. Its presentation of semantics is amongst the best in its class. It does not cover, in any detail, the quantificational or predicate calculus, the so-called first-order logic. However, I think that is to it's benefit, because for what it does in teaching zeroth-order logic in a systematic, pluralistic way it does exceptionally well in most regards.
The writing in this book is quite good and I each individual chapter did a decent job of presenting its content. Schechter presents logic in a very different way from your typical introductory textbook, and the use of different logics to get the basic principles across is quite nice.
However, the book is lacking in terms of overall organizational structure. The decision to put semantics ahead of syntactics means that the book fails to properly motivate its material until after the reader has learned semantics. This causes the discussions on soundness and completeness to fall flat. There are also a number of typos.