• Aucun résultat trouvé

INF 321 S´emantique des boucles et de la r´ecursion

N/A
N/A
Protected

Academic year: 2022

Partager "INF 321 S´emantique des boucles et de la r´ecursion"

Copied!
47
0
0

Texte intégral

(1)

INF 321

S´ emantique des boucles et de la r´ ecursion

Eric Goubault

Cours 7

24 juin 2013

(2)

Dans le dernier ´ episode...

On a vu:

Logique des pr´edicats du premier ordre JML

On va voir:

Retour sur la s´emantique des boucles et de la r´ecursivit´e En vue de d´eterminer un syst`eme de preuves pour les programmes (cours 8)

(3)

S´ emantique ´ el´ ementaire (rappel cours 1)

On avait ´et´e assez peu pr´ecis aux cours 1 et 2, pour simplifier...Reprenons...

Langage

Sorte de fragment imp´eratif de Java, sans les tableaux ni les r´ef´erences:

Var les variables, Val les valeurs, les environnements ρ∈Env

sontρ : Var→Val, codent les fonctions partielles de Var vers Val; par abus de notation, on d´efinit l’environnement ⊥ tel que⊥(x) =⊥pour toutx ∈Var

Expressions arithm´etiques AExpr, tests BExpr, affectation, test, boucle while

(4)

Rappel: s´ emantique ´ el´ ementaire, hors boucles

Expressions arithm´etiques

Poura∈AExpr, on d´efinit par r´ecurrence structurelle [[a]] : Env →Val par:

[[n]]ρ = n

[[v]]ρ = ρ(v)

[[a0+a1]]ρ = [[a0]]ρ+ [[a1]]ρ [[a0−a1]]ρ = [[a0]]ρ−[[a1]]ρ [[a0∗a1]]ρ = ([[a0]]ρ) ([[a1]]ρ) . . .

(l’addition etc. ici sont en fait les extensionsstrictes des additions sur Val, c-.`a-.d. que⊥+x =x+⊥=⊥etc.)

(5)

Exemple (rappel, cours 1)

Dans l’environnementρ o`u ρ(y) = 3:

[[3∗y+ 5]]ρ = [[3∗y]]ρ+ [[5]]ρ

= [[3∗y]]ρ+ 5

= ([[3]]ρ) ([[y]]ρ) + 5

= 3∗3 + 5

= 14 Ouf!

(6)

Rappel: s´ emantique ´ el´ ementaire, hors boucles

Expressions bool´eennes

Pourb ∈BExpr on d´efinit par r´ecurrence structurelle [[b]] : Env→ {true,false} par:

[[true]]ρ = true [[false]]ρ = false [[a0 ==a1]]ρ =

true si [[a0]]ρ= [[a1]]ρ6=⊥

⊥ si [[a0]]ρ=⊥ ou [[a1]]ρ=⊥ false sinon

[[a0 <a1]]ρ =

true si [[a0]]ρ <[[a1]]ρ

⊥ si [[a0]]ρ=⊥ ou [[a1]]ρ=⊥ false sinon

. . .

(7)

Rappel: s´ emantique ´ el´ ementaire, hors boucles

Affectation

Pourv ∈Var; e ∈AExpr, et ρ∈Env: [[v =e]]ρ=ρ[[[e]]ρ/v]

O`u, pouru,v ∈Var et n∈Val:

ρ[n/v](u) =

ρ(u) si u6=v n si u=v Conditionnelle

[[ifb p1 else p2]]ρ=

[[p1]]ρ si [[b]]ρ=true [[p2]]ρ si [[b]]ρ=false

⊥ si [[b]]ρ=⊥

(8)

Exemple (rappel, cours 1)

Interpr´etation d’une affectation simple

Consid´eronsx = 3∗y+ 5 dans l’environnement ρtel queρ(y) = 3 etρ(x) = 1, on obtient l’environnementσ avec

σ(u) =

ρ(u) = 3 si u =y

[[3∗y+ 5]]ρ= 14 si u =x

(9)

S´ emantique ´ el´ ementaire des boucles (rappel)

Valeur ind´efinie

Toutes les boucles ne terminent pas!

w h i l e (t r u e) { . . .

}

[[P]]ρ ne peut donc toujours renvoyer unσ ∈Env; seulement fonction partielle ou fonction totale `a valeur dans Env∪ {⊥}!

[[P]]ρ=⊥si P ne termine pas!

S´emantique par approximations finies des boucles Principe...: limite d’une suite [[Pn]] des it´er´ees ni`eme de la boucle...

