An idea: auto-generated anki-style flashcards for mathematical notation.
Let’s say you struggle reading set builder notation. This system would prompt you with progressively more complicated set builder expressions to parse, keeping track of what you find easy or difficult, and providing tooltips/highlighting for each individual term in the expression. If it were an anki card, the B-side would be how you’d read the expression out in natural language. This wouldn’t be a substitute for learning how to use set builder notation, but it would give you a lot of practice in reading it.
There’s an easy version of this you could cobble together in an afternoon which has a bunch of randomly-populated templates it renders with MathJax or something. There’s a more sophisticated extended project which uses generative grammars, gamified progress visibility and spaced-repetition algorithms.
I’ve been thinking about putting something like this together, but realistically I don’t have the time or the complete skill-set to do it justice, and it would never get finished. Having read this thread about having difficulty in reading mathematical notation, I’m convinced a lot of other people might benefit from it.
ETA: it was probably misguided of me to liken this to Anki decks. I’m not talking about generating a bunch of static flashcards to be used with an existing system like Anki, but something separate that generates dynamic examples of what you’re trying to learn, against which you’d record your success at parsing each example in a way similar to Anki. There are, of course, all sorts of problems with memorising specific examples of mathematical notation with an Anki deck, which respondents have prudently picked up on.
An idea: auto-generated anki-style flashcards for mathematical notation.
Auto-generated exercises might be better. Compared with e.g. learning a language, there aren’t many elementary components to mathematical notation to be memorised.
The exercises might be auto-rated for complexity, and a generalised Anki for this sort of material would generate random examples of various degrees of complexity, and make the distribution of complexity depend in some way on the distribution of your errors with respect to complexity.
Language learning materials might be similarly generalised from the simple vocabulary lists that flashcards are usually used for.
I agree that auto-generated exercises would be a superior utility, but that seems like a much trickier proposition.
Also, for clarification, this wouldn’t be used for memorising notation, but for training fluency in it. My use of Anki as a comparison might have been misguided.
I like the idea of making it easier to understand mathematical notation, and get more practice at it. However, using flash cards to implement it could be problematic.
As I learned more and more mathematical notation while studying engineering, it became clear that a lot of the interpretation of the notation depends upon context. For example, if you see vertical lines to either side of an expression, does that mean absolute value or the determinant of a matrix? Is i representing the imaginary number, or current, or the vectors in the same direction as the x-axis? (As an example, electrical engineers use j for the imaginary number, since I represents current.)
For a sufficiently narrow topic, the flashcards might be useful, but it might set up false expectations that the meaning of the symbols will apply outside that narrow topic. There is not a one-to-one correspondence between symbols and meaning.
I was envisioning some sort of context-system, in part for the reason you describe and in part because people probably have specific learning needs, and at any given time they’d probably be focusing on a specific context.
Also I reiterate what I’ve said to other commenters: likening it to Anki flashcards was probably misguided on my part. I’m not talking about generating a bunch of static flashcards, but about presenting a user with a dynamically-generated statement for them to parse. The interface would be reminiscent of something like Anki, but it would probably never show you the same statement twice.
It’s important to understand the notation before you put it into Anki. Automatically generated cards with mathematical notation that the person doesn’t yet understand is asking for trouble.
I may not have presented this well in the original comment. This wouldn’t be generating random static cards to put into an Anki deck, but a separate system which dynamically presents expressions made up of known components, and tracks those components instead of specific cards. It seems plausible to restrict these expressions to those composed of notation you’ve already encountered.
In fact, this could work to its advantage. It also seems plausible to determine which components are bottlenecks, and therefore which concepts are the most effective point of intervention for the person studying. If the user hasn’t learned, say, hat-and-tilde notation for estimators, and introducing that notation would result in a greater order of available expressions than the next most bottleneck-y piece of notation, it could prompt the user with “hey, this is hat-and-tilde notation for estimators, and it’s stopping you from reading a bunch of stuff”. It could then direct them to some appropriate material on the subject.
An idea: auto-generated anki-style flashcards for mathematical notation.
Let’s say you struggle reading set builder notation. This system would prompt you with progressively more complicated set builder expressions to parse, keeping track of what you find easy or difficult, and providing tooltips/highlighting for each individual term in the expression. If it were an anki card, the B-side would be how you’d read the expression out in natural language. This wouldn’t be a substitute for learning how to use set builder notation, but it would give you a lot of practice in reading it.
There’s an easy version of this you could cobble together in an afternoon which has a bunch of randomly-populated templates it renders with MathJax or something. There’s a more sophisticated extended project which uses generative grammars, gamified progress visibility and spaced-repetition algorithms.
I’ve been thinking about putting something like this together, but realistically I don’t have the time or the complete skill-set to do it justice, and it would never get finished. Having read this thread about having difficulty in reading mathematical notation, I’m convinced a lot of other people might benefit from it.
ETA: it was probably misguided of me to liken this to Anki decks. I’m not talking about generating a bunch of static flashcards to be used with an existing system like Anki, but something separate that generates dynamic examples of what you’re trying to learn, against which you’d record your success at parsing each example in a way similar to Anki. There are, of course, all sorts of problems with memorising specific examples of mathematical notation with an Anki deck, which respondents have prudently picked up on.
Auto-generated exercises might be better. Compared with e.g. learning a language, there aren’t many elementary components to mathematical notation to be memorised.
The exercises might be auto-rated for complexity, and a generalised Anki for this sort of material would generate random examples of various degrees of complexity, and make the distribution of complexity depend in some way on the distribution of your errors with respect to complexity.
Language learning materials might be similarly generalised from the simple vocabulary lists that flashcards are usually used for.
I agree that auto-generated exercises would be a superior utility, but that seems like a much trickier proposition.
Also, for clarification, this wouldn’t be used for memorising notation, but for training fluency in it. My use of Anki as a comparison might have been misguided.
I like the idea of making it easier to understand mathematical notation, and get more practice at it. However, using flash cards to implement it could be problematic.
As I learned more and more mathematical notation while studying engineering, it became clear that a lot of the interpretation of the notation depends upon context. For example, if you see vertical lines to either side of an expression, does that mean absolute value or the determinant of a matrix? Is i representing the imaginary number, or current, or the vectors in the same direction as the x-axis? (As an example, electrical engineers use j for the imaginary number, since I represents current.)
For a sufficiently narrow topic, the flashcards might be useful, but it might set up false expectations that the meaning of the symbols will apply outside that narrow topic. There is not a one-to-one correspondence between symbols and meaning.
I was envisioning some sort of context-system, in part for the reason you describe and in part because people probably have specific learning needs, and at any given time they’d probably be focusing on a specific context.
Also I reiterate what I’ve said to other commenters: likening it to Anki flashcards was probably misguided on my part. I’m not talking about generating a bunch of static flashcards, but about presenting a user with a dynamically-generated statement for them to parse. The interface would be reminiscent of something like Anki, but it would probably never show you the same statement twice.
It’s important to understand the notation before you put it into Anki. Automatically generated cards with mathematical notation that the person doesn’t yet understand is asking for trouble.
I may not have presented this well in the original comment. This wouldn’t be generating random static cards to put into an Anki deck, but a separate system which dynamically presents expressions made up of known components, and tracks those components instead of specific cards. It seems plausible to restrict these expressions to those composed of notation you’ve already encountered.
In fact, this could work to its advantage. It also seems plausible to determine which components are bottlenecks, and therefore which concepts are the most effective point of intervention for the person studying. If the user hasn’t learned, say, hat-and-tilde notation for estimators, and introducing that notation would result in a greater order of available expressions than the next most bottleneck-y piece of notation, it could prompt the user with “hey, this is hat-and-tilde notation for estimators, and it’s stopping you from reading a bunch of stuff”. It could then direct them to some appropriate material on the subject.