Dedunat

Assistant de preuve minimaliste pour la déduction naturelle Documentation

Arbre de preuve

Buts

  • Rien à prouver.

Console

Symboles
Introductions
Éliminations
Autres
Affichage

Tab fait défiler les symboles → ∧ ∨ ¬ ⟂ ∀ ∃ ; ↑ ↓ parcourent l'historique. On peut aussi taper -> /\ \/ ~ _|_ \-/ -] |- ou \land \lor…

Documentation

Principe

Dedunat construit une preuve en déduction naturelle de bas en haut. On part du séquent à prouver, par exemple ⊢ (A ∧ B) → (B ∧ A), puis on applique des règles. Chaque règle remplace le but courant (encadré dans l'arbre, en tête de la liste des buts) par zéro, un ou plusieurs sous-buts. Quand il ne reste plus aucun but, la preuve est complète : Qed la valide. Elle reste alors affichée et exportable jusqu'à ce qu'on tape une nouvelle formule.

  1. Tapez une formule (ou Prove formule) dans la console, ou choisissez un exemple.
  2. Appliquez des règles avec les boutons ou en tapant les commandes ci-dessous.
  3. Undo annule la dernière étape ; Auto applique l'introduction évidente.
  4. Qed valide, puis Print, LaTeX ou Français exportent la preuve.

Écrire des formules

ConnecteurUnicodeASCIILaTeX
Implication→->\to
Conjonction∧/\\land
Disjonction∨\/\lor
Négation¬~\neg
Absurde⟂_|_\bot
Pour tout∀x. …\-/x. …\forall x. …
Il existe∃x. …-]x. …\exists x. …
Thèse (séquent)⊢|-\vdash

Règles

Γ désigne les hypothèses. Chaque schéma se lit de bas en haut : la commande transforme le but du bas en les sous-buts du haut. Les arguments en italique sont à fournir.

Autres commandes

axiomFerme le but Γ ⊢ A lorsque A est une hypothèse de Γ (à α-équivalence près).
autoApplique l'introduction du connecteur principal du but quand elle ne demande pas d'argument (→, ∧, ¬, ∀).
classicalTiers exclu : ferme un but de la forme A ∨ ¬A ou ¬A ∨ A.
peirceLoi de Peirce : ferme un but de la forme ((A → B) → A) → A.
assumeAdmet le but courant (noté ! dans l'arbre).
undoAnnule la dernière commande (y compris Qed).
qedValide la preuve quand il ne reste plus de but.
print, latex, frenchAffichent la preuve (en cours ou dernière validée) en texte, en LaTeX (paquet bussproofs) ou rédigée en français.
define R n formuleDéfinit le prédicat R d'arité n ; ses arguments sont notés V1, …, Vn dans la formule. Ex. : define Sym 1 ∀y. (R(V1, y) → R(y, V1)).
unrollRemplace dans le but courant les prédicats définis par leur définition.
help, help intro, help elim, help ∧…Aide en ligne dans la console.

Exemple

Preuve de (A ∧ B) → (B ∧ A) :

(A ∧ B) → (B ∧ A)     ⊢ (A ∧ B) → (B ∧ A)
intro →               A ∧ B ⊢ B ∧ A
intro ∧               deux buts : A ∧ B ⊢ B  et  A ∧ B ⊢ A
elim ∧ right A        A ∧ B ⊢ A ∧ B
axiom                 reste A ∧ B ⊢ A
elim ∧ left B         A ∧ B ⊢ A ∧ B
axiom                 plus de but
qed

Clavier

Limites

Les conditions sur les variables libres des règles ∀i et ∃e ne sont pas vérifiées : c'est à vous de choisir des variables fraîches.