Dungeon Proof Crawler: learn how to write proofs with RPG

(dhilst.github.io)

35 points | by SchwKatze 4 hours ago

7 comments

  • adamddev1 3 hours ago
    I thought this was about writing proofs with RPG the programming language and I was intrigued.

    To make it clear that it is with an RPG (role playing game) it needs an "an" in the title.

    • SchwKatze 2 hours ago
      Sorry, I didn't even know RPG is a language, it's too late to edit tho
    • mmooss 2 hours ago
      "Every monster is a proof. Bring back the ring before sunrise."
  • geckones 1 hour ago
    The developer here! Thanks for all the feedbacks, here are some more info

    There is a tutorial: https://dhilst.github.io/algae

    The project (algae) is a algebraic specification tool. This means it is intended to allow you to write algebraic specs, in which you define your data types (sorts), operations (ops), and the the equations chatacterizing the operations (axioms). It is a formal specification technique. I designed because I want something to pratice/improve my proof theory skills, so, distinct from Lean4 or Roqc, all the proof information is visible in the surface syntax, but it still lack ergonomics.

    About the tutorial and the game, I want it to be "proof theory introction"-like but the generated proofs are really not as good as I want they to be. The dificult progressions does not exist, the help sometimes does not help, some lemmas provide the proof in their arguments. To fix that I will need to go proof by proof and fix the help manually and also work on the progression. The AI is terrible at generating the proofs (yes it was made with AI help but I have formal specs experience).

    About the game, it may still be buggy, feel free to open issues at https://github.com/dhilst/algae/issues, and I will fix it. I want to provide a cool playground for ppl to learn proof theory and for me to pratice it too.

  • bartleeanderson 1 hour ago
    Yeah, adding the tutorial before letting them battle monsters would only be fair.
  • marktani 2 hours ago
    I sort of reverse engineered the first couple riddles (the help menu helped too) before really getting the logic here.

    What I gathered:

    - the paramaeters in lemma banish() are "given" - the statement right after lemma banish() is what we want to prove - all "wip" needs to replaced by something - blocks need to be finished with "qed;"

    From there it's using the available tools.

  • Vedor 4 hours ago
    Surprisingly interesting experience even for someone that does know nothing about writing proof - thanks to gradual onboarding and a decent help menu.

    Also, perfectly playable at mobile (at least a couple of first monsters).

    • heftig 3 hours ago
      I had the exact opposite experience. It doesn't teach the basics needed to even solve the first puzzle. Which language are we even writing in? Clicking help explains what exactly to do but not why, as well as lots of rules with unexplained terminology.
  • slicendice 2 hours ago
    Such a great idea!
  • wizzwizz4 3 hours ago
    The first and southwest-most sphinxes of seed 0 never load, which soft-locks the game. (Fortunately it doesn't corrupt the save-file.)

    Edit: after fighting enough other sphinxes, the first one loads, but the west-most fails with an explicit error message:

    > This challenge failed to load. Retreating.

    On the next floor, the sphinx over the exit stairs fails, preventing me from progressing.