376 karma · joined July 2, 2015
The typing statement has to be proven by realizing the isomorphism demanded by substitution. You are more than anything directly proving what you claim in the type. Since proof is isomorphism here, the computation in terms of lowering the body of the definition to a concrete set of instructions is execution of your proof! (possibly machine code or just abstract in a virtual machine like STG). The constructive world is really nice. I hope the future builds here and dependent types with univalence is made easier and more efficient.
One day they played a trick on me (I was basically a human auto complete as I took some graduate courses in their field and I was able to help finish the proposal they were writing). They made a joke in the word document. It made me laugh, and as I was looking in their eye I could see the joy that made. I cried so much that night.
It really really gets to me. Every time I saw a new eye tracker device or otherwise I would email their spouse. I fuckin hate that disease, but I'm amazed at the human spirit I've seen it reveal.
So failed look at archaic miss transliterations, kind of reminiscent of the entire theme of the article. The example map being built on an argument from a bad assumption (a historical error as a pretext for argument).
Perfect irony.
Also Re the person who said no to you... Wave mechanics is written in Hilbert's language directly...
On the idea and content, it reveals to me there was a great shadow world of ideas in those early days I think are still being "rediscovered" in the current time. We did an awful job of following through on visionaries like him, hell even Grace Hopper's simple 1955 paper on compiler thru compiler compilers didnt make a comeback until the shadows of the 70's, then 90's, and the past decade.
We imagined the world in the 50s. We invented it in the 60s. And then we entered a profit-driven dark age that is barely letting those results trickle into everyday reality. The future of computing is so far from what we conceptualize today we still don't even have the vocabulary for it. Conceptually this essay lays it out.
Try synthesizing a toy program in Idris2 with a lsp server and querying the compiler about what you are writing as you explore. It will open your eyes that we have just hit this reality. Don't be fooled by copilot, its the cheap plastic copy of real intelligence working with computers alternating their best strengths.
Which both make signed integers take the expected two's complement behavior, or traps signed integer overflow, respectively.
N.B. left shifting into the sign bit is still undefined behavior... On x86-64 gcc and clang seem to perform the shift as if the number is interpreted unsigned, then shifted, then interpreted signed.
Sounds very familiar. I saw this a lot in grad school. My first advisor was also fed up with the nature in academia and left tenure path to work in private industry, leaving me to fend for money in this vein.
So then my graduate research topic came into this line. I stopped that after I realized that not only was it fishing far off the path of my social support, it was also weapons research disguised via a friendly sounding problem.
I switched programs, to an advisor who seemed to want me to work in something he actually does. Then I had zero relationship with him and became basically a highly underpaid developer to crank out the numbers that corroborated his research at 100+ hour weeks. In the marginal time I was tying to figure out if I could somehow make the small corner I thought might make a thesis fit into his unspoken program. I got the hint that my PhD was predicated on making his research stand up, and having a part in it is what my PhD would represent, not any actual original work.
I became a little more cynical but continued, now paying much more attention on the side to other's experience. I found this was nearly universal from 'top schools', and then with the overflow of candidates to academic jobs they take this style to the next tier of schools where they get tenure by making a lemming line of candidates do the same.
At this point it was the breaking point. I had a great internship the previous summer. I had a "come work for us now or maybe never" ultimatum. I took the plunge.
ABD Twice. And that I consider a great accomplishment that I am quite proud of.
> Routine calculations were made using slide rules. More complex calculations, such as stress analysis, required Friden mechanical calculators.
Fascinating read. No the SR-71 didn't appear out of thin air in a sprint of intensity unheard of on earth to date. Turns out after the U-2 taught us so much we said let's make a higher, faster U-3 and then spent a decade on that concept in a series of designs and tests.
I really wish that this kind of cherry-picked mythos building fact wasn't what made half of what built the perception of good engineering to most of my present and future colleagues.
It reads more like a jealous rant than anything else. He fails to cite why those plans developments were so fast (hint it wasn't the magic of a slide rule.... It was a decade of design and test in products before the one with the name he assigned all credit to)
He also has a sort of confirmation bias here, failing to note things we could not have possibly done without computers. Try a Martian sky crane landing without atmospheric modeling ha ha.
Anyone have a reference for rules of thumb type thinking or other insights that come from slide rules?
> Original Question: Let rands denote the two real roots of x^2−x√(5 + 1) = 0. Then determine r^8+s^8.
> Codex Input: Calculate the roots of $xˆ2 - x \sqrt{5} + 1 = 0. Call the two roots r and s. Calculate z = rˆ8 + sˆ8. Evaluatez as an integer. Use sympy.
> Codex Output: > from sympy import * > x = Symbol(’x’) > r = solve(x*2 - xsqrt(5) + 1, x)[0] > s = solve(x*2 - xsqrt(5) + 1, x)[1] > z = r*8 + s*8 > print(z.evalf())
> Solution: 47
If the solution did not have the derivation of the algebra, the solution is wrong in university math. Now solving these problems for application, this is quite interesting and powerful.
Demonstrating understanding of why we get to the solution IS mathematical reasoning (at this level). This paper demonstrates being able to leap across mathematical reasoning, but not the reasoning itself.
https://github.com/google/mediapipe/issues/877#issuecomment-...
Yeah... Those crazy HoTT people, trying to actualize the goal of putting mathematics on an actually firm foundation and removing the rest of the gobblygook handwaved into the religion of math as opposed to the pure logic it represents...
Also you can use HoTT WITH AC / law of excluded middle... It's just not there by default and there are some really nice things you get without it, so it's pretty much only the lazy crutch of mathematics since forever. If you see proof via excluded middle, consider it a code smell (and recall by the Curry-Howard correspondence the proof is essentially code)
edit* Yikes https://github.com/JuliaStrings/utf8proc/blob/master/utf8pro... Still this is a good template to maybe cut a (safter) state-based iterator out of their logic...
> you want to work with higher-level primitives (code points, graphames) when iterating text that do not break your text apart;
In reality grapheme clusters are implemented nowhere and are only in the glossary. I wanted to see how this handled the sprawling complexity that can beget.
Someone call me when a library can iterate in that form, which isn't written by committee.