HN user

glkindlmann

90 karma
Posts0
Comments43
View on HN
No posts found.

This is like a 1D version of what a scientific computing person might describe as the distinction between node-centered ("standard" or "mid-tread" in this post) vs cell-centered ("alternative", "mid-riser") samples: do consider values to be at the middles of bins (or middles of triangles, or middle of tetrahedra), or the boundaries between intervals (or vertices of triangles, or of tets).

In a scientific computing setting it would be insane to start doing data processing without knowing how to interpret the values. In the context of audio signal processing, if you just get a stream of integers, you'd have to know the representational intent of those integers (mu-law encoding or linear?) if you're going to compute anything about the underlying signal. The meta-data accompanying the values would hopefully provide the answer.

But with 8-bit pixel values, absent any meta-data from a competent file format that can communicate the representational intent, we're adrift and there's no right answer (like the author says). Certainly no one can fault you for picking whichever one seems to be give better results for your application, but you can raise awareness that bits without context have had their meaning undermined.

This is very cool! I would love the ability to scribble arbitrary smooth curves (like a little right hand, or a comma, something asymmetric to highlight the symmetries in play) and see how they are repeated.

Magnifica Humanitas 2 months ago

Thanks for highlighting this. I've seen a lot of popular press about Magnifica Humanitas that notes the slavery apology. It does make some sense with this (recent, as you note) humanist push, but shoe-horning a centuries-overdue apology about actual terrible slavery into a consideration of how AI might metaphorically enslave us feels a little weird.

NaN Is Weird 4 months ago

As a standard for floating point representation and computation, IEEE 754 solved multiple long-standing serious problems better than anything that came before it. I don't think its sensible to judge it with a PL design lens like "principle of least astonishment"; certainly not as if IEEE754 is a peer to Rust or Python. Or, you could learn about the surprise, frustration, and expense involved in trying to write portable numeric code in the 1970s, prior to IEEE 754:

https://people.eecs.berkeley.edu/~wkahan/ieee754status/754st...

NaN Is Weird 4 months ago

I like this justifiation of NaN != NaN; it emphasizes that NaN has representional intent, more than just some bit pattern.

We take for granted that (except for things like x86 extended precision registers) floating point basically works the same everywhere, which was the huge victory of IEEE 754. It easy to lose sight of that huge win, and to be ungrateful, when one's first introduction to IEEE 754 are details like NaN!=NaN.

Thank you for the background info, and sorry for me explaining CFFI (I just wanted to be sure we were talking about the same thing). Being ignorant about PyPy, I honestly had no idea until now that there was a personnel or purpose overlap between CFFI and PyPy. I am very grateful for CFFI (though I only use it API mode).

Sorry can you explain more the connection between PyPy and CFFI (which generates compiled extension modules to wrap an existing C library)? I have never used PyPy, but I use CFFI all the time (to wrap C libraries unrelated to Python so that I can use them from Python)

Is there any visibility or accountability to record exactly what it did and not look at? I doubt it. So we're left with a kind of Rorschach test: some people think LLMs follow rules like law-abiding citizens, and some people distrust commercial LLMs because they understand that commercial LLMs were never designed for visibility and accountability.

Sure, a license can't create new legal understanding of "derived work", but I think the intent of what Splinelinus said still works: a license outlines the terms under which a licensee can use the licensed Work. The license can say "if you train a model on the Work, then here are the terms that apply to model or what the model generates". If you accept the license, those terms apply, even if the phrase "derived work" never came up. I hope there are more licenses that include terms explicitly dealing with models trained on the Work.

Also, for comparison, both GPL and LGPL, when applied to software libraries (in the C sense of the word), assert that creating an application by linking with the library creates a derived work (derived from the library), and then they both give the terms that govern that "derived work" (which are reciprocal for GPL but not for LGPL). IANAL but I believe those terms are enforceable, even if the thing made by linking with the library does not meet a legal threshold for being a derived work.