(10)

S´ emantique des boucles

On devrait avoir...

Pour w = while b { c }, on doit avoir w ∼ifb thenc;w else skip

(skipest une instruction qui ne fait rien, [[skip]]ρ=ρ) Donc on doit avoir:

[[w]]ρ =

[[c;w]]ρ si [[b]]ρ=true [[skip]]ρ si [[b]]ρ=false

=

[[w]] ([[c]]ρ) si [[b]]ρ=true ρ si [[b]]ρ=false D´efinition circulaire!

(11)

Equation aux points fixes

Soit φune fonction partiellede Env vers Env - ou de fa¸con

´

equivalente une fonction totale de Env∪ {⊥}vers Env∪ {⊥}

(que l’on ´ecrit Env), et stricte (φ(⊥) =⊥)

Soit F la fonctionnellestricte envoyant φ: Env→Env vers un autre tel F(φ) : Env→Env:

F(φ)(ρ) =

φ([[c]]ρ) si [[b]]ρ=true ρ si [[b]]ρ=false

⊥ si [[b]]ρ=⊥

On veut φtel queφ=F(φ) point fixe! (en fait le plus petit en un certain sens...)

(12)

Sens de ce point fixe?

On n’a pas:

...de continuit´e et de support compact, de fonctions k-Lipschiptziennes et autres...

Mais on a:

...une structure partiellement ordonn´ee de fonctions partielles, et des th´eor`emes de points fixes pour ces structures!

(13)

Cadre g´ en´ eral

Ordres partiels

Couple (P,≤) d’un ensembleP et d’une relation binaire

≤⊆P×P telle que:

≤est r´eflexive: ∀p ∈P,p ≤p

≤est transitive: ∀p,q,r ∈P,p≤q & q ≤r =⇒ p ≤r

≤est anti-sym´etrique: ∀p,q∈P,p≤q & q ≤p =⇒ p=q Exemples

(R,≤) ; en plus on a x ≤y ouy ≤x pour toutx,y ∈R: ordretotal

(℘(S),⊆) : sous-ensembles d’un ensemble S, et inclusion

(14)

Dans les cas qui nous int´ eressent

Ordre sur Env

Pourρ∈Env, (cf. exos) ρ0 ∈Env,

ρ≤ρ0 si

ρ0(x) =ρ(x) ∀x t.q. ρ(x)6=⊥

(ρrestrictiondeρ0 `a un sous-domaine de Var; ouρ0 extensiondeρ)

x1 x2 x3 . . . xn Var ρ/ρ0

⊥ ⊥ ⊥

(15)

Majorants, minorants

Soit (P,≤) un ordre partiel PourX ⊆P:

p est un majorant deX si∀q∈X,q ≤p p est le plus petit majorant (sup) si:

pest un majorant deX

pour tous les majorantsqdeX,pq Le plus petit majorant, s’il existe, est not´e: S

X

De mˆeme (en renversant l’ordre), on d´efinit les minorants, et le plus grand des minorants (inf) s’il existe, que l’on noteT

X Un treillis est un ordre partiel ayant un sup et uninf pour tout X `a deux ´el´ements (et par r´ecurrence, pour tout ensemble fini non videX)

(16)

Sommes et produits?

inf de deux ´el´ements x

x∩y

y

z

si si

alors

Forme de produit! (et lesupest une forme de somme)

(17)

Exemples

Treillis

(R,≤) est un treillis (lesup de deux ´el´ements est leurmax, l’infest leur min)

(℘(S),⊆), lesup de deux ´el´ements (ensembles) est leur union ensembliste, l’infde deux ´el´ements (ensembles) est leur intersection ensembliste...d’o`u la notation...

Pas un treillis

(Env,≤) n’est pas un treillis! Par exemple: ρ et σ

uniquement d´efinis sur x∈Var,ρ(x) = 1,σ(x) = 2,ρ∪σ?, ρ∩σ?

1 2 3 4 . . .

(18)

Chaˆıne, compl´ etude

CPO

Une chaˆıne deP est p0 ≤p1 ≤. . .≤pn

Une ω-chaˆıne de P est p0 ≤p1≤. . .≤pn≤. . . (suite infinie d’´el´ements de P)

Un ordre partiel (P,≤) est un CPO (Complete Partial Order) si pour touteω-chaˆıne (pi)i∈NdeP, (pi)i∈Nadmet unsup pour

