2017-03-20

This is a jump straight into the deep end. I can't recommend starting here. "How to prove it" https://www.amazon.com/How-Prove-Structured-Approach-2nd/dp/... would be a much more appropriate start

Original thread

Original thread

2016-03-10

TL;DR; When you can read this book [6] and do all exercises in it without any issues you can safely stop and be sure you are very well versed in vast majority of subjects that you might encounter while hacking on whatever in most technical fields.

Original thread

You can be a hacker and get by with very little math, depends what you are hacking. Hacking is not a profession, it is more of an approach to things, a way of looking at the world, the joy of really figuring stuff out and maybe doing something cool, something that might have seemed impossible. This does usually involve mastery, but not necessarily of mathematics.

I think the question you should be asking, or maybe are even asking is - how much mathematics do I need to hack the hack that I want to hack? - and the first thing you need to do, if you have not already done so is try to think about what that might be. Even a vague idea will give you plenty of clues about how much of what you might need for that.

If you find it troublesome, check out what Richard Hamming has to say about it, it should help you out a lot with figuring it out [1][2].

That said, if you want to do computer science, or hack on the *interesting things* you do need quite a bit of mathematics. This is due to the fact that, as other posters here have pointed out, what you are really in need of, is an effective way of problem solving, and to solve a problem you need to understand it, model it, work on it in some terms. Mathematics is /the/ method of clear thinking which you should apply in order to do this. Sure, you can do certain things without mathematics, but you are not making things any easier for yourself by doing that, and more importantly you are not gaining as much insight as you would have if you used the mathematical approach.

Now, you do mention that you are not good at mathematics, do not let that discourage you, there are many people who were, or are in similar situation as you, me included, and I can assure you that with some dedication and open minded thinking, it comes easier than you might think, and all this effort almost instantly pays off. If you are familiar with one or several programming languages, check out these amazing books and use them alongside whatever mathematics course you will be taking, they will help you out immensely by helping you master both the problem solving approach and the necessary concepts in order to succeed in mathematical education [3][4][5].

[1] https://www.youtube.com/playlist?list=PL2FF649D0C4407B30 [2] http://worrydream.com/refs/Hamming-TheArtOfDoingScienceAndEn... [3] http://www.amazon.com/Language-Mathematics-Utilizing-Math-Pr... [4] http://www.amazon.com/How-Solve-Mathematical-Princeton-Scien... [5] http://www.amazon.com/How-Prove-Structured-Approach-2nd/dp/0... [6] http://www.amazon.com/Methods-Mathematics-Calculus-Probabili...

Original thread

2015-08-26

Keeping with the free theme, Book Of Proof by Richard Hammack is a nice introduction to proofs and formalism. It's available free from the author as a PDF[1], and also as a physical book on Amazon[2].

Original thread

An alternative if you're willing to spend a little is How to Prove It by Daniel J. Velleman, also available from Amazon[3] and probably many other retailers. Both books cover roughly the same topics.

[1]: http://www.people.vcu.edu/~rhammack/BookOfProof/

[2]: http://www.amazon.com/Book-Proof-Richard-Hammack/dp/09894721...

[3]: http://www.amazon.com/How-Prove-It-Structured-Approach/dp/05...

Original thread

2014-12-04

Learn how to prove theorems. "How to Prove It" by Velleman is the best book for this (imho). (Amazon link http://www.amazon.com/How-Prove-It-Structured-Approach/dp/05...)

Original thread

More good advice at http://scattered-thoughts.net/blog/2014/11/15/humans-should-...

Original thread

2014-11-30

math IS hard. i didn't learn this until recently. i never met a practicing mathematician before a few years ago, and when i did they told me that they struggle to get stuff. that was a HUGE relief. if you enjoy it, then maybe you can apply yourself to it for the hours it may take to understand something - a book, a topic, a paper, etc.

Original thread

i think a lot of what it comes down to for me - and maybe you - is mental discipline (staying focused for more than an hour without straying), knowing that it is very common for it to be tough, and learning how to play with math and explore it. i was never taught those things (or at least i never learned them), and so i have had to learn them the hard way. maybe you suffer from some of the same hurdles? try and overcome them, it's worth it.

as for writing proofs, one of those mathematicians got me interested in this book:

http://www.amazon.com/How-Prove-Structured-Approach-2nd/dp/0...

Original thread

2014-10-20

The principal thing I push learners towards after Haskell would be things like Coq and Agda. Coq has better learning materials, Agda has Haskell integration.

Original thread

The usual sequence is [1] followed by [2].

Augment with [3] and [4] as needed.

One negative thing about Coq/Agda/Idris is they don't have a satisfactory encoding of typeclasses [5]. This is a problem in general with all dependently typed languages. Proof obligations get "churned" by changing code and the only tool to address that is extremely general proof terms combined with proof search. The best proof search is Coq, but the code extraction is heartburn-inducing for Haskell users.

Whereas in Haskell, we get extremely lightweight *and* type-safe code refactoring because of the way in which we leverage typeclasses and parametricity. This turns out to be very valuable as your projects get more serious.

That said, still entirely worthwhile to learn Coq or Agda.

By the way, this [6] is how I teach Haskell. Working on a book as well.

[1]: http://www.cis.upenn.edu/~bcpierce/sf/current/index.html

[2]: http://adam.chlipala.net/cpdt/

[3]: http://cheng.staff.shef.ac.uk/proofguide/proofguide.pdf

[4]: http://www.amazon.com/How-Prove-It-Structured-Approach/dp/05...

[5]: http://wiki.portal.chalmers.se/agda/pmwiki.php?n=ReferenceMa...

[6]: https://github.com/bitemyapp/learnhaskell

Original thread

2014-04-06

2013-12-28

Polya's *How to Solve It* was recommended below. I also like *How to Prove it* by Daniel Velleman (http://www.amazon.com/How-Prove-It-Structured-Approach/dp/05...).

Original thread

Original thread

2013-09-08

Velleman's "How to Prove It" is a great book to learn how to do mathematics.

Original thread

http://www.amazon.com/How-Prove-It-Structured-Approach/dp/05...

Original thread

awesomeopening that made me wish the math I was taught in school was done like this back when I went. Makes newer stuff make a lot more sense, too. I included a link to Dover that has a Google Preview button on it where you can read full, first chapter for free to see if it's what you like. Other two are more about exploring and proving things which may or may not interest you. I added them in case anyone is reading your question to learn that stuff.Concepts of Modern Mathematics by Stewart

https://www.amazon.com/Concepts-Modern-Mathematics-Dover-Boo...

Dover Version with Google Preview Button

http://store.doverpublications.com/0486284247.html

Introduction to Mathematical Reasoning: Numbers, Sets, and Functions

https://www.amazon.com/Introduction-Mathematical-Reasoning-N...

How to Prove It by Velleman

https://www.amazon.com/How-Prove-Structured-Approach-2nd/dp/...

Original thread