Description:  Here’s an open textbook on logic. The book is available in several formats, including PDF or the Latex source files.
From the introduction:
 In formal logic, sentences and arguments are translated into mathematical languages with welldefined properties. If all goes well, properties of the argument that were hard to discern become clearer. The book describes two formal languages which have been of special importance to philosophers: truthfunctional sentential logic and quantified predicate logic. Each chapter contains practice exercises; solutions to selected exercises appear in an appendix.
 forall x covers sentential logic and firstorder predicate logic, including identity. For each language, it treats symbolization, formal semantics, and proof theory.
 Twentiethcentury analytic philosophy often made use of predicate logic, so understanding recent philosophy requires being able to read and understand quantified expressions. The book aims to give students enough background so as to be able to read articles and understand the symbolism. The book treats formal semantics at greater length than most introductory texts. Although the book does not prove soundness and completeness, it lays the groundwork for understanding why these are things that need to be proven.
 The book highlights the choices involved in developing sentential and predicate logic, so as to underscore that these two are not the only possible formal languages. In translating to a formal language, we simplify and profit in clarity. The simplification can come at a cost, and different formal languages are best suited to translating different parts of natural language.