et si (P,≤) admet un plus petit ´el´ement encore not´e⊥, c-.`a-.d. ∀pP,⊥ ≤p

Un treillis est completsi tous ses sous-ensemblesX admettent un supet uninf (condition redondante...); en particulier, il admet toujours un plus petit ´el´ement: ⊥=S∅, et un plus grand ´el´ement: >=S

P

(19)

Exemples

(R,≤) n’est pas un treillis complet, ni un CPO, mais R∪ {−∞,∞}est un treillis complet (donc un CPO) (℘(S),⊆) est un treillis complet, avec ⊥=∅,>=S (Env,≤) est un CPO avec: pour toute ω-chaˆıne ρ0≤ρ1 ≤. . .≤ρn≤. . .on a

[

i∈N

ρi

! (x) =

ρj(x) si ∃j ∈N,ρj(x)6=⊥

⊥ sinon

“union de tous les supports” (la d´efinition est commune sur un support commun!)

(20)

CPO de fonctions

Lemme

Supposons queC est un CPO,Aest un ensemble. Alors CA (not´e aussiA→ C) l’ensemble des fonctions deAversC, muni de l’ordre: f ≤g si ∀a∈A,f(a)≤C g(a) est un CPO

Preuve

Soitf0 ≤f1 ≤. . .≤ uneω-chaˆıne dans CA, on note f:A→ C la fonction d´efinie par: pour touta∈A,f(a) =S

i∈Nfi(a) (raisonnable, car pour touta∈A,f0(a)≤f1(a)≤. . . est une ω-chaˆıne dans le CPO C). Alorsf≥fi pour touti et si on suppose que l’on ag :A→ C ≥fi pour touti, on en d´eduit:

pour touta∈A,g(a)≥fi(a), donc g(a)≥ [

i∈N

fi(a) =f(a)

(21)

Fonctionnelles

Croissance et continuit´e

Une fonctionF :D→E d’un CPO (D,v) vers un CPO (E,⊆) est croissante si ∀d,d0 ∈D, d vd0 ⇒F(d)⊆F(d0) F croissante est dite continue si pour toutes lesω-chaˆınes d0vd1 v. . .vdnv. . .deD, on a:

[

n∈N

F(dn) =F G

n∈N

dn

!

(22)

“Continuit´ e”?

Viens de l’analogie avec la topologie: l’ensemble des ouverts O(X) d’un espace topologique X forme pour le moins un CPO...

Une fonction continue f :X →Y induit une fonction

˜f :O(Y)→ O(X) par ˜f(OY) =f−1(OY)∈ O(X)

˜f est ainsi croissante, et continue, au sens des structures ordonn´ees!

Il existe des correspondances exactes entre structures

ordonn´ees et topologies (souvent non Hausdorff!) - au coeur de la dualit´e de Stoneet de lath´eorie des domaines

(fondement de la s´emantique d´enotationnelle de langages fonctionnels)

(23)

Dans le cas de Env

→ Env

Qu’est-ce qu’une fonction f :Env→Env croissante dans ce cas?

Siρ0 est une extension deρ,f(ρ0) est une extension def(ρ) Qu’est-ce qu’une fonction f :Env→Env continue dans ce cas?

f est croissante et pour touteω-chaˆıneρ0 ≤ρ1≤. . .≤ρn≤. . . on a, pour toutx∈Var:

S

i∈Nf(ρi)

(x) =

f(ρj)(x) ∃j ∈N,f(ρj)(x)6=⊥

⊥ sinon

= f S

iNρi

(x) = f

y →

ρj(y) ∃j ∈N,ρj(y)6=⊥

⊥ sinon

(x)

(24)

Domaine d’int´ erˆ et pour la s´ emantique

Ordre sur D=Env→Env fonctions continues Pourφ∈ D,ψ∈ D,φ≤ψ

si pour toutρ∈Env,φ(ρ)≤ψ(ρ)

c’est-`a-dire si pour toutρ∈Env,φ(ρ) est une restriction de ψ(ρ) `a un sous-domaine de Var

C’est un CPO (en partie par le lemme pr´ec´edent)

(deφ`a ψonaugmente l’information que l’on a - [[w]] va ˆetre dans D: s´emantique par approximations finies pour la boucle!)

(25)

Points fixes de fonctionnelles

Points fixes, pr´e-points fixes, post-points fixes

