265 karma · joined December 4, 2017
A function is like a vector, but instead of having two or three dimensions you have a continuous number of them. Adding functions component-wise works just like adding vectors.
Just like regular vectors, you can choose to represent functions in a different basis. So you choose a family of other functions (call it a basis) that's big enough to represent any other you want. For a lot of reasons [1, 2], a very good choice is the set of complex exponentials g_w(x) = exp(2πiwx), for every real w. It's an infinite family, but that's what you need to deal with the diversity of functions that exist.
So you try to find the linear combination of exponentials that sum to your original function. You need a coefficient for each w, so call it c(w) for simplicity. After fixing the basis, the coefficients really have all the information to describe your function. They're an important object, and we call c(w) the Fourier transform.
How do you find the coefficients? Just project your original function onto a particular exp(2πiwx), that is, take the inner product. Usually the inner product is the sum of the products of coefficients. Since functions are continuously-valued, you use an integral instead of a sum. This is your formula for the Fourier transform.
I known there are technical conditions I am glossing over, but this is the intuition of it for me.
[1] There is an intuition for these exponentials. Complex exponentials are periodic functions, so you are decomposing a function in its constituent frequencies. You could also separate the exponential into a sin and cos, and will obtain other common formulas for the Fourier transform.
[2] Exponentials are like "eigenvectors" to the derivative operation (taking the derivative is just multiplying by a constant), so they're really useful in differential equations as well.
Weed and alcohol specifically suppress REM sleep, where most of dreaming happens.
Suddenly stopping weed or alcohol leads to a REM rebound, and people experience very vivid dreams. This association suggests they were actually not dreaming much before.
[1] https://en.wikipedia.org/wiki/File:KeyboardLayout-Portuguese...
[2] https://apple.stackexchange.com/questions/106058/difference-...
I think he means you don't get a list/tuple back after applying enumerate and map. That's actually lazy evaluation and it's a plus. If you just want to iterate over the values, why create a list that you are going to throw away? Twice the effort for nothing.
I agree with you that this reads as someone expecting JS behavior in Python.
If you are interested I can share my code (simple Python).
You can separate the process by transforming the list of numbers into a binary tree and applying the operators at the nodes. You then consider all possible binary trees and all combinations of operators.
Bonus: by sorting the input values, you can consider half of the trees, because the operations either commute (x+y = y+x) or don't make sense to reverse in the integers (4/2 vs. 2/4).
That's not to say weight loss is impossible. If you're overeating as a habit you may be keeping your weight above your set-point. Learning to "listen" to hunger cues may then bring your weight down. It happened to me 2 years ago and I managed to keep the weight down, and I'm not feeling hungry. There are other ways of lowering the set-point, but not very recommendable in general.
I think focusing on hunger cues and eating a balanced diet is good advice, together with exercise and avoiding drinking and smoking. These will (statistically) reduce morbidity risks to normal-weight levels.
Note that I am not a doctor, though, so take this information with the proper grain of salt.
For the end-user, the most "seamless" way to integrate is to adopt Messenger's approach, which will be a security loss for WhatsApp unfortunately. As other users mentioned, there is also the possibility that the end-to-end encryption will lose its default status.
Ideally you would like to do this for all n directions of space, and that way you completely describe what T does in simpler terms: it just stretches things differently in different directions. It's not always possible though. The matrices that allow this are called diagonalizable and the process of finding the stretch factors (eigenvalues) is called diagonalization.
Just a caveat: if an eigenvalue is complex, the effect is not as simple as a stretch, but the interpretation is very similar.
1. λI stretches every vector (the whole space, really) by a factor λ.
2. Saying that the function is not injective means you lose information: when you apply it on some object and get a result, you can't trace back what was the original object, as there may be several. (There is no inverse function, then). In linear algebra, this only happens because there is some direction of space where all the vectors get collapsed to zero.
In short, T-λI collapses some line of vectors to zero.
So, when you took the effect of λI from T, you make it a lossy transformation in some direction. This means that _in that direction_ T had the effect of stretching all vectors by a factor of λ.
You gain some geometric understanding of T.
It is sort of intuitive, but the language may obscure it a little if you are not used to it.