Posts

William Troiani - Gentzen-Mints-Zucker Duality: Rethinking Curry-Howard

Image
See this 2020 paper Gentzen-Mints-Zucker duality by Daniel Murfet and William Troiani: The Curry-Howard correspondence is often described as relating proofs (in intutionistic natural deduction) to programs (terms in simply-typed lambda calculus). However this narrative is hardly a perfect fit, due to the computational content of cut-elimination and the logical origins of lambda calculus. We revisit Howard's work and interpret it as an isomorphism between a category of proofs in intuitionistic sequent calculus and a category of terms in simply-typed lambda calculus. In our telling of the story the fundamental duality is not between proofs and programs but between local (sequent calculus) and global (lambda calculus or natural deduction) points of view on a common logico-computational mathematical structure.  See also  Program Synthesis and  On Getting Machines to do Stuff  and then  Jean-Yves Girard - Lectures at IHP thematic trimester : Semantics of proofs and...

Ian Clarke - Freenet Update

Image
See  https://freenet.org . See  Polylog on Oblivious Transfer and Zero Knowledge Protocols  and  HTML in Blog Posts . See also  Taylor and Amy Experiment With an Open Source, Decentralised, Encrypted Way to Message Complete Strangers . For the background, see  Ian Clarke on Freenet  and  Ian Clarke Answering Questions About Freenet . Subscribe to FUTO .     Subscribe to FUTO .  

David MacQueen on his Ideas for Successor ML

Image
See  https://github.com/dmacqueen/NewFrontEnd  and  https://standardml.zulipchat.com . 9:33 On disallowing static declarations within expressions: from MLFW2025.txt : 1.3. [Core] No static (type/module) declarations within expressions   Moto: "Keep the core and module levels separate", or "no static declarations within   dynamic expressions".   What does it, or should it, mean to have a (statically generative) datatype declaration   in the body of a recursive function.   [Karl Crary (and Bob Harper?) won't like this, since definition of modules within   expressions is a feature of his dialect of (S)ML. It also appears to be supported in   Moscow ML. The CMU (Harper, Crary, etc.) view of the static semanatics of (S)ML seems to   base on some fundamental "type theoretic" notion of a _module_ that seems to be   different from my own intuitive understanding of the module system of (S)ML. Their ideas   are described in papers s...

Program Synthesis

Image
I just found out that POPL 2024 had some talks about program synthesis. This reminded me of the Criterion Problem. See  Ways to Do Telecommunications : Subscribe to ACM SIGPLAN .

Helium Balloon Drones with a Novel Vertical Thrust Mechanism

Image
This is great! See Hackaday Europe 2026: Half Quad, Half Blimp: Test. Fly. Survive . Subscribe to Hackaday .

Julie Nolke's Weirdly Brilliant Sketch about Charcuterie

Image
See  Jean-Yves Girard - Lectures at IHP thematic trimester : Semantics of proofs and certified mathematics  for more charcuterie. It's where the sausages are all hanging up around the ceiling, ... Subscribe to Julie Nolke .  

Polylog on Oblivious Transfer and Zero Knowledge Protocols

Image
My comment : That was a really clear explanation, thank you. Can you talk sometime about how it is that these protocols are not used for basic data protection? I mean why is age verification such a big deal? Can't a zero knowledge protocol be used to verify someone's age without divulging their full identity? I know there is probably a different motive behind the age verification thing, but why does nobody talk about alternative solutions that don't involve personal identity data? I think it has much wider application though. For example, say I want to order and pay for something and have it delivered to me without divulging my identity or the delivery address or my bank details. One would think that it would be possible for my bank to give me some proof that I have commited to pay a certain amount to some entity, a sort of single use cheque, which I could then commit to using to pay the supplier, who then commits to send the goods via a chain of carriers who each similary ...

Cool Plants in South Carolina

Image
Subscribe to Crime Pays but Botany Doesn't .

HTML in Blog Posts

Just testing stuff: SVG You can click on the blue circle: MathML There is not much you can do with this. See Mathematical Markup Language 1.01 Specification   7.1.5 Mixing and Linking MathML and HTML . It's the big problem  of how you compose languages.   a x 2 + b x + c = 0 You can click on the discriminant: x = − b ± b 2 − 4 ⁢ a ⁢ c 2 ⁢ a 2D Canvas Sound  Beep! WebGPU Next level Parser expression grammar compiler:  https://peggyjs.org/online.html Devine Lu Linvega's unxtal assembler/debugger:  https://wiki.xxi...

On Getting Machines to do Stuff

Image
We have all these machines, but they aren't doing the right stuff because of the hidden agenda : they were never meant to do stuff we needed them to do, they were meant to be ways for other people to use to get us to do stuff. See  FUTO FUBS and the Everything App . I was prompted to write this by Girard's question "What is a question?" and his remarks about a DVD player at 17:42 in  Jean-Yves Girard - Lectures at IHP thematic trimester : Semantics of proofs and certified mathematics .  The example question he gives is how do you know that it is a DVD player? And the answer is that you put in a DVD and it asks you a question!  It struck me the other day that the way most people think of programming is quite different to how I think of it. I think of it as composition of ideas in a bottom-up sense: I have some ideas and they're like Legos, so I have a box of all sorts of ideas and each time I learn a new one it goes in the box. Then when I am feeling creative I im...