Soit f :D →D croissante pour un ordre partielD. Un point fixe def est un ´el´ementd deD tel que

f(d) =d

Un post-point fixe de f est un ´el´ement d deD tel que f(d)vd

Un pr´e-point fixe de f est un ´el´ementd deD tel que d vf(d)

(26)

Th´ eor` emes de point fixe

Tarski

Soitf :D →D une fonction croissante sur un treillis completD.

Alorsf admet au moins un point fixe. De plus, l’ensemble des points fixes def est un treillis complet, ainsi il existe toujours un unique plus petit point fixe, not´elfp(f) (“least fixed-point”) et un plus grand point fixe, not´e gfp(f) (“greatest fixed-point”)

Kleene

Soitf :D →D une fonction continue sur un CPOD (avec un plus petit ´el´ement⊥). Alors,

fix(f) = G

n∈N

fn(⊥)

est le plus petit point fixe def (qui existe ainsi!)

(27)

Tarski: preuve

On consid`erem=T

{x ∈D |f(x)≤D x}et M =S{x∈D|x ≤D f(x)}

On montre que mest le plus petit point fixe de f et queM est le plus grand point fixe de f.

Soit X ={x∈D|f(x)≤D x}. Soitx ∈X: on am≤D x, donc f(m)≤D f(x).

Mais f(x)≤D x parce-quex∈X. Donc f(m)≤D x pour tout x ∈X. Doncf(m)≤D m.

Ainsi f(f(m))≤D f(m), ce qui implique que f(m)∈X, et donc m≤D f(m).

Enfin, on conclut: f(m) =m.

Dernier argument: m est d´efini comme ´etant l’inf d’un ensemble contenant en particulier tous les points fixes def,m est non

(28)

Kleene: preuve

Par continuit´e de f:

f(fix(f)) = f F

n∈Nfn(⊥)

= F

n∈Nfn+1(⊥)

= F

n∈Nfn(⊥)

= fix(f)

Supposons qued est un point fixe def. On a⊥ ≤D d, donc f(⊥)≤D f(d) =d par croissance de f, et, par r´ecurrence, fn(⊥)≤D d. Ainsi fix(f)≤D d.

(29)

Revenons ` a l’interpr´ etation des boucles while

Interpr´etation des boucles - rappel Pourφ: Env→Env on avait d´efini:

F(φ)(ρ) =

φ([[c]]ρ) si [[b]]ρ=true ρ si [[b]]ρ=false

⊥ si [[b]]ρ=⊥

(30)

Continuit´ e de F !

Pour pouvoir appliquer Kleene...

Il faut prouver queF :D → D est continue, pour l’ordre surD Croissance d´ej`a...

Pourφ≤D ψ, on v´erifie queF(φ)≤DF(ψ); pour tout ρ∈Env, par exemple dans le cas [[b]]ρ=true:

F(φ)(ρ) = φ([[c]]ρ)

≤ ψ([[c]]ρ)

= F(ψ)(ρ)

(31)

Continuit´ e de F !

C’est-`a-dire...

Pour toute suiteφ0D. . ., et tout ρ∈Env: [

i

F(φi)(ρ) =F([

i

φi)(ρ)

Mais:

F(S

iφi)(ρ) =

 S

iφi([[c]]ρ) si [[b]]ρ=true ρ si [[b]]ρ=false

⊥ si [[b]]ρ=⊥

Le seul cas o`u il y ait `a prouver quelque chose est le premier ([[b]]ρ=true): trivial, car (S

iφi)σ=S

iiσ) par d´efinition de l’ordre (point `a point).

(32)

Interpr´ etation de Kleene pour la s´ emantique de while

Exactement la s´emantique par approximations finies!

Exemple, [[while (x<10) x=x+1]]. On identifie ρ∈Env avec ρ(x)∈Val car une seule variable! La fonctionnelleF est, pour Φ : Env→Env:

F(Φ)(ρ) =

Φ(ρ+ 1) si ρ <10

ρ si ρ≥10

⊥ si ρ=⊥ 1`ere it´eration

F1(ρ) =F(⊥)(ρ) =

⊥ si ρ <10 ρ si ρ≥10

⊥ si ρ=⊥

C’est ce que l’on obtient si on ne passe pas par le corps de boucle (on sort en 0 it´eration)

(33)

Exemple d’it´ eration

1`ere it´eration

F1(ρ) =F(⊥)(ρ) =

⊥ si ρ <10 ρ si ρ≥10

