Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 1 addition & 61 deletions MyIA.AI.Notebooks/SymbolicAI/Lean/Lean-7-LLM-Integration.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -1514,67 +1514,7 @@
"tags": []
},
"source": [
"### 6.4 Explications : Prompt Engineering pour Lean\n",
"\n",
"Le prompting efficace pour Lean necessite precision et structure. Voici les patterns cles :\n",
"\n",
"#### 1. Prompt initial : Contexte riche\n",
"\n",
"Un bon prompt initial inclut :\n",
"- **Imports disponibles** : Mathlib, tactiques standard\n",
"- **Variables et types** : `(a b : Nat)`, `(x : Real)`, etc.\n",
"- **Hypotheses** : Lemmes et faits déjà etablis\n",
"- **Théorème cible** : Formulation exacte\n",
"\n",
"**Exemple** :\n",
"```\n",
"Imports disponibles: Mathlib.Algebra.Ring.Basic\n",
"Variables: (a b c : Nat)\n",
"\n",
"Théorème:\n",
"theorem distrib_example (a b c : Nat) : a * (b + c) = a * b + a * c := by sorry\n",
"\n",
"Utilise les tactiques Mathlib appropriees.\n",
"```\n",
"\n",
"#### 2. Prompt de correction : Feedback cible\n",
"\n",
"Quand une preuve echoue, le prompt de correction doit :\n",
"- Montrer le code qui a echoue\n",
"- Inclure l'erreur Lean complète (ligne, message)\n",
"- Demander une correction SPÉCIFIQUE\n",
"\n",
"**Itération typique** :\n",
"1. LLM suggere `by rfl`\n",
"2. Lean repond `type mismatch`\n",
"3. Correction : `by omega` ou `by ring`\n",
"\n",
"#### 3. Few-shot learning : Exemples similaires\n",
"\n",
"Fournir 2-3 exemples de preuves similaires ameliore drastiquement les résultats :\n",
"\n",
"```\n",
"Exemple 1:\n",
"theorem add_comm (a b : Nat) : a + b = b + a := by\n",
" exact Nat.add_comm a b\n",
"\n",
"Exemple 2:\n",
"theorem mul_comm (a b : Nat) : a * b = b * a := by\n",
" exact Nat.mul_comm a b\n",
"\n",
"Maintenant prouvé:\n",
"theorem add_mul_comm (a b c : Nat) : (a + b) * c = a * c + b * c\n",
"```\n",
"\n",
"#### 4. Temperature et determinisme\n",
"\n",
"| Temperature | Comportement | Usage |\n",
"|-------------|--------------|-------|\n",
"| 0.0-0.3 | Déterministe, predictible | Preuves simples, tactiques standard |\n",
"| 0.4-0.7 | Creatif, exploratoire | Preuves complexes, stratégies nouvelles |\n",
"| 0.8-1.0 | Très creatif, variable | Brainstorming, exploration |\n",
"\n",
"Pour Lean, **temperature 0.2-0.4** est optimale : assez déterministe pour eviter les erreurs syntaxiques, assez flexible pour trouver des solutions elegantes."
"### 6.4 Explications : Prompt Engineering pour Lean\n\nLe prompting efficace pour Lean necessite precision et structure. Voici les patterns cles :\n\n#### 1. Prompt initial : Contexte riche\n\nUn bon prompt initial inclut :\n- **Imports disponibles** : Mathlib, tactiques standard\n- **Variables et types** : `(a b : Nat)`, `(x : Real)`, etc.\n- **Hypotheses** : Lemmes et faits déjà etablis\n- **Théorème cible** : Formulation exacte\n\n**Exemple** :\n```\nImports disponibles: Mathlib.Algebra.Ring.Basic\nVariables: (a b c : Nat)\n\nThéorème:\ntheorem distrib_example (a b c : Nat) : a * (b + c) = a * b + a * c := by sorry\n\nUtilise les tactiques Mathlib appropriees.\n```\n\n#### 2. Prompt de correction : Feedback cible\n\nQuand une preuve echoue, le prompt de correction doit :\n- Montrer le code qui a echoue\n- Inclure l'erreur Lean complète (ligne, message)\n- Demander une correction SPÉCIFIQUE\n\n**Itération typique** :\n1. LLM suggere `by rfl`\n2. Lean repond `type mismatch`\n3. Correction : `by omega` ou `by ring`\n\n#### 3. Few-shot learning : Exemples similaires\n\nFournir 2-3 exemples de preuves similaires ameliore drastiquement les résultats :\n\n```\nExemple 1:\ntheorem add_comm (a b : Nat) : a + b = b + a := by\n exact Nat.add_comm a b\n\nExemple 2:\ntheorem mul_comm (a b : Nat) : a * b = b * a := by\n exact Nat.mul_comm a b\n\nMaintenant prouve:\ntheorem add_mul_comm (a b c : Nat) : (a + b) * c = a * c + b * c\n```\n\n#### 4. Temperature et determinisme\n\n| Temperature | Comportement | Usage |\n|-------------|--------------|-------|\n| 0.0-0.3 | Déterministe, predictible | Preuves simples, tactiques standard |\n| 0.4-0.7 | Creatif, exploratoire | Preuves complexes, stratégies nouvelles |\n| 0.8-1.0 | Très creatif, variable | Brainstorming, exploration |\n\nPour Lean, **temperature 0.2-0.4** est optimale : assez déterministe pour eviter les erreurs syntaxiques, assez flexible pour trouver des solutions elegantes."
]
},
{
Expand Down
Loading