• Aucun résultat trouvé

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai |faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ|x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

lettres chiffres

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai |faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ|x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai |faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ |x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai |faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ |x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai |faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ |x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai |faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ |x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai|faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ |x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai|faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ|x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai|faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ|x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai|faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ|x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Ensemble : collection d’´el´ements

I Types : ensembles disjoints d’´el´ements

I Diff´erents types

I vide (polymorphe)

I de base (ind´efinis)

I de pr´ed´efinis (ZZ)

I libres (´enum´erations, intervalles)bool ::=vrai|faux

I eclar´es

I extensionnat=b{0,1,2,3,4,5}

I compr´ehensionnat pair =b{x :ZZ|x 02x}

I ecursifnat::=zero|succhhnatii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : ´egalit´e, diff´erence

I ´el´ements/ensemble : d´eclaration de type, appartenance

I ensembles : intersection, union, produit cart´esien, diff´erence, cardinal, puissance...

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : ´egalit´e, diff´erence

I ´el´ements/ensemble : d´eclaration de type, appartenance

I ensembles : intersection, union, produit cart´esien, diff´erence, cardinal, puissance...

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : ´egalit´e, diff´erence

I ´el´ements/ensemble : d´eclaration de type, appartenance

I ensembles : intersection, union, produit cart´esien, diff´erence, cardinal, puissance...

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : ´egalit´e, diff´erence

I ´el´ements/ensemble : d´eclaration de type, appartenance

I ensembles : intersection, union, produit cart´esien, diff´erence, cardinal, puissance...

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : ´egalit´e, diff´erence

I ´el´ements/ensemble : d´eclaration de type, appartenance

I ensembles : intersection, union, produit cart´esien, diff´erence, cardinal, puissance...

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Toutes les variables sont typ´ees en Z.

I eclaration librex1a,x1b:T1; x2:T2; ...xn:Tn I eclaration contrainte

x:ZZ 0x

I port´ee de la d´eclaration (global, sch´ema, liaison)

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Toutes les variables sont typ´ees en Z.

I Diff´erents types

I vide∅,{}

I de base [PERSONNE] (global)

I de pr´ed´efinis (ZZ)

arbreBinaire::=FeuillehhEii |Noeud hharbreBinaire×arbreBinaireii

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : x/ S⇔ ¬(x S)

I ´el´ements/ensemble :

I ensembles :

S T (∀x:S xT)

IP S S IP T (∀xx SxT) S×T {x :S;y :T (x,y)}

ST {x :X |x S xT} avecS,T :IP X

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : x/S ⇔ ¬(x S)

I ´el´ements/ensemble :

I ensembles :

S T (∀x:S xT)

IP S S IP T (∀xx SxT) S×T {x :S;y :T (x,y)}

ST {x :X |x S xT} avecS,T :IP X

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : x/S ⇔ ¬(x S)

I ´el´ements/ensemble :

I ensembles :

S T (∀x:S xT)

IP S S IP T (∀xx SxT) S×T {x :S;y :T (x,y)}

ST {x :X |x S xT} avecS,T :IP X

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Op´erateurs

I ´el´ements : x/S ⇔ ¬(x S)

I ´el´ements/ensemble :

I ensembles :

S T (∀x:S xT)

IP S SIP T (∀xxSxT) S×T {x :S;y :T (x,y)}

ST {x :X |x S xT} avecS,T :IP X

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Propri´et´es

appartient ∀x •x ∈ {x}

vide ¬ ∃x •x∈ {}

extension (S =T)⇔(∀x•x∈S ⇔x ∈T) pr´edicat x ∈ {y :S |P(y)} ⇔(x ∈S ∧P(x))

motif x ∈ {y:S •t(y)} ⇔(∃y •y ∈S ∧x =t(y))

I Preuve⇒ logique

++ D´etails : [AV01], chapitre 2, section 5

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Propri´et´es

appartient ∀x •x ∈ {x}

vide ¬ ∃x •x∈ {}

extension (S =T)⇔(∀x•x∈S ⇔x ∈T) pr´edicat x ∈ {y :S |P(y)} ⇔(x ∈S ∧P(x))

motif x ∈ {y:S •t(y)} ⇔(∃y •y ∈S ∧x =t(y))

I Preuve⇒ logique

++ D´etails : [AV01], chapitre 2, section 5

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Les types et les ensembles

I Propri´et´es

appartient ∀x •x ∈ {x}

vide ¬ ∃x •x∈ {}

extension (S =T)⇔(∀x•x∈S ⇔x ∈T) pr´edicat x ∈ {y :S |P(y)} ⇔(x ∈S ∧P(x))

motif x ∈ {y:S •t(y)} ⇔(∃y •y ∈S ∧x =t(y))

I Preuve⇒ logique

++ D´etails : [AV01], chapitre 2, section 5

Introduction Bases Relations Sch´emas Processus Merise et Z Bilan

Les types et les ensembles

Documents relatifs