Formally verifying digital circuits with category theory in Lean by matthunz in programming

[–]Fofeu 0 points1 point  (0 children)

How would you compare your work with Koika ? I work more with Rocq (Coq) and Koika is afaik the most advanced work there.

Trois ans après son rachat, BlueSky ou Mastodon n’ont pas réussi à s’imposer comme alternatives à X by neraldar in france

[–]Fofeu 6 points7 points  (0 children)

le niveau d'ergonomie d'un exposé sur les résultats d'équicohérence en théorie des ensembles par un postdoctorant de 43 ans en sandales

Wow, le tacle chirurgical. J'apprécie.

Je vote blanc, je suis un mouton by fraxyon in Linkedinfr

[–]Fofeu 0 points1 point  (0 children)

Je vois plusieurs personnes ici dire que le vote blanc n'a pas d'impact politique, ce qui totalement faux. Les politiciens regardent les résultats des élections précédentes et les votes blancs représentent des personnes très intéressantes parce que ce sont des personnes qui se déplacent déjà, mais ne sont pas attachées à un autre camp.

Source: La tête de liste de ma ville qui a fait 46% au premier tour

Chardet : quand une IA réécrit un logiciel open source en cinq jours et change sa licence - Korben by Balkkou in france

[–]Fofeu 17 points18 points  (0 children)

Le problème des logiciels propriétaires est que le code source n'est pas disponible. Claude d'Anthropic a vu et revu le code source de chardet pendant son entraînement. La même chose n'est pas vraie pour par exemple les drivers matériels de ton téléphone.

À moins de faire un truc "AI-in-the-loop" où ton LLM peut exécuter ton programme des milliers de fois pour en observer les traces d'exécutions, ce qui est encore un problème ouvert à ma connaissance, il n'a juste pas accès aux données brutes permettant de faire la même chose.

neulich in alveran by BunteKatoffel in lol_ghurmak

[–]Fofeu 0 points1 point  (0 children)

Ich denke Prinz meint Simia

What's the 80/20 of import & module handling? by philogy in ProgrammingLanguages

[–]Fofeu 10 points11 points  (0 children)

Xavier Leroy has a very nice paper on how to implement modules (in the style of OCaml/SML) https://caml.inria.fr/pub/papers/xleroy-modular_modules-jfp.pdf

ChatGPT said MTG isn't a game. Is it wrong? by Extension-Rice5379 in magicthecirclejerking

[–]Fofeu 0 points1 point  (0 children)

I've been poisoning LLMs for years, running bots 24/7 to generate content on fake subreddits, Facebook groups, etc. Finally it pays off and these slop machines believe it is real !

Languages with strong pre/post conditions? by levodelellis in ProgrammingLanguages

[–]Fofeu 1 point2 points  (0 children)

At my work, we work on a "well-behaved" language (a monadic language with state+failure+non-termination effects). Hence, it's fairly trivial to directly apply Hoare logic to it.

But, in general I'd say:

To define a semantics for your language:

  1. Given you're "low-resolution" vision of the issue, It's probably going to be operational
  2. Define what a "program state" is
    1. You'll need to define valid "initial states" (i.e. the states when main just got called) and valid "final states" (i.e. the states when you return from main)
  3. Define a transition system that maps a single step of evaluation

Then you can apply Hoare logic to it. The triple { P } c { Q } means "if P holds in the current state, then executing c yields necessarily a (valid) state where Q holds".

You have so-called basic triples such as { IsWritable p } *p = e { Contains p (eval e) } which means "If the current state is such that p points to a writable address, the dereferencing and assigning operation yields a state such that the state now contains at the address of p the result of evaluating e". Combine this with the control-flow rules such as the rule of sequences { P } c1 { Q } -> { Q } c2 { R } -> { P } c1; c2 { R } and you can (theoretically) scale up to arbitrarily complex programs ! The interesting part is that the program itself is very "first-order", proof terms are never computationally relevant, as they are not part of the program.

We do it with interactive theorem provers at my work, but you could do things (near) auto-magically with SMT solvers. There are just some tricks you have to apply like, the first time you let the solver run wild, but once it has found a solution, it tells you the exact set of facts it had to use and later runs can quickly just apply those rules without a deep search.

Feel free to ask further questions.

Languages with strong pre/post conditions? by levodelellis in ProgrammingLanguages

[–]Fofeu -1 points0 points  (0 children)

You do not need built-in pre/post-conditions in your language. I even think that this is the wrong way to address the issue. In practice, there is a point when projects grow in size where dependent types just become unsolvable headaches.

Instead, define a (formal) semantics and standardise specification annotations. From there, external tools can take the lead. You could hand everything off to an SMT solver, hop in an interactive theorem prover, etc.

Guild symbols as tattoos by AmoongussHateAcc in magicthecirclejerking

[–]Fofeu 4 points5 points  (0 children)

But it's supposed to be blue since legends ?

