I am trying to get good at proofs by working through How To Prove It. Unfortunately I am very bothered by the fact that I do not understand all the formalities in First Order Logic + set theory (FOL+ST) and this makes it difficult to motivate myself to practice. Is there a good resource for learning the formalities of FOL+ST? I want a good grasp of things such as
- what notions are taken as basic and how the formal terms and rules are built from those
- when you're allowed to do different inference steps
- how some common basic mathematical steps are accomplished (say applying a theorem or definition, converting between quantifiers, converting between equivalent terms), even if they take place outside the theory
I don't mind having the formalities explained (partially) in terms of FOL+ST since I am already familiar with how it works (just not especially good at it and not yet comfortable with it).
I found the explanations of various Type Theory formal systems in Benjamin Pierce's Types and Programming Languages and Robert Harper's Practical Foundations for Programming Languages satisfying, so something along those lines would work well.
I think that one does not need to know formal logic or axiomatic set theory to understand basics of most mathematical disciplines.
One the other hand, there is a "gap" between intuitive mathematics one does in high school and rigorous mathematics one does in university. From the description of the book you mention, it looks like it is one of those books that try to address this gap. I can recommend another one - "Basic Concepts of Mathematics" of Elias Zakon. It can be downloaded freely for personal use form http://www.trillia.com/zakon1.html