*forall x: Calgary* is a full-featured textbook on formal
logic. It covers key notions of logic such as consequence and validity
of arguments, the syntax of truth-functional propositional logic TFL and
truth-table semantics, the syntax of first-order (predicate) logic FOL
with identity (first-order interpretations), symbolizing English in TFL
and FOL, and Fitch-style natural deduction proof systems for both TFL
and FOL. It also deals with some advanced topics such as modal logic,
soundness, and functional completeness. Exercises with solutions are
available. It is provided in PDF (for screen reading, printing, and a
special version for dyslexics), HTML (with additional accessibility
features), and in LaTeX source code.

Instructors wishing to adopt it should consider the open-source Carnap system, which supports the notation
and proof systems of *forall x: Calgary*. Check out the sample
exercises for the book on carnap.io. (There is also an outdated and
unsupported proof editor/checker for the proof system used available at
proofs.openlogicproject.org.)

The book has been translated into German (forall *x*:
Dortmund) and Portuguese (Para
Tod*x*s: Natal).

The book is available in HTML to read online.

The HTML conversion is experimental. If you find issues in it, especially issues that affect screen readers, please report it by filing an issue or send an email to Richard Zach. Note that solutions are not yet included in the HTML version.

You can download PDFs of the **most current version under
development** here:

`forallxyyc.pdf`

(in color, for screen reading)`forallxyyc-accessible.pdf`

(an accessible version for dyslexics)`forallxyyc-print.pdf`

(b/w, for printing on Quarto stock)`forallxyyc-letter.pdf`

(b/w, for printing on regular letter-size paper)`forallxyyc-solutions.pdf`

(solutions booklet)

The a SCORM ZIP package of HTML bundled with plain and accessible versions of the PDF is available here:

You can use this file to easily provide the entire text inside your LMS (Canvas, Moodle, D2L/Brightspace).

**Note that these files change whenever the source files
change.** So if you use the text in a course, it is best to
download the PDFs or the SCORM package and make them available to
students directly rather than to link here, to avoid mismatches between
versions.

Major changes between editions are listed in the changelog.

PDFs of the **Fall 2021** edition are archived here:

`forallxyyc-f21.pdf`

`forallxyyc-accessible-f21.pdf`

`forallxyyc-print-f21.pdf`

`forallxyyc-letter-f21.pdf`

`forallxyyc-solutions-f21.pdf`

PDFs of the **Fall 2020** edition are archived here:

`forallxyyc-f20.pdf`

`forallxyyc-accessible-f20.pdf`

`forallxyyc-print-f20.pdf`

`forallxyyc-letter-f20.pdf`

`forallxyyc-solutions-f20.pdf`

If you’d like to purchase a nice paperback copy of the Fall 2023 edition, you can do so on Amazon (US | CA | UK | DE | AU), or use search in your local Amazon store. Be sure to get the latest version that’s available in print (Fall 2023). The version on Amazon usually is not as current as the PDF. Changes are recorded in the Changelog.

(The process for getting the book printed is described here and here.)

Clone the GitHub repository locally or download the ZIP file and run LaTeX on one of

`forallxyyc.tex`

(in color, for screen reading)`forallxyyc-accessible.tex`

(accessible version)`forallxyyc-print.tex`

(b/w, for printing on Quarto stock)`forallxyyc-letter.tex`

(b/w, for printing on regular letter-size paper)

You’ll have to run `makeglossaries`

to produce the
glossary as well, or use `latexmk`

.

To make changes to the definitions in the preamble and
`forallyyc.sty`

file, put them in a file named
`forallxyyc-local.sty`

. For instance, to get the connectives
to be ∼, &, ⊃, ≡ instead of ¬, ∧, →, ↔︎, and atomic formulas
*Lab* instead of *L(a,b)*, copy
`forallxyyc-local-sample.sty`

to that file.

To convert the book to HTML:

- Install LaTeXML.
- Install BookML and
its dependencies. If your source files live in, say,
`~/forallx-yyc`

you should have a subdirectory`~/forallx-yyc/bookml`

. - run
`make -f Bookml.mk`

from inside`~/forallx-yyc`

.

If this works, your HTML files can be found in
`~/forallx-yyc/auxdir/html/forallxyyc-html/`

and the SCORM
package in `~/forallx-yyc/SCORM.forallxyyc-html.zip`

.

*forall x: Calgary* is based on *forall x:
Cambridge*, by Tim
Button used under a CC BY 4.0
license, which is based in turn on *forall x*, by P. D. Magnus used under a CC BY 4.0
license, and was remixed, revised, & expanded by Aaron
Thomas-Bolduc & Richard
Zach. It includes additional material from *forall x* by
P.~D. Magnus and *Metatheory*
by Tim Button, both used under a CC BY 4.0
license, from *forall x:
Lorain County Remix*, by Cathal Woods and
J. Robert Loftis, used with permission, and *A
Modal Logic Primer* by Robert
Trueman, used with permission.

This work is licensed under a Creative Commons Attribution 4.0 International License.

The LaTeX source code for this work is available on GitHub at github.com/rzach/forallx-yyc.