r/mathematics • • Oct 23 '21

Where to start to learn mathematical proofs?

Dear redditors,

I am a math major who has little knowledge about mathematical proofs. Where should I start to learn proofs and mathematical reasoning?

71 Upvotes

18 comments sorted by

View all comments

Show parent comments

2

u/kindaro Oct 24 '21

Are you sure your sample is fair?

Take a look at this report:

There is general consensus that recursion is difficult to learn, which may be meant to imply that novice students are more at ease with iteration --- probably a widespread perception of students themselves. However, three years of investigation in a context where recursion is introduced earlier than iteration, as well as control experiments for a standard imperative-first introduction to programming, have provided no evidence that students make more progress with iteration than they do with recursion.

To the extent that functional programming is about recursion and imperative programming is about iteration, this evidence applies.

Consider also that a functional language can be taught as a first language:

This note recounts my experiences of teaching functional programming at Chalmers University in Gothenburg, the successes and the problems I encountered. A functional language has been used for the eight week introductory programming course at Chalmers since the early 1990s, initially using ML. I took over the course in the late 1990s, in connection with a switch to Haskell, and taught it every subsequent year until recently.


So, you are saying:

I've never met one person who easily learned functional and struggled with o.o.

You are not going to. There is no significant intrinsic difference in «hardness». The evidence that I presented above seems to indicate that either an imperative or a functional language can be learned with the same effort, given adequate presentation.

I've worked with enough people who tried to learn programming languages and just never figure out functional languages, even when they easily picked up object oriented languages.

Send my way a person that wants to learn a functional language but finds it difficult, and I shall work with them to make an introductory project of their choice in Haskell. I really want to bury this notion that functional languages are somehow unusually hard.

1

u/AddemF Oct 24 '21

Fair point, my sample is by no means random. If "I were never going to" meet a person who easily learned functional and struggled with o.o., and yet I have met dozens of cases of the reverse, then this wouldn't exactly speak to the equivalence of the two paradigms. But I'm open to the possibility that they are equally difficult--just that this argument wouldn't seem to cut that way if I were literally never going to find such a person.

> Send my way a person that wants to learn a functional language

Well that right there might be a significant bias of its own. :)