⊥ si ρ=⊥

10 20 F(ρ)

(34)

Exemple d’it´ eration

2i`eme it´eration

F2(ρ) =F(F1)(ρ) =

F1(ρ+ 1) si ρ <10

ρ si ρ≥10

⊥ si ρ=⊥

=





⊥ si ρ <9 10 si ρ= 9 ρ si ρ≥10

⊥ si ρ=⊥

C’est ce que l’on obtient si on passe z´ero ou une fois par le corps de boucle (on sort en 0 ou 1 it´eration)

(35)

Exemple d’it´ eration

2i`eme it´eration

F2(ρ) =F(F1)(ρ) =





⊥ si ρ <9 10 si ρ= 9 ρ si ρ≥10

⊥ si ρ=⊥

10 20 F(ρ)

(36)

Exemple d’it´ eration

(n+ 1)i`eme it´eration

Fn+1(ρ) =F(Fn)(ρ) =





⊥ siρ <10−n 10 siρ= 10−n, . . . ,9 ρ siρ≥10

⊥ siρ=⊥

C’est ce que l’on obtient si on passe de z´ero `an fois dans le corps de boucle... La limiteS

n∈NFn(⊥) contient tous les comportements possibles!

(37)

Exemple d’it´ eration

(n+ 1)i`eme it´eration

Fn+1(ρ) =F(Fn)(ρ) =





⊥ siρ <10−n 10 siρ= 10−n, . . . ,9 ρ siρ≥10

⊥ siρ=⊥

10 20 F(ρ)

(38)

Beaucoup de bruit pour rien?

Formalisation lourde?

pour la s´emantique (concr`ete) de while, un peu... mais propre...

th´eorie des points fixe dans les structures ordonn´ees d’application tr`es g´en´erale (cf. la suite)

et permet de donner une s´emantique des appels r´ecursifs de fa¸con ´el´ementaire et ´el´egante!

D´efinition de fonctions mutuellement r´ecursives On suppose que l’on autorise dans notre langage les d´efinitions r´ecursives de ce type par exemple:

f1 = c11;fi11;c21;fi21;. . .;fij11 f2 = c12;fi12;c22;fi22;. . .;fij22 . . .

fk = c1k;fi1k;c2k;fi2k;. . .;fijkk

o`u lescji sont des suites d’instructions, les fi sont des fonctions d´efinies mutuellement, qui agissent sur le mˆeme environnement

38

(39)

S´ emantique de fonctions mutuellement r´ ecursives

Exemple

Une partie du calcul de la fonction d’Ackerman: l’entr´ee est la variablep, le calcul de ackermann(n,p) se fait parackn(p), le r´esultat dans l’environnement est dans la variable q:

ack0 = (q =p+ 1)

ack1 = if (p==0) {p= 1;ack0}

else{p =p−1;ack1;p =q;ack0} ack2 = if (p==0) {p= 1;ack1}

else{p =p−1;ack2;p =q;ack1} . . .

(40)

S´ emantique de fonctions mutuellement r´ ecursives

S´emantique

En g´en´eral, on consid`ere k programmes “`a trous”

P1(f1, . . . ,fk), . . . ,Pk(f1, . . . ,fk) ´ecrit dans notre langage et on cherche [[f1]], . . . ,[[fk]] : Env→Env tels que (comme la s´emantique est compositionnelle):

[[f1]] = [[P1(f1, . . . ,fk)]] = [[P1]]([[f1]], . . . ,[[fk]]) . . .

[[fk]] = [[Pk(f1, . . . ,fk)]] = [[Pk]]([[f1]], . . . ,[[fk]]) Ce qui produit une fonctionnelle (continue!)

F :Dk → Dk

pour laquelle on applique le th´eor`eme de Kleene...

(41)

Remarques

Cas particulier...

La boucle while!

whileb {c } ∼ {f = if b then c; f else skip}

Continuit´e et calculabilit´e

Le fait de pouvoir interpr´eter des sch´emas r´ecursifs partiels g´en´eraux permet d’imaginer le paradigme:

Notre s´emantique ne donne que des fonctions/fonctionnelles continues

De fa¸con plus g´en´erale, credo: les fonctions calculables sont les fonctions continues... (calculables=limites

d’approximations finies!)

(42)

Rappel

Qu’est-ce qu’une fonction f :Env→Env croissante dans ce cas?

Siρ0 est une extension deρ,f(ρ0) est une extension def(ρ).

Qu’est-ce qu’une fonction f :Env→Env continue dans ce cas?

f est croissante et pour touteω-chaˆıneρ0 ≤ρ1≤. . .≤ρn≤. . . on a, pour toutx∈Var:

S

i∈Nf(ρi)

(x) =

f(ρj)(x) ∃j ∈N,f(ρj)(x)6=⊥

⊥ sinon

= f S

iNρi

(x) = f

y →

ρj(y) ∃j ∈N,ρj(y)6=⊥

⊥ sinon

(x) Continuit´e=on peut calculer par limite d’approximations finies; li´es aux sch´emas de d´efinition r´ecursifs!

(43)

Revenons ` a la s´ emantique des instructions...

