Live data from Hacker News

Ask HN: How to learn mathematical proofs from scratch?

news.ycombinator.com

91–100 of 125 posts

Re: Ask HN: How to learn mathematical proofs from scratch?

#92
post #67
post #13

Undergrad discrete mathematics and symbolic logic made proof writing click for me. You have a set of things known to be true as handed down from on high, you have a set of operations to transform those true things into equivalent statements, you then go about the work of using those transformations to connect true statements together into a massive graph and extend that graph through speculation if possible. With tha…

I studied CS and it never clicked for me. For me, a proof is essentially transforming one formular into another one until someone who understands math says "yes, now you have proven it!" For me, any step is as good as the others. I wish, I could understand what's happening.

A lot of things aren't that rigorous and people like to skip steps.

Here's what happens if you try to prove that 2+2=4 with a computer program that refuses to skip any steps (granted, it's treating them as complex numbers with zero imaginary parts):

http://us.metamath.org/mpeuni/mmset.html#trivia

Math is just a matter of transforming one thing into another using the operations allowed by the system starting from the ground truths stipulated by the system

Re: Ask HN: How to learn mathematical proofs from scratch?

#93
I think the thing to understand is that there are common patterns to proving things that are almost independent of what you are trying to prove. Once you have internalized those it gives you a suite of approaches to proving things. For example, you should try to understand what is meant by a direct proof, a proof by contradiction, a proof by induction, a proof by contrapositive, etc. If you can find a good book that discusses theses kinds of patterns and gives practice questions for employing them with fairly basic mathematical concepts it can really help (and if nothing else will really improve the speed with which you understand other proofs).

Re: Ask HN: How to learn mathematical proofs from scratch?

#94
post #13

Undergrad discrete mathematics and symbolic logic made proof writing click for me. You have a set of things known to be true as handed down from on high, you have a set of operations to transform those true things into equivalent statements, you then go about the work of using those transformations to connect true statements together into a massive graph and extend that graph through speculation if possible. With tha…

I love, love, love Velleman's book. I worked through it after uni years, and after working for a few years. It changed my perspective on proofs and math completely! It showed how the language of logic combined set theory form a very small and comprehensible foundation for most of math. After reading it and a few introductory-level books on number theory, calculus and combinatorics, most of CS proofs started feeling..…

Thanks - I've been starting to work through this book. I see you are in programming / software engineering - would you say that working through it helped you in your engineering skills (not necessarily day-day, but perhaps your ability to reason about problems)?

Re: Ask HN: How to learn mathematical proofs from scratch?

#95
A good way to learn the idea of proofs is just high school plane geometry.

For

     x/a = b/c  
implying

     xc = ab
that is part of the properties of the real number system. The properties also hold for the complex numbers and some somewhat goofy number systems, e.g., integers modulo a prime number. Since the properties hold for the reals, they also hold for subsets of the reals such as the rationals, integers, and natural numbers.

Here is how that goes: Thousands of years ago people could check with just simple examples that

     x/a = b/c  
implies

     xc = ab
Soooo, thousands of years ago, maybe being less picky, critical, and skeptical than now, people just believed such properties.

Then ballpark the late 19th century, along came efforts to be more careful. The approach was, we will just DEFINE some things that look like the real numbers and then from the definitions prove as theorems the properties that hold. So, in short, bluntly, the reason

    x/a = b/c  
implies

     xc = ab
for the real numbers is that we have DEFINED the real numbers so that what we get looks like the numbers people did work with 1000+ years ago and also have, from some proofs, the properties they observed we want to prove can hold.

In the proofs, a favorite tool is mathematical induction. So, suppose A is a non empty set. Suppose 1 is an element of A. Suppose for each n in A n + 1 is also in A. Then A it follows that A must contain the set of natural numbers (or this is the DEFINITION of the set of natural numbers).

To apply this tool, suppose B is a set, 1 is an element of B, and for each n in B n + 1 is also in B. Then, sure, A is a subset of B, and whatever property we used to define B, that property must also hold for all the elements of A, that is, all the natural numbers.

Thus mathematical induction proofs are also standard tools in proving correctness of iterative schemes in computer software.

The careful definition of the various number systems and proofs of their properties is standard material in a college math course in abstract algebra.

The course I took used

R. E. Johnson, A First Course in Abstract Algebra.

Might also consider texts by I. Herstein or S. Lang. But there are no doubt still more.

To jump just ahead, the main properties of the number systems that get proved in such texts are

identities:

     0 + a = a

     1a = a
inverses:

     a + (-a) = 0
for a not 0 there exists a unique inverse of a, 1/a, and

     a(1/a) = 1