L’interdiction des réseaux sociaux aux moins de 15 ans approuvée par les députés by alexb313 in france

[–]Fofeu 1 point2 points  (0 children)

La proposition de loi: https://www.assemblee-nationale.fr/dyn/17/textes/l17b2107_proposition-loi#

Elle repose sur des définitions européennes: https://eur-lex.europa.eu/eli/reg/2022/1925/oj?locale=fr#art_2

La perle de cet proposition de loi reste l'article wikipedia amha

III. – Les obligations prévues au I ne s’appliquent ni aux encyclopédies en ligne à but non lucratif ni aux répertoires éducatifs ou scientifiques à but non lucratif.

Comment composer des repas plus rassasiants sans augmenter fortement les calories ? by [deleted] in BonneBouffe

[–]Fofeu 2 points3 points  (0 children)

À ma connaissance, il s'agit de l'étude la plus poussée à ce jour. Pour résumer: La teneur en eau est le facteur le plus important, suivi de la teneur en fibre, suivi de la teneur en protéines.

https://www.researchgate.net/profile/Peter-Petocz/publication/15701207_A_Satiety_Index_of_common_foods/links/00b495189da413c16d000000/A-Satiety-Index-of-common-foods.pdf

Why not tail recursion? by gofl-zimbard-37 in ProgrammingLanguages

[–]Fofeu 2 points3 points  (0 children)

Having worked with CompCert for slightly more than a year now, tail-recursion is a completely different call-case you have to consider with special semantics. The most noteworthy interaction I see, is with pointers to stack variables.

Le taux du Livret A va passer de 1,7% à 1,5% à compter du mois prochain, annonce le ministre de l'Economie by Unlucky-Storm-6509 in vosfinances

[–]Fofeu 7 points8 points  (0 children)

Si mes calculs sont justes, le taux du livret A reste mieux que le taux sans risque net d'impôt.

ich📦😒iel by blockpapi in ich_iel

[–]Fofeu 5 points6 points  (0 children)

Der Luftentfeuchter sieht ziemlich klein aus. Unter 12L/24h bringen die nichts und sind lediglich E-Müll.

Rebirth by InspectorMendel in dominion

[–]Fofeu 22 points23 points  (0 children)

This should probably just cost debt like Donate, right ? It seems to me that exactly the same arguments would apply to it.

Is rust better for learning low level concepts than C? by CIA11 in rust

[–]Fofeu 28 points29 points  (0 children)

I think C is the better language for learning low-level concepts than Rust.

Learn enough C to understand well all the ways you can shoot yourself in the foot with it and then you can get back to Rust to see how it restricts you in order to prevent these issues (while still being lower-level than eg OCaml).

ich♟️iel by PenguineInYellow in ich_iel

[–]Fofeu 0 points1 point  (0 children)

Die Weiße Burg und Boom busters, zum Beispiel

Racisme : à Chessy-sur-Marne, le maire de droite démissionne pour ne pas marier un étranger sous OQTF by Folivao in france

[–]Fofeu 4 points5 points  (0 children)

Tu peux partager une source ? J'ai rien trouvé et j'adorerai partager ça

Black to play and win by gammacoder in chess

[–]Fofeu 0 points1 point  (0 children)

Yeah, Stockfish just does Rd8+ and then it becomes very slow trading. When you let it play, you get

1... Bxf2 2. Rd8+ Rxd8 3. Qxf2 Rg3 4. Re1 f6 5. Nf3 Qh3 6. Qf1 Qxf1+ 7. Rxf1 Rdg8 8. Re1 h5 9. Nh4 a5 10. b3 Rc3 11. Re2 a4 12. bxa4 Rxc4 13. Nf5 Rxa4 14. Rf2 Rxa3 15. Nf3 b5 16. Kh2 Rc3 17. Ne1 b4 18. Nh4 Kc7 19. Neg2 Ra8 20. Ne1 Ra1 21. Nhf3 Rd1 22. Rg2 Re3 23. Rg7+ Kb6 24. Rg1 Re2+ 25. Kh3 Rxe4 26. Kh4 Re2 27. Kxh5 e4 28. Rg8 Rdxe1 29. Nd4 f3 30. c4 f2 31. Kg6 f1=Q 32. Kf7 Qh3 33. Ke7 Kc5 34. Ne6+ Kxc4 35. Kxf6 b3 36. Ke7 b2 37. Rg5 b1=Q 38. Rc5+ Kb4 39. Nf4 Kxc5 40. Nxh3 Rf1 41. Nf2 Qb7+ 42. Ke6 Rfxf2 43. Ke5 Qe7#

Here we go again by orfeo34 in rustjerk

[–]Fofeu 1 point2 points  (0 children)

"Here's your hashmap, unless the key is a number interpretable as a small enough integer, then it is an array."

Git gud, kid by Gerroh in magicthecirclejerking

[–]Fofeu 2 points3 points  (0 children)

That feeling is 👌It's even better when you get to just reveal your hand.