A big 6-foot K&E sliderule hung at the front of my high-school chemistry classroom, but was never used. At graduation ('91) I asked the teacher if I could have the slide rule and she said "sure".

I keep it now in my office, and once a year I bring to the data visualization class I teach at UChicago, to show how it works, and to show it as an example of a visual device in aid of computational thinking (nomographs being another great example).

I learned about this not from Mathologer, but Numberphile [1]. The second half of the video is the continued fraction derivation. I remember this being the first time I appreciated the sense in which the phi was the most irrational number, which otherwise seemed like just a click-bait-y idea. But you've found an earlier (9 years ago vs 7) Mathologer video on the same topic.

[1] https://www.youtube.com/watch?v=sj8Sg8qnjOg

Uncrossy 6 months ago

That's super cool! Thanks for explaining. Just to clarify myself - when I was thinking of automation I was not thinking of AI, or at least not how its popularly understood these days. I was thinking more like how 2D mazes can be automatically made by non-AI methods. Uncrossy would need a kind of constraint solver that can navigate words lexically and the spatial intersection of words (and their possible slides). I'm certainly not telling you anything you don't know. There are some algorithms for these (general) kinds of constraint satisfaction problems and they long pre-date "AI", but I think the application to uncrossy and refinement would be quite challenging.

Uncrossy 6 months ago

The website says "I basically need to design puzzles in reverse and have built a set of tools to help me with that." Does that mean that each day's puzzle is essentially built by hand? It seems like an interesting and non-trivial search problem to automatically generate puzzles, given a dictionary.

Of the various internet .+P, NTP is one I never learned about as a student, so now I'm looking at its web page [1] by its creator David L. Mills (1938-2024). I've found one video of him giving a retrospective of his extensive internet work; he talks about NTP at 34:51 [2] and later at 56:26 [3].

[1] https://www.eecis.udel.edu/~mills/ntp.html

[2] https://youtu.be/08jBmCvxkv4?si=WXJCV_v0qlZQK3m4&t=2092

[3] https://youtu.be/08jBmCvxkv4?si=K80ThtYZWcOAxUga&t=3386

Others have more complete answers, but the value for me of learning Prolog (in college) was being awakened to a refreshingly different way of expressing a program. Instead of saying "do this and this and this", you say "here's what it would mean for the program to be done".

Thank you for giving the specific name ("Dynamic XFA (XML Form Architecture)") to the kind of PDF that generates the "Please wait" message. I have seen this and never understood how it arises. Chuck Geschke spins in his grave ...

Note: the improved loop in the "1. They are not exact" can easily hang. If count > 2^24, then the ulp of f is 2, and adding 1.0f leaves f unchanged. What's wild is that a few lines later he notes how above 2^24 numbers start “jumping” every 2. Ok, but FP are always "jumping", by their ulp, regardless of how big or small they are.

I started work on Teem [1] as a grad student 25 years ago; a coordinated set of C libraries for scientific visualization. It includes the original implementation of the NRRD file format [2]. One of my goals for this summer is to finally finish a version 2, so I try to spend a little time every day whittling down my todo list for that release. Currently fixing some things in the command-line parsing library ("hest"). Hearing about other people's long-standing projects is encouraging.

[1] https://teem.sourceforge.net/ but these docs are super outdated

[2] https://en.wikipedia.org/wiki/Nrrd

I suggest trying to quantify "extraordinarily", using the actual spectral response curve for the tetrachromat's fourth cone, called "Q" in the paper shared by varunneal. Most people casually equate the short (S), medium (M), and long (L) cones with blue, green, and red, with the idea that these are all as different as can be, but the M and L cones are very similar to each other, compared to S. The L, M, S curves are independent but far from orthogonal in the way you may be thinking as you say "extraordinarily". The Q curve is just another wide bump, with a peak in between that of M and L, so again, very far from being orthogonal. Whatever 4th dimension of color perception is accessed by the Q curve, it is a relatively cramped dimension, so reliably detecting perception along it requires some carefully designed stimuli.

Sure, but noticing a difference between the images and the real world also happens with us trichromats too, e.g. colors online don't match those in the real world if the illuminant isn't correctly controlled. The intrinsic difficulty of color reproduction is not the same as detecting tetrachromacy. The nuance here is in generating stimuli that reliably and specifically detect the difference between projecting from an infinite-D space of spectra down to 3D (via metamers like the "keef" and "litz" described in the paper linked above), versus projecting down to 4D.

Whether via direct or reflected light, spectra in trichromat's eyes are still projected down to a 3D space (the responses of the S, M, L cones). What you describe would still require a standardized and reliable way to probe an extra degree of freedom in spectra that conventional RGB displays can't access. The paper shared by varunneal explains it better than I can.

This is so cool. For your figures, how did you decide the RGB colors of the 4D colorspace? Or did you convince ACM to print your paper with special inks? :)