Foundation of mathematics for engineers I'm a computer engineering student and I feel like I missed a lot in my studies, so I started learning everything from the beginning by myself, and I decided to start with the foundation of mathematics (since It's the foundation). I read 3 books on logic already, and I'm reading a 4th one, i would like to know how important and helpful it is in studying more advanced math, and computer science. Any help?
Thank you!
 A: General logic texts will probably be unhelpful.
Copeland has written a book reprinting the paper in which Turing described his model of effective computability. The title is "The Essential Turing."  From this, a book on finite automata will get you to an appropriate level for your studies.
Markov's "Theory of Algorithms" is a logic for manipulating strings built from alphabets used in the constructive mathematics of the Russian school. This bears some relation to the manipulations of symbols in formal grammars. The study of formal grammars is attributed to Noam Chomsky. I have never read Chomsky, but I have found the Dover reprint, "Introduction to Formal Languages," by Revesz to be quite accessible. A natural extension of this reading list would be "Principles of Compiler Design" by Aho and Ullman (yes, Aho is the person for whom the 'a' in "awk" stands).
An equivalent computation model to that of Turing is Church's lambda calculus. Although it had been less useful for implementing logic circuits, it has proven more useful for designing programming languages. Barendregt had written the definitive tome on this calculus. But, it would be wiser to seek a copy of Church's "The Calculi of Lambda Conversion" to get a more useful explanation of the principles upon which the lambda calculus is built.
Haskell Curry built combinatory logic on the lambda calculus. There is no reason to seek his text, however. It had some problems. What has been salvaged from it will be more properly found in advanced texts on lambda calculus.
Any good text on mathematical logic will have a section introducing recursion theory (Shoenfeld, for example). With a little bit of lambda calculus, Rogers' "Theory of Recursive Functions and Effective Computability" would be a good selection to follow. Instead of a general logic book, it may be worthwhile to look at the home page of Yiannis Moschovakis. He has posted some papers on the formal language of recursion that would be as good as what would be found in a general logic book. And while second thoughts are flowing, Goodstein's "Primitive Recursive Arithmetic" takes recursion theory along a more mathematical trajectory if recursion theory becomes a more esoteric interest.
For switching functions, "Threshold Logic" by S.T. Hu would be an excellent choice. Because the concept of a threshold function is related to linear separability, application to artificial intelligence involves some analysis. Although I have never had the opportunity to read it in detail, Rockafellar has written an analysis book dedicated to the study of convex sets and functions ("Convex Analysis", of course). I would have to think that this would be more useful than a book on real analysis for a general program of mathematics.
Many of the texts mentioned above are found as used books or computer generated reprints. Many of these texts provide the topics upon which general textbooks build. Although some parts of original sources become deprecated, textbooks can never recreate the reasoning of original authors.
