5 ms·
Ask HN: Good articles/courses for understanding mathematical notation?
Required at times for interviews or programming puzzles, knowledge I lack.
- cosinetau 6y agoThere are a lot in Abromowitz and Stegun handbook, last section "Index of Notation". It's not quite what you're asking for, but it's fairly authoritative.
- davismwfl 6y agoThere is a good book for math notation that I like: "Mathematical Notation: A Guide for Engineers and Scientists" https://www.amazon.com/Mathematical-Notation-Guide-Engineers-Scientists/dp/1466230525 https://www.amazon.com/Mathematical-Notation-Guide-Engineers...
- binarymax 6y agoAn upvote isn’t enough for this book, so I need to comment that it’s the best I’ve come across for my needs. When I was getting into the more mathematical aspects of coding when I was getting started with machine learning 5 years ago, this book was invaluable. Having thought in code (with verbose variables and structure) for many years, I needed a Rosetta Stone for the ambiguous symbology of mathematics - and this is it! It’s tinier than you’d think, but is an absolutely incredible reference. An absolute requirement for any engineers bookshelf.
- jongold 6y agoThis book single handedly saved my butt a few years ago when I was diving deep into deep learning without a math background. It’s very slim, which is a huge selling point in a world of 9000 page textbooks. I love it.
- dannygarcia 6y agoHere are a few notation resources I've found helpful when teaching myself computer science: - Mathematics for Computer Science: https://courses.csail.mit.edu/6.042/spring17/mcs.pdf https://courses.csail.mit.edu/6.042/spring17/mcs.pdf - Calculus Made Easy: http://calculusmadeeasy.org http://calculusmadeeasy.org Not directly related to your question but useful for interviews and programming puzzles nonetheless: - Algorithms and Data Structures, The Basic Toolbox: https://people.mpi-inf.mpg.de/~mehlhorn/ftp/Mehlhorn-Sanders-Toolbox.pdf https://people.mpi-inf.mpg.de/~mehlhorn/ftp/Mehlhorn-Sanders... - Basic Proof Techniques: https://www.cse.wustl.edu/~cytron/547Pages/f14/IntroToProofs_Final.pdf https://www.cse.wustl.edu/~cytron/547Pages/f14/IntroToProofs...
- gspr 6y agoI'd argue that any attempt at understanding mathematical notation universally will fail. Different fields and different sub-topics and different authors have vastly different conventions, for good reason. Sure, one can perhaps expect that something that uses an integral sign shares some properties with ordinary integration of real functions, but to really understand what the notation entails, one really has to study the underlying material. I feel that what you're asking for is kind of akin to wanting to read a novel in a foreign language using only a dictionary of the 10% most commonly used words of said language, with each entry resolving only to one meaning of the word.
- maxmcd 6y agoSurely the optimist would take this question to assume that someone is interested in expanding their math knowledge and might not have an issue getting exposed to more math. I think your answer is akin to telling a french tourist that they shouldn't try and learn basic conversational french because they could never hope to understand the complexity of the complete language.
- gspr 6y agoI understand your point. I just suspect, perhaps wrongly, that people asking the question on HN may be inclined to base serious stuff on their tourist's understanding of French. There's a place for tourist math, but it can be dangerous when misused.
- binarymax 6y agoSee the book recommended by @kasbah above - one of the best parts of that book is that this ambiguity is addressed front and center, and the reference is broken up by domain...it’s the best attempt I’ve seen and works very well.
- downshun 6y agoI've been working on some of these ideas. Even if you had mathematica-grade program implementations of all mathematical objects and properties, you can't get over things like "you can't solve the quintic this way, dummy!" Or "no, you can't have a good visual of R^n in a 2D screen!" Etc. That doesn't mean all hope is lost. For now, I won't say more.
- jimmaswell 6y agoWhat notation was used in an interview/puzzle that you weren't familiar with?
- andreygrehov 6y agoIn addition to other comments, I would also recommend "A Programmer's Introduction to Mathematics" by Dr. Jeremy Kun [0]. The HN submission [1] may have more interesting stuff around the topic. [0] https://pimbook.org/ https://pimbook.org/ [1] https://news.ycombinator.com/item?id=18579076 https://news.ycombinator.com/item?id=18579076
- The_rationalist 6y agohttps://github.com/Jam3/math-as-code https://github.com/Jam3/math-as-code
- geoelkh 6y agorelated topic: do you usually prefer seeing specs/design doc in plain english or mathematical notation?
- kasbah 6y agoNot an article or course but this Math as code cheat sheet is pretty good: https://github.com/Jam3/math-as-code https://github.com/Jam3/math-as-code
- mhh__ 6y agoWhat does understand mean? Notation is just that, notation. I think that the single biggest advantage one can have (in programming that does something "non-trivial" - loaded term I know, rather than as a person) is to have a firm grasp of the mathematical basis of their work. It's so much easier to start something new when you can derive it yourself. If you have the time, I recommend "Advanced Engineering mathematics" for the gap between calculus to applications and other topics like Linear Algebra, analysis, and graph theory. If you just want a mapping of symbols to words try LaTeX documentation A la https://oeis.org/wiki/List_of_LaTeX_mathematical_symbols https://oeis.org/wiki/List_of_LaTeX_mathematical_symbols
- agentultra 6y agoNotation varies depending on the author and subject area but a good resource for "programmer/computer science" notation is to skim through Concrete Mathematics or the preliminaries to The Art of Computer Programming -- I find this notation to be common. In more specialized areas like type theory, first order logic, predicate calculus, temporal logic, etc you have to pick it up as you go.
- jgwil2 6y agoIn addition to some great responses already on here, I would suggest picking up a functional programming language as a way to bridge the gap between math and the C-style syntax that most of us learned to program in. Haskell and PureScript are good for this; many programs actually use even more mathy aliases for common tokens (e.g. `∀` for `forall`).
- deleted 6y ago[deleted]
- alokrai 6y agoYou internalise mathematical notation by using it to solve mathematical problems and express mathematical ideas. Two excellent resources are: 1. Introduction to Mathematical Thinking (if you prefer moocs) - https://www.coursera.org/learn/mathematical-thinking https://www.coursera.org/learn/mathematical-thinking? 2. How to think Like a Mathematican - https://www.amazon.co.uk/How-Think-Like-Mathematician-Undergraduate/dp/052171978X https://www.amazon.co.uk/How-Think-Like-Mathematician-Underg...
- brutt 6y agoLook at formula source in Latex, so you will have keywords to google.
- ivan_ah 6y agoOne thing to note is that there is no universally agreed upon convention for denoting math objects. Textbook and research paper start with a section on notation to clarify the symbols they will use. Notation often varies between fields, academic schools, and sometimes there are even differences between the notation you would use when writing on a blackboard vs. the notation you would use in print. That being said, for the most basic concepts the notation is pretty consistent so if you skim through one or two books you'll be able to get the feel for it. Understanding the actual math—that will take longer. As for references, here is a very comprehensive standard, ISO 80000-2 that defines recommendations for many of the math symbols, with mentions of other variations: https://people.engr.ncsu.edu/jwilson/files/mathsigns.pdf#page=10 https://people.engr.ncsu.edu/jwilson/files/mathsigns.pdf#pag... For something shorter (and less complete), you can also check the notation appendices in my books: https://minireference.com/static/excerpts/noBSguide_v5_preview.pdf#page=136 https://minireference.com/static/excerpts/noBSguide_v5_previ... https://minireference.com/static/excerpts/noBSguide2LA_preview.pdf#page=159 https://minireference.com/static/excerpts/noBSguide2LA_previ...
- swimfar 6y ago"One thing to note is that there is no universally agreed upon convention for denoting math objects." This is the thing that trips me up most often. It's especially a problem when the author believes that their notation and variables are universal and therefore don't need to be defined. I've spent a lot of time these past few months trying to "reverse engineer" calculations done in research papers to verify their notation. Textbooks and theses generally do a better job of defining everything because they aren't as concerned about document length.
- downshun 6y agoI think the reason is that math notation is used in context. Which is what explains the two different notations for calculus derivatives. They were interested in different things! Similarly in quantum mechanics (not my area) you may want to use bra-ket notation or matrix representations if you care about implementation details.
- stiff 6y agoFor interviews and programming puzzles you only need to know notation for basic mathematical logic, basic set theory and the summation notation and maybe some bits and pieces from number theory: https://en.wikipedia.org/wiki/Logical_connective#Common_logical_connectives https://en.wikipedia.org/wiki/Logical_connective#Common_logi... https://en.wikipedia.org/wiki/Quantifier_(logic)#Notation https://en.wikipedia.org/wiki/Quantifier_(logic)#Notation https://en.wikipedia.org/wiki/Set_theory#Basic_concepts_and_notation https://en.wikipedia.org/wiki/Set_theory#Basic_concepts_and_... https://en.wikipedia.org/wiki/Summation#Capital-sigma_notation https://en.wikipedia.org/wiki/Summation#Capital-sigma_notati... https://en.wikipedia.org/wiki/Modular_arithmetic#Congruence https://en.wikipedia.org/wiki/Modular_arithmetic#Congruence If Wikipedia is too hard to follow, you can learn this from early chapters of a discrete mathematics textbook.
- vthommeret 6y agoTo understand basic notation like summations and matrix multiplications, I created Math to Code which is a quick tutorial to translate math into NumPy code: https://mathtocode.com/ https://mathtocode.com/ Previous HN discussion / it was on the front page earlier this week: https://news.ycombinator.com/item?id=23513438 https://news.ycombinator.com/item?id=23513438
- Rerarom 6y agoThere is no rule of mathematical notation except that things that are written as an index (whether as a subscript or superscript or argument) are stuff the given object depends upon. Everything else builds upon that rule and is defined in some context. Source: I am a mathematician
- hansvm 6y agoThis won't solve all your problems, but it _can_ be a big help to know what to search when you see a wall of symbols, and detexify.kirelabs.org is a decent resource for that -- you can draw a single symbol and get the latex code that would generate it. (if you're typesetting math it's invaluable, not just decent)