68 karma · joined November 19, 2014
M/L means that M is a field-extension over L. A concrete example would be C/R (the complex numbers over the reals).
Algebraic number theory, in particular Galois theory, studies field extensions by looking at the group of symmetries: the field automorphisms of the larger field that fix the smaller field. For the concrete example above, the Galois group is a group with two elements: the identity function and the function that maps i to -i and keeps real numbers fixed. It's not a coincidence that the dimension of C as an R-vector space is the same as the size of this group (or that the degree of the polynomial that has i (and -i) as roots has degree 2).
I marvel at the cool machine learning demos but I'm kind of sick working on this stuff, tbh.
* Frequent feedback from stakeholders and customers
* Retrospectives
* Standups
These can be annoying but they help make sure that the right thing is developed.
Things I don't like:
* Things get rushed to get them done before the sprint ends (even if there is no deadline pressure)
* On the other hand, everything takes at least two weeks to get done
I feel that this turns the output of a very high-performing developer into that of a mediocre developer. I'm not a 10x developer, so I can cope. ;)
Things I don't like but don't blame on Scrum:
* Jira
* Storypoints
* Estimating: All estimates beyond the current sprint are completely unreliable. Still, people use storypoints to derive release dates and worse, measure the productivity of employees using them.
FWIW, until I learn of better processes, I prefer Scrum without "buts" and with continuous deployment.
On your second point: Can't they argue that they implement against an API, which could be provided by non-GPL software as well?
* It disconnects more than once per day, requiring me to enable the wifi hotspot again on the phone
* The phone gets very hot
* It is slower than usb tethering: In my measurements, I get about 4MByte/s over USB and around 2MByte/s with wifi, though I'm not too confident in the results. According to the mobile provider, I should get 10.
EDIT: A fourth one is that the wifi hotspot leaks my first name and phone brand to everyone in the vicinity.
A few years back I had an interesting discussion with one of its authors and was shown the real model and code. Interestingly, they generated C from the TLA+ spec and this code generator was "unproven". However, the software itself had high coverage requirements and needed to be tested extensively (100% code/branch/MCD coverage, I don't quite remember).
One of the points he made was that the upfront cost pays for itself by avoiding bugs that are hard to debug.
[0]: https://drive.google.com/file/d/1rAn3N5hViv3xNe2E55lMzpFFym1...
Furthermore E9 is not "JP (HL)" but rather "JP HL". If I remember correctly a few timings or instruction sizes are off as well.
EDIT: Not sure if this is it, but after some digging I've found [0] on lifetimes of temporaries. As for the lacking template argument, presumably const char* is inferred and a temporary string is constructed in main?
[0]: https://simonschreibt.de/gat/zelda-wind-waker-hyrule-travel-...
[1]: http://polycount.com/discussion/104415/zelda-wind-waker-tech...
The whole point of this misery was to recover my Steam account to play a few games. Fortunately, Steam lets you recover your account if you can provide proof of ownership (like CD keys of physical copies).
I don't want Google to be the safekeeper of my digital identity.
f(x + h) = f(x) + f'(x) h + f''(x) h^2 / 2 + ...
Suppose that f is a really, really nice function (defined and holomorphic in a large enough domain in the complex numbers and a Taylor expansion with real coefficients). The curious thing happens when you think of h as just an indeterminate and you evaluate it, for instance, at i s, where i =sqrt(-1) and s is a tiny number. Then f(x + is) = f(x) + f'(x) is + f''(x) (-s^2)/2 + ...
Just looking at the imaginary part gives you: Im(f(x+is))/s = f'(x) + O(s^2).
This means you can compute the derivative with an O(s^2) error just by evaluating at a complex number. The only thing needed was that all operations are implemented not just for real numbers but complex numbers.
Instead of the R-algebra R[i] = C, why not try to use the R-algebra R[ε] and evaluate at ε, where ε is a symbol with ε^2 = 0? Remember, i is also just a symbol with the property i^2 = -1!!! f(x + ε) = f(x) + f'(x) ε + f''(x) ε^2/2 + ...
Since 0 = ε^2 = ε^3 = ..., all higher order terms vanish and you get f'(x) = coefficient of ε in f(x + ε).
(Compare with the complex numbers: Im = "coefficient of i" but this time around, there is no error)Everything that you need is to know how to implement arithmetic operations for numbers in R[ε], e.g.
(a+b ε) + (c + d ε) = (a+c) + (b+d) ε
(a+b ε) (c + d ε) = ac + (ad + bc) ε + bd ε^2 = ac + (ad + bc) ε
A problem occurs when you try to divide by ε. This is simply undefined in R[ε], which, unlike C is not a field. But not all is lost, suppose you want to divide (a + b ε) by (c + d ε), where c is not 0, then (a+b ε) / (c + d ε) = (a + b ε) (c - d ε) / (c^2 + (-cd + cd) ε) = something with ε in the numerator / c^2,
That is, division by ε only occurs when you divide by 0 in the first place.To recapitulate: If you have a class DualNumber with overloaded +, -, * , /, ^, you can find the derivative of, say, the fourth-order approximation of e^x at x = 0.5, by computing
DualNumber x = DualNumber(0.5, 1);
DualNumber approx = 1 + x + x^2/2 + x^3/6 + x^4/24;
cout << approx.EpsCoeff() << endl;
(Sorry if this not a good explanation but I've spent too much time on it :P)A good argument for monads. Much better than the dishonest appeal to mathematics.
The reasons I've gathered so far are: The journey is dangerous not just because of the risk of drowning. If I recall correctly, there were stories of rape. There's also a law for family reunification (I don't know the details but at least in the case of minors this means they can bring their family). Lastly, many young Syrian men flee because they could be conscripted by the army.
>I don't know how the Europeans intend to get all of these refugee adults up to economic snuff at the same grade of Europeans who were trained in the ways of the West from birth.
I don't think we know either.