HNHacker News
TopNewBestAskShowJobs

karelpeeters

188 karma · joined January 25, 2022

https://github.com/KarelPeeters/
submissionscomments
karelpeeters··on Ask HN: Do you want a router that has DD-WRT pre-installed?
The website seems a bit barebones indeed, but it does list the processor used: NXP Layerscape LS1046A. The youtube channel links to discord/email, so he's probably reachable there.
karelpeeters··on Ask HN: Do you want a router that has DD-WRT pre-installed?
Tomaž Zaman is working on something similar, an open source router. The process of building both the product and the company is well documented on his channel: https://www.youtube.com/@tomazzaman/featured. The company website is here: https://mono.si/
karelpeeters··on Fighting for #1 in the Ultimate Tic-Tac-Toe Arena
Great to see people are still doing UTTT competitions! I remember spending months working and competing with a friend on our own bots for theaigames.com, which was a similar site that has since shut down. I never got good enough to score highly on the leader board, but the experience taught me a lot about tree search, (micro)optimizing algorithms and programming in general.
karelpeeters··on Solving the Jane Street reverse engineering challenge
In general that's true, but to reason about boolean circuits like in this challenge we only need a SAT solver. Z3 is just used for it's convenient API.
karelpeeters··on Solving the Jane Street reverse engineering challenge
Looks like it did not actually solve it, but instead it just found an existing solution at https://github.com/NotCleo/GDS-to-RTL and verified parts of it?

I have no doubt that modern agents can solve challenges like this even without external help, but you should at least briefly look at the output before posting it online!

karelpeeters··on Solving the Jane Street reverse engineering challenge
Degate is even a bit overkill, it is meant for when you only have images of the physical chip. This challenge has the full GDS files, which are the files that are sent to the fab for manufacturing. They still contain information about all of the separate layers. In this case they even contained the stdcell names, making even full transistor and logic function extraction unnecessary.
karelpeeters··on Solving the Jane Street reverse engineering challenge
Yeah I briefly considered switching to a simulator to get the final output, but then luckily realized the Z3 setup I had was already acting as a super-powered simulator anyway!

I'm not actually using formal verification at $DAYJOB, there we're using MILP solvers (which are closely related to SAT solvers) as part of the compilation flow when scheduling operations onto hardware accelerators.

I have been interested in formal verification for hardware for a while, but so far haven't found an opportunity to apply it. There are some great resources online though: the ZipCpu blog at https://zipcpu.com/formal/formal.html and SymbiYosys website at https://symbiyosys.readthedocs.io/en/latest/. I hindsight I could probably have used SymbiYosys instead of Z3, it would have saved me from having to walk the graph and map the gates to equations myself.

karelpeeters··on Solving the Jane Street reverse engineering challenge
Congrats on solving the challenge!

I also briefly wrote about my approach here, with less pictures but going into slightly more detail about how to convert circuits to z3 equations: https://gist.github.com/KarelPeeters/dba417c2690cf0505ac9079...

karelpeeters··on Claude Fable 5.1 and Claude Mythos 5.1
Text watermarking has no effect on output quality, it just works by changing the explicit source of randomness that is in practice always present in LLM output sampling. See for example https://www.seangoedecke.com/ai-text-watermarking-is-not-a-b....
karelpeeters··on The text in Claude Code’s “Extended Thinking” output
No, I think the comment you're responding to is actually correct. Look at this quote from the Anthropic blog post again:

> The design should have been simple: if a session has been idle for more than an hour, we could reduce users’ cost of resuming that session by clearing old thinking sections. Since the request would be a cache miss anyway, we could prune unnecessary messages from the request to reduce the number of uncached tokens sent to the API. We’d then resume sending full reasoning history. To do this we used the clear_thinking_20251015 API header along with keep:1.

They clearly make the same distinction between the cache and the context. They're saying "we could reduce users’ cost of resuming that session by clearing old thinking sections". They intentionally created a behavior different between cached and uncached requests, specifically they clear thinking sections from the context for requests that miss the cache.

karelpeeters··on Redis 8.8: New array data structure, rate limiter, performance improvements
What would be the point of embedding Redis into an application? What's the advantage of using Redis over using the builtin (or third party) data structures of the language the application is developed in?

I'm asking as a non-webdev who never quite got what Redis actually does, but would love to learn.

karelpeeters··on Uncertain<T>
Using this sampling-based approach you get correct covariance modeling for free. You have to only sample leaf values that are used in multiple places once per evaluation, but it looks like they do just that: https://github.com/mattt/Uncertain/blob/962d4cc802a2b179685d...
karelpeeters··on Adding lookbehinds to rust-lang/regex
Yes, the `regex` crate is also the regex engine used by ripgrep, both were developed by https://github.com/burntsushi.
karelpeeters··on QBE – Compiler Back End
Out of curiosity, why are you still using 32-bit architectures?
karelpeeters··on Zilog Z80 CPU – Modern, free and open source silicon clone
That switch-case gets optimized and compiled down to logic gates by the synthesis tools. It'll be a different set of gates from the original netlist (which might also have used a more regular grid structure for this), but it won't be _that_ different. It's not somehow running this switch-case in software emulation on a different CPU instantiated in this design.
karelpeeters··on Why Do Python Lists Multiply Oddly? Exploring the CPython Source Code
Matlab is one language that chooses the second. Every assignment a=b where b is a matrix creates a distinct copy of the matrix.

