<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: derdi</title><link>https://news.ycombinator.com/user?id=derdi</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 16 Jun 2026 04:08:15 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=derdi" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by derdi in "Teenagers Stayed Overnight at Their School and Found Hidden Ancient Roman Ruins"]]></title><description><![CDATA[
<p>There's almost no original art in Pompeii, it's all in the archeological museum in Naples. There are some reproductions in place in Pompeii, but mostly it's bare brick walls that the art has been scraped from. You need to see the brick walls, then see the art in the museum, then compose the two in your head.</p>
]]></description><pubDate>Mon, 15 Jun 2026 16:31:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=48543683</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=48543683</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48543683</guid></item><item><title><![CDATA[New comment by derdi in "Teenagers Stayed Overnight at Their School and Found Hidden Ancient Roman Ruins"]]></title><description><![CDATA[
<p>250 years is longer than the existence of a country called Italy, let alone the Italian Republic. Just like in Italy, the history of people in your area did not start with the founding of your country.</p>
]]></description><pubDate>Mon, 15 Jun 2026 15:21:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=48542606</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=48542606</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48542606</guid></item><item><title><![CDATA[New comment by derdi in "Quivers: A year of linear algebra by drawing arrows"]]></title><description><![CDATA[
<p>If you're interested in actual linear algebra with diagrams, I think <a href="https://graphicallinearalgebra.net/" rel="nofollow">https://graphicallinearalgebra.net/</a> is the thing to look at.</p>
]]></description><pubDate>Mon, 15 Jun 2026 13:59:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=48541386</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=48541386</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48541386</guid></item><item><title><![CDATA[New comment by derdi in "Formal methods and the future of programming"]]></title><description><![CDATA[
<p>You are praising Lean for optional verification. They want to add optional verification to OCaml. Where do you see an impedance mismatch? Just in the fact that you don't find OCaml pretty enough?</p>
]]></description><pubDate>Mon, 15 Jun 2026 13:27:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=48540956</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=48540956</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48540956</guid></item><item><title><![CDATA[New comment by derdi in "Finding Miscompiles for Fun, Not Profit"]]></title><description><![CDATA[
<p>Why are you using phrasing that equates AI and humans? Codex isn't in a position to decide whether to do work.</p>
]]></description><pubDate>Sat, 30 May 2026 07:02:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=48333466</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=48333466</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48333466</guid></item><item><title><![CDATA[New comment by derdi in "Vera: a programming language designed for machines to write"]]></title><description><![CDATA[
<p>Most Prolog code on the Web is complete garbage.</p>
]]></description><pubDate>Thu, 30 Apr 2026 08:27:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=47959752</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=47959752</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47959752</guid></item><item><title><![CDATA[New comment by derdi in "Vera: a programming language designed for machines to write"]]></title><description><![CDATA[
<p>No. In this type of language, the typical division function does not check against zero. It has a <i>precondition</i> that requires the <i>caller</i> to ensure that the divisor is not zero. If the data the caller has is completely arbitrary, then yes, the caller must use an if statement or similar. If the caller knows something about its data and can be sure that the divisor is not zero, then it doesn't need to use an if statement. But it might need to convince the proof checker that it knows what it's doing.</p>
]]></description><pubDate>Thu, 30 Apr 2026 08:16:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47959687</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=47959687</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47959687</guid></item><item><title><![CDATA[New comment by derdi in "Viktor Orbán concedes defeat after 'painful' election result"]]></title><description><![CDATA[
<p>I'd like that. But this system is very attractive for the strongest party, so it will be a real test of their commitment to actually representative, multi-party democracy. Also, the general system (a mix of single-member constituencies and party list seats, with more of the former than the latter) isn't a Fidesz invention, it has a long legal tradition in Hungary. So there might be a lot of resistance to a purer party-list system on those grounds too.<p>Obvious tweaks exist, of course: Even if you keep more individual constituencies than party list seats, they should use some sort of instant runoff/ranked choice/etc. system. But other first past the post countries are dragging their feet on this too, so... we'll see.</p>
]]></description><pubDate>Mon, 13 Apr 2026 12:33:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47751069</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=47751069</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47751069</guid></item><item><title><![CDATA[New comment by derdi in "Viktor Orbán concedes defeat after 'painful' election result"]]></title><description><![CDATA[
<p>Also, the fact of faking a terror attack and everybody just shrugging it off as an obvious Russian false flag op. I think even Orbán understood at that point that the jig was up.</p>
]]></description><pubDate>Mon, 13 Apr 2026 07:56:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=47749071</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=47749071</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47749071</guid></item><item><title><![CDATA[New comment by derdi in "Viktor Orbán concedes defeat after 'painful' election result"]]></title><description><![CDATA[
<p>It's worth noting that the party vote share here was 53% for Tisza vs. 44% for the even-more-right-wing parties. The fact that this results in a two thirds majority is because the electoral system inflates the strongest party. Orbán has previously achieved two thirds majorities multiple times while winning less than 50% of the party vote. Most seats are assigned not through party lists but in single-member constituencies with first-past-the-post voting, same as in America. So it's not "convince two thirds of the people to vote for you", it's "convince a very slim plurality in two thirds of the constituencies to vote for you".</p>
]]></description><pubDate>Mon, 13 Apr 2026 07:55:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47749059</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=47749059</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47749059</guid></item><item><title><![CDATA[New comment by derdi in "LLMs aren't world models"]]></title><description><![CDATA[
<p>Ask a kid that doesn't know how to read and write how many Bs there are in blueberry.</p>
]]></description><pubDate>Wed, 13 Aug 2025 07:27:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=44885570</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44885570</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44885570</guid></item><item><title><![CDATA[New comment by derdi in "Show HN: Bolt – A super-fast, statically-typed scripting language written in C"]]></title><description><![CDATA[
<p>Oooh, bikeshedding! To me your `import math with x as y` reads like "import <i>all</i> of math, making all of its symbols visible, just renaming some of them". That's different from the intended "from math, import only x (maybe with a renaming)".</p>
]]></description><pubDate>Mon, 11 Aug 2025 10:13:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=44862607</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44862607</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44862607</guid></item><item><title><![CDATA[New comment by derdi in "The Q Programming Language"]]></title><description><![CDATA[
<p>This is someone's private project for their own amusement. It's clearly not in a state where it would be "useful" to "users". Nor is it meant to be. At the moment it's meant for compiler geeks to look at.<p>Not every readme is a sales pitch for Enterprise Quality(tm) software.</p>
]]></description><pubDate>Fri, 08 Aug 2025 13:49:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=44836920</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44836920</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44836920</guid></item><item><title><![CDATA[New comment by derdi in "The Math Is Haunted"]]></title><description><![CDATA[
<p>Gotcha. I've never had a problem with this usage. I guess I see the objection of "the goal is to <i>prove</i> the theorem" vs. "the (initial) goal is the theorem". It strikes me as overly pedantic, but we're talking about formal methods, so I guess pedanticism is warranted.<p>I do want to note that systems usually use terms like "current goal" or "active goal", which do imply a sense of progress. I never felt that they imply that the current goal is a brand-new thing. It's a transformed version of the previous goal, hopefully made up of simpler parts that eventually become so simple as to be trivial, which then completes the overall proof.</p>
]]></description><pubDate>Mon, 04 Aug 2025 13:39:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=44785628</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44785628</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44785628</guid></item><item><title><![CDATA[New comment by derdi in "The Math Is Haunted"]]></title><description><![CDATA[
<p>Maybe you could show a simple example so the OP can get an idea if that is what they are looking for.</p>
]]></description><pubDate>Fri, 01 Aug 2025 13:15:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=44756340</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44756340</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44756340</guid></item><item><title><![CDATA[New comment by derdi in "The Math Is Haunted"]]></title><description><![CDATA[
<p>> It would be like if I were helping you get to work in the morning, and I said, "Okay, you're current [sub]goal is that you're done brushing your teeth." No. That's not a goal. That's progress toward a goal.<p>Interesting. Let's say our overall goal is to get to work showered, wearing clean clothes, and having brushed our teeth. After we showered and put on clean clothes, wouldn't you say that the remaining goal is to brush our teeth and get to work? And if we then do brush our teeth, wouldn't you say that the remaining goal is to get to work? In this scenario, if anything can be called progress, it is what's in the past (the showering etc.), not what is still to be done.</p>
]]></description><pubDate>Thu, 31 Jul 2025 18:46:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=44748795</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44748795</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44748795</guid></item><item><title><![CDATA[New comment by derdi in "The Math Is Haunted"]]></title><description><![CDATA[
<p>Nitpick, but it's a bit strange to say that the two_eq_two theorem looks like a function. It looks more like a constant, since it has no arguments. (Yes I know that constants are nullary functions.)<p>I would find the following a more convincing presentation:<p><pre><code>    theorem x_eq_x (x:nat) : x = x := by
      rfl

    theorem 2_eq_2 : 2 = 2 := by
      exact (x_eq_x 2)
</code></pre>
Here x_eq_x looks like a function, and in 2_eq_2's proof we apply it like a function.</p>
]]></description><pubDate>Thu, 31 Jul 2025 12:42:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=44745077</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44745077</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44745077</guid></item><item><title><![CDATA[New comment by derdi in "The Math Is Haunted"]]></title><description><![CDATA[
<p>Rocq used to have a "mathematical proof language". It's hard to find examples, but this shows the flavor (<a href="https://stackoverflow.com/a/40739190" rel="nofollow">https://stackoverflow.com/a/40739190</a>):<p><pre><code>    Lemma foo:
      forall b: bool, b = true -> (if b then 0 else 1) = 0.
    proof.
      let b : bool.
      per cases on b.
        suppose it is true. thus thesis.
        suppose it is false. thus thesis.
      end cases.
    end proof.
    Qed.
</code></pre>
So the idea was to make proofs read more like "manual" proofs as you would find them in math papers. Apparently nobody used this, so it was removed.<p>Isabelle's Isar proof language is similar, and AFAIK the standard way of proving in Isabelle (example from <a href="https://courses.grainger.illinois.edu/cs576/sp2015/doc/isar-overview.pdf" rel="nofollow">https://courses.grainger.illinois.edu/cs576/sp2015/doc/isar-...</a>):<p><pre><code>    lemma "map f xs = map f ys ==> length xs = length ys"
    proof (induct ys arbitrary: xs)
      case Nil thus ?case by simp
    next
      case (Cons y ys) note Asm = Cons
      show ?case
      proof (cases xs)
        case Nil
        hence False using Asm(2) by simp
        thus ?thesis ..
      next
        case (Cons x xs’)
        with Asm(2) have "map f xs’ = map f ys" by simp
        from Asm(1)[OF this] ‘xs = x#xs’‘ show ?thesis by simp
      qed
    qed
</code></pre>
You spell out the structure and intermediate results you want, and the "by ..." blocks allow you to specify concrete tactics for parts where the detains don't matter and the tactic does what you want. In this proof, "simp" (a kind of simplify/reflexivity tactic) is enough for all the intermediate steps.<p>I don't know if there is anything like this for Lean, but maybe this provides some keywords for a web search. Or inspiration for a post in some Lean forum.</p>
]]></description><pubDate>Thu, 31 Jul 2025 12:37:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=44745026</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44745026</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44745026</guid></item><item><title><![CDATA[New comment by derdi in "The Math Is Haunted"]]></title><description><![CDATA[
<p>Yes, there is a prelude that defines natural numbers and an addition function on them. As the post notes, the reflexivity tactic "unfolds" the addition, meaning that it applies the addition function to the constants it is given, to arrive at a constant. This is not specific to addition, it unfolds other function definitions too. So addition doesn't have to come first, you are right that reflexivity is more fundamental.</p>
]]></description><pubDate>Thu, 31 Jul 2025 12:18:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=44744872</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44744872</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44744872</guid></item><item><title><![CDATA[New comment by derdi in "Parity of Zero"]]></title><description><![CDATA[
<p>I can, yes. Laypeople might not be able to, or be aware of the various (equivalent) accepted definitions.<p>And yes, this means that many laypeople are not effective at doing mathematics. Does this surprise you? If yes, then the linked article and Mastodon thread may be interesting to you. Which is why I submitted them.</p>
]]></description><pubDate>Wed, 30 Jul 2025 17:35:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=44737152</link><dc:creator>derdi</dc:creator><comments>https://news.ycombinator.com/item?id=44737152</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44737152</guid></item></channel></rss>