Je veux être capable de prouver une déclaration par induction sur n (de type nat). Il s'agit d'un conditionnel dont l'antécédent n'est vrai que pour n> = 2. Un conditionnel dont l'antécédent est faux est toujours vrai. Donc, je voudrais prouver les cas n = 0, n = 1 et n = 2 tous séparément de l'étape inductive principale. Est-il possible de faire une preuve par induction avec trois cas de base comme les suivantes:Preuve par induction avec trois cas de base (Isabelle)
lemma "P (n::nat) --> Q"
proof (induct n)
case 0
show ?case sorry
next
case 1
show ?case sorry
next
case 2
show ?case sorry
next
case (Suc n)
show ?case sorry
qed
En l'état actuel, cela ne semble pas fonctionner. Je pourrais prouver "P (n+2) --> Q"
par induction à la place, mais ce ne serait pas une déclaration aussi forte. Je considère un cas divisé en "n=0"
, "n=1"
et "n>=2"
, et ne prouvant que le dernier cas par induction.