The interpreter is slightly more clever and instead implements this as a copy-on-writr mechanism, but that's just an implementation detail .

karelpeeters··on Who uses Google TPUs for inference in production?
Look like this was generated by an LLM.
karelpeeters··on Stable Video Diffusion
It means that instead of (only) doing convolution in spatial dimensions, it also(/instead) happens in the temporal dimension.

A good resource for the "instead" case: https://unit8.com/resources/temporal-convolutional-networks-...

The "also" case is an example of 3D convolution, an example of a paper that uses it: https://www.cv-foundation.org/openaccess/content_iccv_2015/p...

karelpeeters··on Why we don’t generate elliptic curves every day
Could you share the paper(s) about "backdoors" in physical constants? That doesn't make much sense at first sight.
karelpeeters··on The City of Seattle accidentally gave me 32M emails for $40 (2018)
Sure, it's all slightly fuzzy. I don't think that detracts much from the my point though.
karelpeeters··on The City of Seattle accidentally gave me 32M emails for $40 (2018)
For all emails sent to/from any Seattle owned email address in 2017, please provide the following information:

1. From address 2. To address 3. bcc addresses 4. cc addresses 5. Time 6. Date

Is this really a reasonable request that the government is expected to answer? Doesn't this expose a bunch of private information about government employees and the people they interact with? I understand this post (and apparently the law) takes this as completely normal thing, but it seems really weird to me.

Some examples:

* exact times people are getting in/out the office (eg. the time in the morning when a person first answers an email from their boss)

* full information about holidays taken by all employees (eg. days/weeks during which no emails are sent)

* friendships or relationships (eg. any communication between employees that doesn't follow from the hierarchy or from team delineations)

* information from criminal investigations (eg. an investigator sending an email to the parking fine department probably means one of the cases they're working on is related to parking fines)

This all seems a huge privacy leak? Should this stuff even be called "metadata" if so much can be derived from it?

karelpeeters··on Launch HN: Radical (YC W23) – Autonomous high-altitude solar aircraft
Interesting, what could power companies use this for? Checking for overgrown power lines? Checking for roofs to place solar panels one?
karelpeeters··on Show HN: A nom parser for the Starcraft 2 Protocol Replay format
Could you share the repo? I've been curious what nontrivial parsers look like woth nom, I always lose the overview pretty quickly.
karelpeeters··on Language Models Represent Space and Time
It's important to note that these probe models are very simple - they're "trained" by just doing a linear regression between the hidden activations and the desired output. This means that the probes can barely do any computation themselves, so if they work at all this is a strong indication that the signal they predict was already in the hidden activations.

For even more proof, see "Figure 5: Space and time neurons in Llama-2 models" for single neurons in LLMs that already encode this information, without even having to use a probe model to extract it.

karelpeeters··on LabelContactRelationYoungerCousinMothersSiblingsDaughterOrFathersSistersDaughter
What value does this label have for English localization?
karelpeeters··on We built an AI-powered Magic the Gathering card generator
That sounds interesting, can you give some examples? Is this limited to classical RL Q-learning type stuff for turn based games, or full AlphaStar-level agents for RTS games?
karelpeeters··on Introduction to vector similarity search (2022)
I'm not an expert, but some thoughts:

* The problem with large vectors is that they have large dot products with every other vector, which would imply that they are more similar to everything which doesn't make sense.

* Adding the requirement that "length==1" doesn't matter much in high-dimensional spaces, since that only removes one degree of freedom. Don't try to use too much 3D intuition here.

* It might be intuitive to think that "large" should have implications for the size of the vectors, but that really only applies to a couple of examples. We want vectors to represent thousands of unrelated concepts, so this one case is really not that relevant or important.

* In reality what ends up happening is partially the "very" dimension you're suggesting, but also just a "largeness" dimension. Individual dimensions can still have a scale!

karelpeeters··on Top secret U.S. Navy system heard titan implosion days ago
What scene in the expanse is that?
karelpeeters··on Make your programs run faster by better using the data cache (2020)
That sounds interesting, what does the JVM do for tree structures and linked lists? Is that just about compacting memory?
karelpeeters··on Is parallel programming hard, and, if so, what can you do about it?
Tokio is using the Rust async features, which are not green threads. In the former code has to explicitly mark potential yield points, in the latter green threads can be scheduled by the runtime without any help from the code itself.

As a historical note, Rust used to have green threads but they were abandoned a long time ago. This is a good talk about both the differences between different forms of concurrency/async and Rusts history with them: https://www.infoq.com/presentations/rust-2019/ (includes a transcript)

Page 1 of 2Next →