Recommended path for self-study math and CS?
raffi: Oh yeah Logic in Computer Science: Modeling and Reasoning about Systems by Huth and Ryan.  We used this as a textbook in a formal methods class.  The book teaches techniques for developing proofs and for specifying and proving properties about systems.  All the way from basic logic, to proofs for structured programs, to using model checking for verifying properties of distributed systems.  These techniques will allow you to call your work engineered when you can apply them.What I appreciate most is the consistent structure for teaching each logic.  Each logic is taught by introducing the syntax with the BNF and parse trees.  The semantics are then introduced.  Then there is a mix of relevant algorithms and toy examples of how to specify systems.  This is book you could teach yourself formal methods from.