From 95d290fb60fc74a75a9caf5d61ee195a4cc20027 Mon Sep 17 00:00:00 2001 From: oskar Date: Thu, 12 Feb 2026 16:35:33 +0100 Subject: [PATCH] device-127.home 2026-2-12:16:35:33 --- fonction récursive primitive.md | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/fonction récursive primitive.md b/fonction récursive primitive.md index 380bf303..e3e3e7a3 100644 --- a/fonction récursive primitive.md +++ b/fonction récursive primitive.md @@ -29,6 +29,7 @@ source: > > L'ensemble des **fonctions récursives primitives** est alors le plus petit des sous ensembles $E$ de $\mathscr{F}$ tel que : > - $E$ contient toutes les fonctions constantes de $\mathscr{F}$ +> - i On notera $C_{p}^{x}$ la fonction constante d'arité $p$ valant $x$ partout > - $E$ contient toutes les projections $P_{p}^{i}$ pour tous les entiers $p$ et $i$ avec $1 \leq i \leq p$ > - $E$ contient la fonction successeur $S$ > - $E$ est clos par composition, c'est-à-dire que si $n,p \in \mathbb{N}$ , si $f_1, f_2, \dots, f_{n}$ sont des fonctions de $\mathscr{F}_{p}$ qui sont aussi dans $E$, et si $g \in \mathscr{F}_{n}$ est aussi dans $E$, alors la fonction composée $g(f_1, f_2, \dots, f_{n})$ appartient à E @@ -86,6 +87,8 @@ Dans cette section, on démontre que quelques fonctions élémentaires sont réc > [!proposition]+ L'addition est récursive primitive > La fonction d'addition $\lambda x y. x + y$ est récursive primitive +> - dem $\operatorname{add} = \rho(P_1^{1}, S(P_3^{3}))$ +> > > [!démonstration]- Démonstration > > On peut la définir par : > > $\begin{cases} x+0 = x\\ x+ (y+1) = (x+y) +1 \end{cases}$ @@ -93,11 +96,34 @@ Dans cette section, on démontre que quelques fonctions élémentaires sont réc > > Plus formellement, l'addition peut être définie par $\rho(P_1^{1}, S(P_{3}^{3}))$ > > $\rho(\underbracket{P_1^{1}}_{\text{cas } x+0 = 0}, \underbracket{S(P_{3}^{3})}_{\text{cas }x+(y+1) = S(x+y)})$ > > +^addition > [!proposition]+ La multiplication est récursive primitives > $\operatorname{mult} =\lambda xy. x \times y$ est récursive primitive +> - dem $\operatorname{mult} = \rho(C_1^{0}, \operatorname{add}(P_3^{3}, P_{3}^{1}))$ +> > > [!démonstration]- Démonstration -> > $\operatorname{mult} = \rho(C_{0}, \operatorname{add}())$ +> > $\operatorname{mult} = \rho(C_1^{0}, \operatorname{add}(P_3^{3}, P_{3}^{1}))$ +> > Où $C_1^{0} = \lambda x. 0$ et $\operatorname{add}$ est la fonction d'addition définie plus haut +> > Comme on sait déjà que $\operatorname{add}$ est récursive primitive, il suit que $\operatorname{mult}$ l'est également +^multiplication +> [!proposition]+ La fonction puissance est récursive primitive +> $\operatorname{pow} = \lambda xy. x^{y}$ est récursive primitive +> - dem $\operatorname{pow} = \rho(C_{1}^{1}, \operatorname{mult}(P_{3}^{3}, P_3^{1}))$ +^puissance + +> [!proposition]+ La soustraction positive est récursive primitve +> On note $x \dot{-} y$ la soustraction avec un plancher à 0 : +> $x \dot{-} y = \begin{cases} x-y \text{ si } x \geq y\\ 0 \text{ sinon} \end{cases}$ +> La fonction $\lambda xy. x \dot{-} y$ est récursive primitive. +> +> > [!corollaire] Lemme : le précédent positif est récursif primitif +> > La fonction $\lambda x. x \dot{-} 1$ est récursive primitive +> > > [!démonstration]- Démonstration +> > > On peut définir $\lambda x. x \dot{-} 1$ comme $\rho(C_1^{0}, P_2^{1})$ +> > > Cela montre que cette fonction est bien récursive primitive +> +> > [!démonstration]- Démonstration # Exemples