#12 in Science & math books
Use arrows to jump to the previous/next product
Reddit mentions of Discrete Mathematics with Applications
Sentiment score: 28
Reddit mentions: 47
We found 47 Reddit mentions of Discrete Mathematics with Applications. Here are the top ones.
Buying options
View on Amazon.comor
- an elementary college textbook for students of math, engineering and the sciences in general
Features:
Specs:
Height | 10 Inches |
Length | 8 Inches |
Number of items | 1 |
Weight | 4.05 pounds |
Width | 1.55 Inches |
Here's my list of the classics:
General Computing
Computer Science
Software Development
Case Studies
Employment
Language-Specific
C
Python
C#
C++
Java
Linux Shell Scripts
Web Development
Ruby and Rails
Assembly
What OS? Linux, of course. When TPB order everything locked down, you don't want to be caught using a Microsoft OS. -- What distribution? The easy path is Ubuntu, with the Cinnamon UI, or LinuxMint 13, when issued (May 2012).
What IDE? There's lots to choose from. My favorite is "geany".
https://en.wikipedia.org/wiki/Geany
For TCP/IP protocol tutorial. Recently updated by Wright:
Stevens, "TCP/IP Illustrated", 3-volume set.
http://www.amazon.com/TCP-IP-Illustrated-Volume-Set/dp/0201776316
On human interface guidelines relevant to programming:
https://en.wikipedia.org/wiki/Human_interface_guidelines
For GNOME 2, see:
http://library.gnome.org/devel/hig-book/stable/
To develop Linux applications:
You are right. You MUST know how to program in C. When others tell you that object oriented programming is the thing, know that you can do object oriented programming in C. Avoid interpreted languages (Python, Java, and others) as a first programming language. Interpreted languages teach bad habits and hid too much of what's going on from you such that debugging becomes difficult to impossible.
However, if all you intend is "casual programming", the Python will do, if you must. It's just not the best choice first a first language if your intent is to become a "professional programmer". I use Python myself; It works for what I need to do quick and dirty.
Definitive, but for experienced programmers:
http://www.amazon.com/C-Programming-Language-2nd-Edition/dp/0131103628/ref=sr_1_1?s=books&ie=UTF8&qid=1335197606&sr=1-1
As a tutorial for someone learning a first programming language and how to program from zero:
Perry, "Absolute Beginner's Guide to C", 2ed.
-- I have not read the book, but the ToC looks reasonable for a beginner.
http://www.amazon.com/Absolute-Beginners-Guide-2nd-Edition/dp/0672305100/ref=sr_1_6?s=books&ie=UTF8&qid=1335197606&sr=1-6
OK, you don't want a full CS curriculum, but some topics in discrete mathematics are mandatory. ... Ack! Having looked over the offerings at Amazon, I believe that Epp, "Discrete Mathematics with Applications" may be the best of the lot, but at $187, it is hard to recommend without knowing your intent and interest. The reason I suggest this title is that it looks focused on application to computer science topics. It covers a number of topics that are NOT covered in many of the other titles, enough so that should you use other texts you will have spent more than the $187 that this title includes. JMHO.
http://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328/ref=sr_1_1?s=books&ie=UTF8&qid=1335199316&sr=1-1
See also: Sedgwick, "Algorithms" -- You'll probably need it sooner than later.
http://www.amazon.com/Algorithms-4th-Edition-Robert-Sedgewick/dp/032157351X/ref=sr_1_1?s=books&ie=UTF8&qid=1335200153&sr=1-1
Remember that Linux OS? You are going to need some programming tools, right? If you intend to write GUI applications based on the GTK+ toolkit, then install the package "glade" or "glade-gtk". Installing a glade package will suck in over 100 other packages essential to building a GTK based GUI application. Specifying glade to the package manager is just easier that finding and installing all the other necessary parts by hand.
If you are going to do command line based UI programs, then package "build-essentials" should be adequate.
There are some other things to read:
On how to organize, grow and maintain a Linux software development project: Fogel, "Producing Open Source Software"
http://producingoss.com/
You can read it online here, but buy the book too to help support Fogel. He's gotta eat too.
On the culture of writing Open Source Software:
Raymond, "The Cathedral and the Bazaar"
http://www.catb.org/~esr/writings/cathedral-bazaar/
Linux programming is not like Windows programming.
Read and study ESR's TAOP.
Raymond, "The Art of Unix Programming"
http://www.catb.org/~esr/writings/taoup/html/
You can read it online, free. However, buy a hardcopy too. Raymond has to eat too.
Now to get really technical. What interface do you write to?
Kerrick, "The Linux Programming Interface: A Linux and UNIX System Programming Handbook"
http://www.amazon.com/The-Linux-Programming-Interface-Handbook/dp/1593272200/ref=sr_1_1?s=books&ie=UTF8&qid=1335201257&sr=1-1#reader_1593272200
Beginning to focus on GNU style programming:
GNU Coding Standards
https://www.gnu.org/prep/standards/
GNU Coding Standards is more than how to and how much to indent a line or how to set braces. You will get into the topic of Make and Autotools. Make is a program to build complex softare and Autotools is about how to build a package for distribution, the package that any Unix flavor can use; it is not focused on any specific distribution. See also: "configure and make"
Enough! There's more, but I have too much time in this already for today.
[edit: typos]
> Mathematical Logic
It's not exactly Math Logic, just a bunch of techniques mathematicians use. Math Logic is an actual area of study. Similarly, actual Set Theory and Proof Theory are different from the small set of techniques that most mathematicians use.
Also, looks like you have chosen mostly old, but very popular books. While studying out of these books, keep looking for other books. Just because the book was once popular at a school, doesn't mean it is appropriate for your situation. Every year there are new (and quite frankly) pedagogically better books published. Look through them.
Here's how you find newer books. Go to Amazon. In the search field, choose "Books" and enter whatever term that interests you. Say, "mathematical proofs". Amazon will come up with a bunch of books. First, sort by relevance. That will give you an idea of what's currently popular. Check every single one of them. You'll find hidden jewels no one talks about. Then sort by publication date. That way you'll find newer books - some that haven't even been published yet. If you change the search term even slightly Amazon will come up with completely different batch of books. Also, search for books on Springer, Cambridge Press, MIT Press, MAA and the like. They usually house really cool new titles. Here are a couple of upcoming titles that might be of interest to you: An Illustrative Introduction to Modern Analysis by Katzourakis/Varvarouka, Understanding Topology by Shaun Ault. I bet these books will be far more pedagogically sound as compared to the dry-ass, boring compendium of facts like the books by Rudin.
If you want to learn how to do routine proofs, there are about one million titles out there. Also, note books titled Discrete Math are the best for learning how to do proofs. You get to learn techniques that are not covered in, say, How to Prove It by Velleman. My favorites are the books by Susanna Epp, Edward Scheinerman and Ralph Grimaldi. Also, note a lot of intro to proofs books cover much more than the bare minimum of How to Prove It by Velleman. For example, Math Proofs by Chartrand et al has sections about doing Analysis, Group Theory, Topology, Number Theory proofs. A lot of proof books do not cover proofs from Analysis, so lately a glut of new books that cover that area hit the market. For example, Intro to Proof Through Real Analysis by Madden/Aubrey, Analysis Lifesaver by Grinberg(Some of the reviewers are complaining that this book doesn't have enough material which is ridiculous because this book tackles some ugly topological stuff like compactness in the most general way head-on as opposed to most into Real Analysis books that simply shy away from it), Writing Proofs in Analysis by Kane, How to Think About Analysis by Alcock etc.
Here is a list of extremely gentle titles: Discovering Group Theory by Barnard/Neil, A Friendly Introduction to Group Theory by Nash, Abstract Algebra: A Student-Friendly Approach by the Dos Reis, Elementary Number Theory by Koshy, Undergraduate Topology: A Working Textbook by McClusckey/McMaster, Linear Algebra: Step by Step by Singh (This one is every bit as good as Axler, just a bit less pretentious, contains more examples and much more accessible), Analysis: With an Introduction to Proof by Lay, Vector Calculus, Linear Algebra, and Differential Forms by Hubbard & Hubbard, etc
This only scratches the surface of what's out there. For example, there are books dedicated to doing proofs in Computer Science(for example, Fundamental Proof Methods in Computer Science by Arkoudas/Musser, Practical Analysis of Algorithms by Vrajitorou/Knight, Probability and Computing by Mizenmacher/Upfal), Category Theory etc. The point is to keep looking. There's always something better just around the corner. You don't have to confine yourself to books someone(some people) declared the "it" book at some point in time.
Last, but not least, if you are poor, peruse Libgen.
I take it you want something small enough to fit inside a hollowed-out bible or romance novel, so you can hide your secrets from nosy neighbors?
More seriously, this book is great https://amzn.com/0201558025 but might not be quite what you’re looking for at an introductory level.
I’ve seen recommendations of https://amzn.com/0495391328 (I haven’t looked at this book myself.)
Pick up mathematics. Now if you have never done math past the high school and are an "average person" you probably cringed.
Math (an "actual kind") is nothing like the kind of shit you've seen back in grade school. To break into this incredible world all you need is to know math at the level of, say, 6th grade.
Intro to Math:
These books only serve as samplers because they don't even begin to scratch the surface of math. After you familiarized yourself with the basics of writing proofs you can get started with intro to the largest subsets of math like:
Intro to Abstract Algebra:
There are tons more books on abstract/modern algebra. Just search them on Amazon. Some of the famous, but less accessible ones are
Intro to Real Analysis:
Again, there are tons of more famous and less accessible books on this subject. There are books by Rudin, Royden, Kolmogorov etc.
Ideally, after this you would follow it up with a nice course on rigorous multivariable calculus. Easiest and most approachable and totally doable one at this point is
At this point it's clear there are tons of more famous and less accessible books on this subject :) I won't list them because if you are at this point of math development you can definitely find them yourself :)
From here you can graduate to studying category theory, differential geometry, algebraic geometry, more advanced texts on combinatorics, graph theory, number theory, complex analysis, probability, topology, algorithms, functional analysis etc
Most listed books and more can be found on libgen if you can't afford to buy them. If you are stuck on homework, you'll find help on [MathStackexchange] (https://math.stackexchange.com/questions).
Good luck.
There are essentially "two types" of math: that for mathematicians and everyone else. When you see the sequence Calculus(1, 2, 3) -> Linear Algebra -> DiffEq (in that order) thrown around, you can be sure they are talking about non-rigorous, non-proof based kind that's good for nothing, imo of course. Calculus in this sequence is Analysis with all its important bits chopped off, so that everyone not into math can get that outta way quick and concentrate on where their passion lies. The same goes for Linear Algebra. LA in the sequence above is absolutely butchered so that non-math majors can pass and move on. Besides, you don't take LA or Calculus or other math subjects just once as a math major and move on: you take a rigorous/proof-based intro as an undergrad, then more advanced kind as a grad student etc.
To illustrate my point:
Linear Algebra:
Linear Algebra Through Geometry by Banchoff and Wermer
3. Here's more rigorous/abstract Linear Algebra for undergrads:
Linear Algebra Done Right by Axler
4. Here's more advanced grad level Linear Algebra:
Advanced Linear Algebra by Steven Roman
-----------------------------------------------------------
Calculus:
Calulus by Spivak
3. Full-blown undergrad level Analysis(proof-based):
Analysis by Rudin
4. More advanced Calculus for advance undergrads and grad students:
Advanced Calculus by Sternberg and Loomis
The same holds true for just about any subject in math. Btw, I am not saying you should study these books. The point and truth is you can start learning math right now, right this moment instead of reading lame and useless books designed to extract money out of students. Besides, there are so many more math subjects that are so much more interesting than the tired old Calculus: combinatorics, number theory, probability etc. Each of those have intros you can get started with right this moment.
Here's how you start studying real math NOW:
Learning to Reason: An Introduction to Logic, Sets, and Relations by Rodgers. Essentially, this book is about the language that you need to be able to understand mathematicians, read and write proofs. It's not terribly comprehensive, but the amount of info it packs beats the usual first two years of math undergrad 1000x over. Books like this should be taught in high school. For alternatives, look into
Discrete Math by Susanna Epp
How To prove It by Velleman
Intro To Category Theory by Lawvere and Schnauel
There are TONS great, quality books out there, you just need to get yourself a liitle familiar with what real math looks like, so that you can explore further on your own instead of reading garbage and never getting even one step closer to mathematics.
If you want to consolidate your knowledge you get from books like those of Rodgers and Velleman and take it many, many steps further:
Basic Language of Math by Schaffer. It's a much more advanced book than those listed above, but contains all the basic tools of math you'll need.
I'd like to say soooooooooo much more, but I am sue you're bored by now, so I'll stop here.
Good Luck, buddyroo.
http://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328 is one of my math books. The bookstore wants $350 for it.
math 271 is easy if you can think logically
just pirate this book: https://www.amazon.ca/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328
and browse the first 10 chapters - thats whats taught at math 271. i had thi dinh or something, some asian dude. he's a hardass but one of my fav profs of all time
ill be honest though, none of this math is plug and chug like calc 1 or even calc 2. i thought 271 required more thinking than linear or calc 1 or calc 2. once you get into counting and probability and set theory and graphs/relations and shits, it gets pretty intense. the first half of the course is easy but a lot of people fail the final exam and then fail the course lmao.
eng319 is hard but u gotta take it bro.
TAKING BOTH??? are you ready to stay indoors/at school all day for 60 days? then you can do it. if u slack off ur gonna fail 271 or 319.
gljuck bro
You need a good foundation: a little logic, intro to proofs, a taste of sets, a bit on relations and functions, some counting(combinatorics/graph theory) etc. The best way to get started with all this is an introductory discrete math course. Check these books out:
Mathematics: A Discrete Introduction by Edward A. Scheinerman
Discrete Mathematics with Applications by Susanna S. Epp
How to Prove It: A Structured Approach Daniel J. Velleman
Learning to Reason: An Introduction to Logic, Sets, and Relations by Nancy Rodgers
Combinatorics: A Guided Tour by David R. Mazur
Discrete Mathematics with Applications by Susanna Epp is pretty good, with a lot of exposition. In the introduction there is a guide on how to use the book, and the different sections to focus on if using it for a mainly mathematics-based class or for a computer science-based class.
http://www.amazon.com/gp/product/0495391328/ref=pd_lpo_sbs_dp_ss_2?pf_rd_p=1944687702&pf_rd_s=lpo-top-stripe-1&pf_rd_t=201&pf_rd_i=0132122715&pf_rd_m=ATVPDKIKX0DER&pf_rd_r=0P155N9Y802PPMETYGVC
Sure! There is a lot of math involved in the WHY component of Computer Science, for the basics, its Discrete Mathematics, so any introduction to that will help as well.
http://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328/ref=sr_sp-atf_title_1_1?s=books&ie=UTF8&qid=1368125024&sr=1-1&keywords=discrete+mathematics
This next book is a great theoretical overview of CS as well.
http://mitpress.mit.edu/sicp/full-text/book/book.html
That's a great book on computer programming, complexity, data types etc... If you want to get into more detail, check out: http://www.amazon.com/Introduction-Theory-Computation-Michael-Sipser/dp/0534950973
I would also look at Coursera.org's Algorithm lectures by Robert Sedgewick, thats essential learning for any computer science student.
His textbook: http://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X/ref=sr_sp-atf_title_1_1?s=books&ie=UTF8&qid=1368124871&sr=1-1&keywords=Algorithms
another Algorithms textbook bible: http://www.amazon.com/Introduction-Algorithms-Thomas-H-Cormen/dp/0262033844/ref=sr_sp-atf_title_1_2?s=books&ie=UTF8&qid=1368124871&sr=1-2&keywords=Algorithms
I'm just like you as well, I'm pivoting, I graduated law school specializing in technology law and patents in 2012, but I love comp sci too much, so i went back into school for Comp Sci + jumped into the tech field and got a job at a tech company.
These books are theoretical, and they help you understand why you should use x versus y, those kind of things are essential, especially on larger applications (like Google's PageRank algorithm). Once you know the theoretical info, applying it is just a matter of picking the right tool, like Ruby on Rails, or .NET, Java etc...
How to prove it is a great start. I think after that, you should focus on learning to think mathematically through practice instead of reading (at least, that's how I and most people learn best). Take classes or read and work through the textbooks of subjects that interest you. Discrete math would be a good place to start since it teaches proof techniques and basic probability and combinatorics; my class used this book which I thought was nice.
If you don't actually do the work, your thinking process isn't going to change.
Check out /r/compsci, /r/algorithms, and the subreddits in their sidebars.
If you are serious about this, then the best way to self learn Math is to learn to read Math books. This is a valuable skill. It stops you from having to rely on websites/tutorials and frees you to really read the stuff you're interested in.
Generally you probably want a more "back to basics" approach that will cover basic stuff and act as an introduction (again) to the topic (without handling you as if you're a child). I recommend Discrete Mathematics with Applications. Epp does a good job of starting at the beginning (with logic) and building a decent foundation through connectives, conditionals, existentials, universals, etc. eventually leading into proofs.
Her writing style is very readable IMO but still dense enough to help you learn how to read Math books.
If you're self motivated enough then start there. Read a chapter. Do the problems. Be confused. Do more problems. Still confused? Read the chapter again. Do more problems. Repeat. Eventually finish the book.
The next one will be faster and easier because of the work you put in. Eventually you'll be 3-5 books down, and you'll feel you know quite a bit. Then read more.. realize the field is huge and you know nothing. Read more to solve this.
Repeat
????
Success(?)
Data Structures & Algorithms is usually the second course after Programming 101. Here is a progression (with the books I'd use) I would recommend to get started:
Edit: If you're feeling adventurous then after those you should look at
A First Course in Graph Theory by Chartrand and Zhang
Combinatorics: A Guided Tour by Mazur
Discrete Math by Epp
For Linear Algebra I like these below:
Lecture Notes by Tao
Linear Algebra: An Introduction to Abstract Mathematics by Robert Valenza
Linear Algebra Done Right by Axler
Linear Algebra by Friedberg, Insel and Spence
It's less math intensive in the sense that you won't be solving calculus problems very often (or at all), but there are classes where a (basic) understanding of calculus will be helpful. For instance, I just completed algorithms and was pretty glad that I had taken Calculus. Knowing a lot about limits and knowing L'Hopital's rule made parts of asymptotic analysis a lot more intuitive than it otherwise would have been.
With that said, discrete math (which you'll cover in CS 225) is a pretty big part of the program and computer science as a whole. You'll serve yourself well by getting a solid understanding of discrete math--even in classes where it's not an explicit requirement.
To give an example, in CS 344 (operating systems), there was an assignment where we had to build a pretty simple dungeon-crawler game where a player moved through a series of rooms. Each time the player played the game, there needed to be a new random dungeon, and the connections between rooms needed to be two-way. Calculus isn't really going to help you solve this problem, but if you're good with discrete math, you'll quickly realize that this sort of problem can easily be solved with a graph. Further, you can represent the graph as a 2D array, and at that point the implementation becomes pretty easy.
So, there is math in the program, but not the type that you've probably been doing throughout your academic career. Discrete math comes naturally to some, and it's really difficult for others. I'd recommend picking up this book (which is used in the program) whenever you get a chance:
https://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328
I'm almost done with the program, but I've been returning to that a lot to review concepts we covered in class and to learn new stuff that we didn't have time for in the term. It's a great book.
Good luck!
I don't think it contains any group theory, but everything else is there:
Discrete Mathematics with Applications by Susanna S. Epp (
This one below contains some algebra(groups):
Mathematics: A Discrete Introduction by Edward A. Scheinerman
Both are pretty elementary.
Course Name: Discrete Structures
Course Link: http://uncw.edu/csc/courses-133.html
Text Book: http://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328/ref=sr_1_1?s=books&ie=UTF8&qid=1289513076&sr=1-1
Comments: It wasn't that book when I was there back in the 90's though. We were using a book written by a UNC-W professor and published in-house. But I took another course later, using the 3rd edition of the Susanna Epp book, and I have to say, I prefer Epp's book. But holy fuck would you look at the price for the current edition? WTF?!??
Also, Dr. Berman is nice enough, but is one of the most boring professors ever born... talk about the stereotypical dry, boring, dull, monotone delivery... this guy has it perfected.
Usual hierarchy of what comes after what is simply artificial. They like to teach Linear Algebra before Abstract Algebra, but it doesn't mean that it is all there's to Linear Algebra especially because Linear Algebra is a part of Abstract Algebra.
Example,
Linear Algebra for freshmen: some books that talk about manipulating matrices at length.
Linear Algebra for 2nd/3rd year undergrads: Linear Algebra Done Right by Axler
Linear Algebra for grad students(aka overkill): Advanced Linear Algebra by Roman
Basically, math is all interconnected and it doesn't matter where exactly you enter it.
Coming in cold might be a bit of a shocker, so studying up on foundational stuff before plunging into modern math is probably great.
Books you might like:
Discrete Mathematics with Applications by Susanna Epp
Learning to Reason: An Introduction to Logic, Sets, and Relations by Nancy Rodgers
Building Proofs: A Practical Guide by Oliveira/Stewart
Book Of Proof by Hammack
Mathematical Proofs: A Transition to Advanced Mathematics by Chartrand et al
How to Prove It: A Structured Approach by Velleman
The Nuts and Bolts of Proofs by Antonella Cupillary
How To Think About Analysis by Alcock
Principles and Techniques in Combinatorics by Khee-Meng Koh , Chuan Chong Chen
The Probability Tutoring Book: An Intuitive Course for Engineers and Scientists (and Everyone Else!) by Carol Ash
Problems and Proofs in Numbers and Algebra by Millman et al
Theorems, Corollaries, Lemmas, and Methods of Proof by Rossi
Mathematical Concepts by Jost - can't wait to start reading this
Proof Patterns by Joshi
...and about a billion other books like that I can't remember right now.
Good Luck.
The book that really helped me prepare for CS 6505 this fall was Discrete Mathematics with Applications by Susanna Epp. I found it easy to digest and it seemed to line up well with the needed knowledge to do well in the course.
Richard Hammack's Book of Proof also proved invaluable. Because so much of your success in the class relies on your ability to do proofs, strengthening those skills in advance will help.
Yes, the arrow is obvious when you stop to think about it, but everything becomes obvious after given enough thought. If they had used "=" it would have required slightly less thought and made it easier on the reader. What is the downside? I had no trouble reading the psuedo code, I just take issue with the useless proof ridden overly dense textbooks. You're saying that because it's possible to understand something, we should make no effort to make it easier to understand? This is where a lot of textbooks fail, in my opinion.
And just because a text is easier to understand doesn't make it dumbed down. I had a discrete math class that used this textbook:
http://www.amazon.com/Discrete-Mathematics-Computer-Scientists-Cliff/dp/0132122715/ref=sr_1_1?s=books&ie=UTF8&qid=1345561997&sr=1-1&keywords=discrete+math+for+computer+scientists
It was horribly dense and consisted of proof after proof with no real world examples. I could have learned from it if I so chose to, but I'd rather not spend 30 minutes parsing each page for what they are actually trying to teach me. I instead downloaded:
http://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328/ref=sr_1_2?ie=UTF8&qid=1345561973&sr=8-2&keywords=susanna+epp
And got a 95 in the class. Did I learn less because I used an easier textbook? I would say that I actually learned more, because it took significantly less time to learn the concepts presented, leaving me with more time to learn overall.
Nowhere is this disparity more clear than in data structures and algorithms books.
You can read the "Highlights of the Fourth Edition" on Page xvii through Amazon's preview.
Edit: This Amazon review is also relevant to you:
> I've taught discrete math from the 3rd Edition of this book at least 6 times, and struggled with several issues. (The textbook for our Discrete Math course is chosen by a committee in our department.) Much of a discrete math course involves looking closely at some very simple mathematics. Most of the mathematics is already known to a typical university freshman; what a set is, what a prime is, what an ordered pair is, etc. Of course they have had little rigor in these elementary topics, but still, they have the notions and vocabulary. The 3rd Edition pretended that sets, e.g., did not exist until one finally arrived at the chapter on sets. It's unnatural to lecture one's way through two chapters on logic and a chapter on techniques of proof, without being able to draw on simple examples from set theory. One gets tired quickly of examples of dogs and cats in highly artificial situations, and would like to say something about primes or the set of even integers.
>The 4th Edition corrects this problem by the addition of an introductory chapter which fixes the vocabulary and notation. This was a needed change. The 3rd Edition required considerable acrobatics in avoiding words like "is an element of" until Chapter 5 (Set Theory.) Really? I'm supposed to cover the proof technique of "division into cases" and I can't say "the set of integers of the form 4k+1?" So good change.
>Every semester, I get e-mails from my students asking if the previous edition of the text will suffice for my course. Usually, I say yes. In the case of my discrete math course, I'll have to say no. The modifications of this text are substantial. Besides the above, the old Chapter 8 (Recursion) is now incorporated into the new (much expanded) Chapter 5 (Sequences and Induction.) That is also a sensible change.
>My remaining complain about the text is that it's a bit condescending. I think it's bad form to always present mathematics apologetically. "There, there now, I know it's difficult, but we'll go extremely slowly and take tiny, tiny bites covered in catsup so you can scarcely taste them." There's no need for us at the university level to re-enforce the bad attitudes the students learned in high school. It's math. It's hard. You can do it, not because math is made easy, but because you are, in fact, clever enough.
>I would not have recommended the 3rd Edition to anyone, but I would recommend the 4th. I'm very happy with the changes.
Is the book for 225 necesary? The book store said that there were no required materials for the class but I came across this one several times Discrete Mathematics with Applications 4th Edition
This is the book we are using for our class.
This is the textbook we used and it was incredibly dry (and expensive). I highly recommend this book to ease you into it.
I personally didn't find discrete maths difficult, but I know it's the big hurdle for most people. Also since my degrees were primarily in mathematics, discrete maths wasn't my first proof-based subject so my experience is very different from most people.
I certainly don't have a comprehensive background in computer science, I've only taken 4 computer science subjects in my 5 years of university education and find my training in mathematics to be highly useful for programming at work and self-study of computer science.
If you can understand and absorb the first four chapters of Discrete Mathematics with Applications (only ~200 pages and should be available in any Uni library) then you'll be well set up for most of the maths that seems to trip people up.
I should note that topics like graph theory, combinatorics, areas otherwise under the "discrete math" category, don't really require calculus, analysis, and other "continuous math" subjects to learn them. Instead, you can get up to college level algebra, then get a book like
Discrete Mathematics and Its Applications Seventh Edition (Higher Math) https://www.amazon.com/dp/0073383090/ref=cm_sw_r_cp_api_U6Zdzb793HMA7
Or the more highly regarded but less problem set answers,
Discrete Mathematics with Applications https://www.amazon.com/dp/0495391328/ref=cm_sw_r_cp_api_d7ZdzbQ77B65P
This will be enough to tackle ideas from discrete math. I'd recommend reading a book on logic to help with proof techniques and the general idea for rigorously proving statements.
Gensler is a great one but can require a computer if you want more extensive feedback and problem sets.
You should be able to see the textbook that is required by looking on your MyOSU page. This was the book used when I took it last year: https://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328/ref=sr_1_2?crid=3TYI2C38O2DKB&keywords=susanna+epp+discrete+mathematics+with+applications+4th+edition&qid=1568344545&sprefix=susannah+epp%2Caps%2C175&sr=8-2
>My first goal is to understand the beauty that is calculus.
There are two "types" of Calculus. The one for engineers - the plug-and-chug type and the theory of Calculus called Real Analysis. If you want to see the actual beauty of the subject you might want to settle for the latter. It's rigorous and proof-based.
There are some great intros for RA:
Numbers and Functions: Steps to Analysis by Burn
A First Course in Mathematical Analysis by Brannan
Inside Calculus by Exner
Mathematical Analysis and Proof by Stirling
Yet Another Introduction to Analysis by Bryant
Mathematical Analysis: A Straightforward Approach by Binmore
Introduction to Calculus and Classical Analysis by Hijab
Analysis I by Tao
Real Analysis: A Constructive Approach by Bridger
Understanding Analysis by Abbot.
Seriously, there are just too many more of these great intros
But you need a good foundation. You need to learn the basics of math like logic, sets, relations, proofs etc.:
Learning to Reason: An Introduction to Logic, Sets, and Relations by Rodgers
Discrete Mathematics with Applications by Epp
Mathematics: A Discrete Introduction by Scheinerman
In my discrete math class, we worked from Discrete and Combinatorial Mathematics - An Applied Introduction by R. Grimaldi, which was possibly not the best book in the world, but it was good enough.
There's a well-known book by Kenneth Rosen, but I've read Kenneth Rosen before, and I suspect it's as hard to understand as his other books.
I've heard a lot of praise heaped on this book by Susanna Epp. But it's unfortunately expensive.
Most of all I want to echo Hoelt's reassurance. I don't think human brains are built to get combinatorics intuitively. It's really hard. I generally have a good intuitive grasp on most classes, but I was pretty lost in combinatorics. Don't think of yourself as bad at counting. Think of counting as something you need to work harder on before you get it. Hard work is always the key.
Try these books(the authors will hold your hand tight while walking you through interesting math landscapes):
Discrete Mathematics with Applications by Susanna Epp
Learning to Reason: An Introduction to Logic, Sets, and Relations by Nancy Rodgers
A Friendly Introduction to Number Theory Joseph Silverman
A First Course in Mathematical Analysis by David Brannan
The Foundations of Analysis: A Straightforward Introduction: Book 1 Logic, Sets and Numbers by K. G. Binmore
The Foundations of Topological Analysis: A Straightforward Introduction: Book 2 Topological Ideas by K. G. Binmore
Introductory Modern Algebra: A Historical Approach by Saul Stahl
An Introduction to Abstract Algebra VOLUME 1(very elementary)
by F. M. Hall
There is a wealth of phenomenally well-written books and as many books written by people who have no business writing math books. Also, Dover books are, as cheap as they are, usually hit or miss.
One more thing:
Suppose your chosen author sets the goal of learning a, b, c, d. Expect to be told about a and possibly c explicitly. You're expected to figure out b and d on your own. The books listed above are an exception, but still be prepared to work your ass off.
This is how I learned logic, for computer science.
First chapter of this Discrete mathematics book in my discrete math class
https://www.amazon.ca/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328
Then, using The Logic Book for a formal philosophy logic 1 course.
https://www.amazon.ca/Logic-Book-Merrie-Bergmann/product-reviews/0078038413/ref=dpx_acr_txt?showViewpoints=1
The second book was horrid on itself, luckily my professor's academic lineage goes back to Tarski. He's an amazing Professor and knows how to teach...that was a god send. Ironically, he dropped the text and I see that someone has posted his openbook project.
The first book (first chapter), is too applied I imagine for your needs. It would also only be economically feasible if well, you disregarded copyright law and got a "free" PDF of it.
For discrete math I like Discrete Mathematics with Applications by Suzanna Epp.
It's my opinion, but Learning to Reason: An Introduction to Logic, Sets, and Relations by Nancy Rodgers is much better structured and more in depth than How To Prove It by Velleman. If you follow everything she says, proofs will jump out at you. It's all around great intro to proofs, sets, relations.
Also, knowing some Linear Algebra is great for Multivariate Calculus.
Logic, Number theory, Graph Theory and Algebra are all too much for you to handle on your own without first learning the basics. In fact, most of those books will probably expect you to have some mathematical maturity (that is, reading and writing proofs).
I don't know how theoretical your CS program is going to be, but I would recommend working on your discrete math, basic set theory and logic.
This book will teach you how to write proofs, basic logic and set theory that you will need: http://www.amazon.com/How-Prove-It-Structured-Approach/dp/0521675995
I can't really recommend a good Discrete Math textbook as most of them are "meh", and "How to Prove It" does contain a lot of the material usually taught in a Discrete Math course. The extra topics you will find in discrete maths books is: basic probability, some graph theory, some number theory and combinatorics, and in some books even some basic algebra and algorithm analysis. If I were you I would focus mostly on the combinatorics and probability.
Anyway, here's a list of discrete math books. Pick the one you like the most judging from the reviews:
Don't bother trying to learn too much too soon, as you really do need to let time for the math to sink in.
Thank you. I really want to go into the 'Curse the entire field of CS and maths' level. This is the book I was suggested via PM. I'll try the first approach you suggest, then I'll scale up since we are a small group of people trying to learn together so I think that a couple of heads tackling into a problem might solve it.
> How do you think I'll struggle?
The reason I think you'll struggle is because you can't reverse engineer grad school exams, assuming your program is a decent stats program. You have to be more open to learning more when you need to learn it, whether it be for school or for your professional life. (Yes, I do learn in my full-time job. I've learned around 4-5 different programming languages in the two years I've been in this job.)
One thing I should emphasize is that although you did well in Statistical Methods, the grad-school version of this (in my experience) is much more theoretical and proof-oriented. I got an A in the grad-school version, but it was by no means an easy A, and I tutored the calculus-based probability and statistics material for about 3 years in my undergrad. The class definitely put me on edge at times.
> Any tips to study technique? Should I really never look up any solution? Even if it takes weeks to solve a problem? I don't think my University has any introduction to proof courses, I think you just have to know proof or learn it on your own.
Get your hands on a Discrete Mathematics book - my favorite one is the text by Epp (see https://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328/ref=sr_1_1?s=books&ie=UTF8&qid=1503020282&sr=1-1&keywords=discrete+mathematics+with+applications). You can read the index of this to get an idea of what it covers. But basically, Discrete Math goes through the logic of how a proof is constructed to guide you through proofs.
> Any tips on that? Never taken notes before, except for in lectures to not fall asleep, but I never look back on the notes I take.
Notes are essential. Our minds only have a finite amount of memory space, and we forget things. You need to take notes with the mindset that you'll probably be using this stuff later, and if you need to re-learn it again, you can read your notes and brush up on it. In my case, I've kept all of my grad school notes.
For compsci you need to study tons and tons and tons of discrete math. That means you don't need much of analysis business(too continuous). Instead you want to study combinatorics, graph theory, number theory, abstract algebra and the like.
Intro to math language(several of several million existing books on the topic). You want to study several books because what's overlooked by one author will be covered by another:
Discrete Mathematics with Applications by Susanna Epp
Mathematical Proofs: A Transition to Advanced Mathematics by Gary Chartrand, Albert D. Polimeni, Ping Zhang
Learning to Reason: An Introduction to Logic, Sets, and Relations by Nancy Rodgers
Numbers and Proofs by Allenby
Mathematics: A Discrete Introduction by Edward Scheinerman
How to Prove It: A Structured Approach by Daniel Velleman
Theorems, Corollaries, Lemmas, and Methods of Proof by Richard Rossi
Some special topics(elementary treatment):
Rings, Fields and Groups: An Introduction to Abstract Algebra by R. B. J. T. Allenby
A Friendly Introduction to Number Theory Joseph Silverman
Elements of Number Theory by John Stillwell
A Primer in Combinatorics by Kheyfits
Counting by Khee Meng Koh
Combinatorics: A Guided Tour by David Mazur
Just a nice bunch of related books great to have read:
generatingfunctionology by Herbert Wilf
The Concrete Tetrahedron: Symbolic Sums, Recurrence Equations, Generating Functions, Asymptotic Estimates by by Manuel Kauers, Peter Paule
A = B by Marko Petkovsek, Herbert S Wilf, Doron Zeilberger
If you wanna do graphics stuff, you wanna do some applied Linear Algebra:
Linear Algebra by Allenby
Linear Algebra Through Geometry by Thomas Banchoff, John Wermer
Linear Algebra by Richard Bronson, Gabriel B. Costa, John T. Saccoman
Best of Luck.
What do you want to do, though? Is your goal to read math textbooks and later, maybe, math papers or is it for science/engineering? If it's the former, I'd simply ditch all that calc business and get started with "actual" math. There are about a million books designed to get you in the game. For one, try Book of Proof by Richard Hammack. It's free and designed to get your feet wet. Mathematical Proofs: A Transition to Advanced Mathematics by Chartrand/Polimeni/Zhang is my favorite when it comes to books of this kind. You'll also pick up a lot of math from Discrete Math by Susanna Epp. These books assume no math background and will give you the coveted "math maturity".
There is also absolutely no shortage of subject books that will nurse you into maturity. For example, check out [The Real Analysis Lifesaver: All the Tools You Need to Understand Proofs by Grinberg](https://www.amazon.com/Real-Analysis-Lifesaver-Understand-Princeton/dp/0691172935/ref=sr_1_1?ie=UTF8&qid=1486754571&sr=8-1&keywords=real+analysis+lifesaver() and Book of Abstract Algebra by Pinter. There's also Linear Algebra by Singh. It's roughly at the level of more famous LADR by Axler, but doesn't require you have done time with lower level LA book first. The reason I recommend this book is because every theorem/lemma/proposition is illustrated with a concrete example. Sort of uncommon in a proof based math book. Its only drawback is its solution manual. Some of its proofs are sloppy, messy. But there's mathstackexchange for that. In short, every subject of math has dozens and dozens of intro books designed to be as gentle as possible. Heck, these days even grad level subjects are ungrad-ized: The Lebesgue Integral for Undergraduates by Johnson. I am sure there are such books even on subjects like differential geometry and algebraic geometry. Basically, you have choice. Good Luck!
Can you get Discrete Mathematics with Applications https://www.amazon.com/dp/0495391328/ref=cm_sw_r_cp_apa_i_lf2vCbG0MVRXJ
You need Susanna Epp's Discrete Math. Her stuff can be ever so slightly rough at certain spots, but absolutely phenomenal everywhere else. But there's Book of Proof by Richard Hammack[FREE] to help you overcome these difficulties.
For a slightly different take on essentially the same material you could also try Mathematics: A Discrete Introduction by Scheinerman. Also a very gentle book.
The only "math" you don't learn in secondary education that I would say is truly important to all students of computer science is discrete mathematics. One of my old instructors told me he was trying to get permission to use Discrete Mathematics With Ducks in his curriculum. I flipped through it, it seemed like a pretty good discrete math book, but maybe only if you already had some basic understanding. The more traditional choice might be a better option, but it's much drier.
Every other field of math that has applications in computer science has a narrower breadth of use than discrete mathematics, in my opinion. Learning discrete math well will probably do you more good than learning lots of subjects poorly.
The easiest one that I know of is the one by Epp. She doesn't go into the history as much, but her writing style is extremely easy on the brain.
I'm finishing up a discrete math course using Susanna Epp's textbook, and while it's pretty good, I just see it as a preparation for Concrete Mathematics.
As a side note, I never know how to go about math in how it relates to my major. It takes a lot of effort on my part to really learn the concepts in depth, and I have a hard time justifying that kind of investment before I really know what I'm eventually going to do for work.
Discrete math gives you a good foundation for learning higher math.
This one is a good book:
Discrete Mathematics with Applications by Susanna Epp.
It deals with logic, sets, relations, counting, proofs etc...you know the stuff you need in higher math. Seeing as you're a CS student, I am guessing Discrete Math would be much more important to you than Calculus.
I've started with this course, then I dropped because it touches on things too superficially and there are very few exercises. I find that I learn best doing exercises so I picked up a book (different from the on on the website).
The book which most seem to agree is great for self-study of Discrete Math is Discrete mathematics with applications by Susanna S. Epps. There is a similar book with a similar name - Dicrete Mathematics and its Applications by Rosen - but a lot of people seem to dislike this book. They're frustrated with the fact that proofs are not well explained and the book doesn't prepare the reader for the exercises.
Ebay. You have to be careful you're getting the right edition, though.
Here's an international paperback version of a 4th Edition book (about $50 includes shipping) that has a very different cover from the U.S. 4th Edition of the same book (about $270 on Amazon).
The book is incredibly good, it's really very well written, so I'm glad the author got paid their share for my purchase but at $270 there's no way I was going to buy the book for full price. I'd have gone without the book and just googled the topics every week, at that price.
Intro to Discrete Math will ease you into Abstract Algebra. I find this book by Susanna Epp phenomenal for that.