News for hackers. Stuff that matters.

perthmad

Re:BusyBeaver(6) Is Quite Large on Saturday June 28, 2025 @02:29PM (#44406965)
This integer only exists if you assume classical logic. Otherwise, there is no such integer a priori, and actually there is none in general.
Re:Mustard Watches (1990) on Wednesday May 28, 2025 @06:21AM (#44114468)
It's a satire of a typical kind of paper from logic, in particular modal logic. Jean-Yves Girard has been very vocal against these academic papermills where the authors consider ad-hoc meaningless logical systems. For a more in-depth critique of semantics, you can also read the broccoli logic paper: https://girard.perso.math.cnrs.fr/meaning1.pdf
It reminds me of this weird theory about proto-Castillan. According to some scholars, the change from initial /f/ in Latin to /h/ in Spanish could have been caused by the bad teeth of the speakers of lore, a phenomenon ultimately due to the water quality in some areas.

https://en.wikipedia.org/wiki/Phonetic_change_%22f_%E2%86%92...

Needless to say I've always found this hypothesis doesn't really hold water...

Re:AI or Ain't: Eliza on Sunday January 07, 2024 @08:07AM (#38900888)
Any algorithm you do not understand.
Re:NP-hard does not mean hard (2017) on Thursday August 17, 2023 @06:30AM (#37159619)
Proving a negation is not a proof by contradiction, that's just the proof of an (absurd) implication. Logic people actually write blog posts about this: https://math.andrej.com/2010/03/29/proof-of-negation-and-pro...
Re:Compilers are hard on Thursday January 21, 2021 @06:52AM (#25857951)
> Typescript actually has an insanely powerful type system

I think you are conflating expressivity with complexity here. You do not need a complex type system to get a very expressive language. For instance, the typing rules of dependent type theory are fairly simple compared to the amount of trickery needed to make TypeScript work.

At constant expressivity, a simple type system is always preferable to a complex one. So I am not amazed by the fact that TS needs advanced PLT debauchery to kind of work. It doesn't even give you strong guarantees. There is a reason why Hindley-Milner type systems are called the sweet spot of static typing.

Re:An Anecdote About ML Type Inference (1994) on Thursday August 20, 2020 @05:17PM (#24229094)
The phenomenon described in this article is actually an instance of Reynold's parametricity. This one of the free stuff you get for using a (reasonable version of) static typing.
Nah, I agree with Hobsbawm in "The Short Twentieth Century" that the previous century ended in 1989, with the fall of the Berlin wall. Since then we've been observing the heyday of neoliberalism, fueled by a lack of a serious contender.
What do you mean? CoC definitely supports impredicative encodings, and as far as expressivity goes, this allows to implement a lot of programs. Proving them correct is another matter, but that's not what you implied. Also, CIC is notably not Turing-complete.
Re:Flowcharts of programming language constructs on Friday February 14, 2020 @06:35PM (#22331531)
It's even clearer when you consider higher-order functions. These diagrams are only able to represent functions of order at most 2, i.e. what is called "dependency injection".
Re:Verlan: French slang that inverses words on Sunday February 02, 2020 @09:24AM (#22217028)
On that particular topic, I definitely recommend reading François Héran's 1991 article "Pour en finir avec « sociétal »" [1].

[1] https://www.persee.fr/doc/rfsoc_0035-2969_1991_num_32_4_4079

Re:Verlan: French slang that inverses words on Sunday February 02, 2020 @09:21AM (#22217022)
"Jour" is polysemic, it literally means "day", but metaphorically it also means "light". For instance, "voir quelque chose sous un nouveau jour" means "to see something under a new light", rather than "a new day".
Re:Coq is a Lean Typechecker on Tuesday January 28, 2020 @10:18PM (#22176982)
You can actually do much better than mere embeddings. Using program translations similar to what Haskell users routinely perform when using the do-notation for monads, you can actually extend your type theory with new reasoning principles. See for instance the parametric exceptional theory [1], which adds well-behaved exceptions and allows to extend Coq with the independence of premises, i.e. (¬A → ∃n:ℕ. P n) → ∃n:ℕ. (¬A → P n).

[1] https://hal.inria.fr/hal-01840643/document

Re:Coq is a Lean Typechecker on Tuesday January 28, 2020 @10:05PM (#22176888)
Define "the authors". Gérard Huet, who wrote the software almost 35 years ago was definitely aware of the meaning, and indeed this was done in order to overtly piss off the prudish Amercians.

In the current core development team, I think it is reasonable to say that most people range somewhere on a scale from "don't care" to "mildly annoyed". Amongst the annoyed group, some actually advocate for a change of name.

Re:Coq is a Lean Typechecker on Tuesday January 28, 2020 @09:07PM (#22176483)
For the record, French speakers also have at first a hard time with the "bit" word that is usually pronounced at the very beginning of any introductory CS class. Indeed, it has the same figurative meaning as "cock" in English. Worse, you can find it in compounds such as "32-bit" or "bitfield", so try figure out the evocative power of those expressions.

Usually and fortunately though, the average person simply grows up and stops giggling at the word quite quickly. And so do Coq users.

Re:Coq is a Lean Typechecker on Tuesday January 28, 2020 @03:46PM (#22173853)
This particular feat was triggered by Kevin Buzzard's unsubstantiated claim that "Lean was better than Coq" as a foundation for mathematics, because it had built-in quotient types. The work described above precisely shows that such types can be encoded as well using features shipped with the vanilla Coq distro. See https://sympa.inria.fr/sympa/arc/coq-club/2020-01/msg00006.h....