Croissance de l’interpr´etation des expressions

S’agissant des expressions arithm´etiques a∈AExpr ou bool´eennes b∈BExpr:

[[a]] : Env→Val

[[b]] : Env→ {true,false}

sont croissantes, par r´ecurrence structurelle sur les expressions...: si σ est une extension deρ, [[a]]ρ est d´efinie (6=⊥) implique [[a]]σ d´efinie; de mˆeme pour [[b]].

En fait...

[[a]] et [[b]] sont continues! (un peu laborieux, par r´ecurrence structurelle...)

(44)

Revenons ` a la s´ emantique des instructions...

Croissance de l’interpr´etation de l’affectation Soitρ≤σ ∈Env, alors [[v =e]]ρ=ρ[[[e]]ρ/v] Et

[[v =e]]σ =σ[[[e]]σ/v] o`u, pouru,v ∈Var et n∈Val:

ρ[n/v](u) =

ρ(u) siu 6=v

n siu =v σ[n/v](u) =

σ(u) siu 6=v n siu =v croissance r´esultat de: ρ[n/v] restriction deσ[n/v] siρ restriction deσ, et [[e]]σ = [[e]]ρ quand [[e]]ρ6=⊥

En fait...

[[v =e]] est continue, trivialement. C’est en effet `a v´erifier pour chaque variableu: enu =v cons´equence de la continuit´e de [[e]] et enu6=v de par la continuit´e de l’identit´e

(45)

Revenons ` a la s´ emantique des instructions

Croissance de l’interpr´etation des tests

Par r´ecurrence sur les termes. Supposons que [[p1]], [[p2]] sont croissantes; on consid`ere le terme i ∼if b p1 else p2:

[[ifb p1 else p2]]ρ=

[[p1]]ρ si [[b]]ρ=true [[p2]]ρ si [[b]]ρ=false

⊥ si [[b]]ρ=⊥ Alors siρ≤ρ0:

[[b]]ρ d´efinie ´egale `atrue implique [[b]]ρ0 d´efinie ´egale `atrue dans ce cas [[i]]ρ0 = [[p1]]ρ0 et comme par r´ecurrence [[p1]] est croissante, [[p1]]ρ0 est une extension de [[p1]]ρ= [[i]]ρ

de mˆeme quand [[b]]ρ est d´efinie ´egale `afalse...

De mˆeme, continue... (´evident, s´eparer le cas [[b]]ρ=true de

(46)

C’est tout pour aujourd’hui...

La prochaine fois

Validation, preuve `a la Hoare Bon TD!

(47)

C’est tout pour aujourd’hui...

La prochaine fois

Validation, preuve `a la Hoare Bon TD!

Références

Documents relatifs

[r]

Par exemple, on suppose que les proies ne se reproduisent que dans un intervalle I ⊂

En d´ epit d’une unification des statuts visant ` a r´ epondre aux seuls int´ erˆ ets cat´ egoriels, la formation des professeurs de lyc´ ees et coll` eges a des n´ ecessit´ es

L’induction permet de prouver qu’un ´ enonc´ e est vrai pour tout n.. La r´ ecursion permet de d´ efinir une suite (pour

[r]

Pour chacune des valeurs propres, d´ eterminer un vecteur propre associ´ e.. b) D´ eterminer une matrice P et une matrice diagonale D telles que C = P

deviendra professeur l’ann´ee suivante (exception : lors de leur premi`ere ann´ee d’enseignement, les professeurs sont trop occup´es pour former un ´etudiant).. I Ann´ee 0 : il

En math´ ematiques, en informatique, en biologie, mais aussi dans notre quotidien, nous faisons souvent face ` a des situations o` u un probl` eme doit ˆ etre r´ esolu en utilisant