associative:

     a + (b + c) = (a + b) + c

     a(bc) = (ab)c
commutative:

     a + b = b + a

     ab = ba
distributive:

     a(b + c) = ab + ac
So, define a field -- the leading examples are the rational, real, and complex numbers. But there is also the integers modulo a prime.

Then with a field can define a vector space, inner products, norms, metrics, topologies, and continuous functions.

Then can define linear functions and how to represent them with matrix algebra. Then can show that matrix algebra has identities, sometimes inverses, and has associative operations. Addition is commutative but multiplication usually is not. But multiplication is distributive over addition.

Now we are into the linear algebra part of a course in abstract algebra. There can learn about principle components and dimensionality reduction, IQ testing, etc. maybe useful in some AI approaches. Can learn about convexity, linear programming, Lagrangian relaxation, group representations, error correcting coding, and get a start on Hilbert space.

The standards of precision in proofs is especially high.

Re: Ask HN: How to learn mathematical proofs from scratch?

#96
post #46

For me Coq - the automated proof assistant was it. You can consider it a game where you try to prove something. And it is green and says okay when you are correct. If you just do it on paper you are never sure about if you are correct.

So, what would be a gentle introduction to Coq? Any recommendations?

https://softwarefoundations.cis.upenn.edu

Re: Ask HN: How to learn mathematical proofs from scratch?

#97
post #92
post #67

Earlier quoted context omitted.

I studied CS and it never clicked for me. For me, a proof is essentially transforming one formular into another one until someone who understands math says "yes, now you have proven it!" For me, any step is as good as the others. I wish, I could understand what's happening.

A lot of things aren't that rigorous and people like to skip steps. Here's what happens if you try to prove that 2+2=4 with a computer program that refuses to skip any steps (granted, it's treating them as complex numbers with zero imaginary parts): http://us.metamath.org/mpeuni/mmset.html#trivia Math is just a matter of transforming one thing into another using the operations allowed by the system starting from the…

> … a total of 26,323 steps—this is how many steps you would have to examine if you wanted to verify the proof by hand in complete detail all the way back to the axioms of ZFC set theory

I can’t help but shake the feeling that if it takes this many steps to prove 2+2=4 then you’ve done something wrong in the design of your formalism.

Re: Ask HN: How to learn mathematical proofs from scratch?

#98
post #97
post #92

Earlier quoted context omitted.

A lot of things aren't that rigorous and people like to skip steps. Here's what happens if you try to prove that 2+2=4 with a computer program that refuses to skip any steps (granted, it's treating them as complex numbers with zero imaginary parts): http://us.metamath.org/mpeuni/mmset.html#trivia Math is just a matter of transforming one thing into another using the operations allowed by the system starting from the…

> … a total of 26,323 steps—this is how many steps you would have to examine if you wanted to verify the proof by hand in complete detail all the way back to the axioms of ZFC set theory I can’t help but shake the feeling that if it takes this many steps to prove 2+2=4 then you’ve done something wrong in the design of your formalism.

> One of the reasons that the proof of 2 + 2 = 4 is so long is that 2 and 4 are complex numbers—i.e. we are really proving (2+0i) + (2+0i) = (4+0i)

Yeah, this is why

Re: Ask HN: How to learn mathematical proofs from scratch?

#99
post #97

Earlier quoted context omitted.

> … a total of 26,323 steps—this is how many steps you would have to examine if you wanted to verify the proof by hand in complete detail all the way back to the axioms of ZFC set theory I can’t help but shake the feeling that if it takes this many steps to prove 2+2=4 then you’ve done something wrong in the design of your formalism.

> One of the reasons that the proof of 2 + 2 = 4 is so long is that 2 and 4 are complex numbers—i.e. we are really proving (2+0i) + (2+0i) = (4+0i) Yeah, this is why

Right. That seems like an unnecessary detour to me.

Re: Ask HN: How to learn mathematical proofs from scratch?

#100
> For example, I know things like (a^b)^c = a^bc, and that I can solve for x in x/a = b/c by cross multiplying so that xc = ab, but I can’t prove either of those things.

That's actually kind of hard. Not because the proof is hard, surprisingly, but because you need a rigid notion of what exactly you're trying to prove. That's the hard part. The closer you get to the basics, the deeper the rabbit hole goes. You end up with axiomatizing the algebra, mathematical logic, formal proofs and different formal models...

So _maybe_ start with something less abstract. Some problems which do not involve either algebra or geometry so you can develop intuition for what is a proof and how to see holes in a one. Afterwards, you can try adding more and more rigidity to the things you're familiar with.

Post reply on HN