• Aucun résultat trouvé

Good functors... are those preserving philosophy !

N/A
N/A
Protected

Academic year: 2022

Partager "Good functors... are those preserving philosophy !"

Copied!
16
0
0

Texte intégral

(1)

D IAGRAMMES

G

ILLES

B

ERNOT

Good functors... are those preserving philosophy !

Diagrammes, tome 22 (1989), p. 15-29

<http://www.numdam.org/item?id=DIA_1989__22__15_0>

© Université Paris 7, UER math., 1989, tous droits réservés.

L’accès aux archives de la revue « Diagrammes » implique l’accord avec les conditions gé- nérales d’utilisation (http://www.numdam.org/conditions). Toute utilisation commerciale ou impres- sion systématique est constitutive d’une infraction pénale. Toute copie ou impression de ce fi- chier doit contenir la présente mention de copyright.

(2)

D I A Q R A M M E S V O L U M E 2 2 A C T E S D E S J O U R N E E S E . L . I . T .

< U M I V . P A R I S -7. 2 7 J U I N - 2 J U I L L E T 1 9 6 8 )

GOOD FUNCTORS ... ARE THOSE PRESERVING PHILOSOPHY !

Gilles BERNOT L.I.E.N.S.

U.R.A. C.N.R.S. 1327 Ecole Normale Supérieure

45 Rue d'Ulm 75230 Paris Cedex 05

FRANCE Abstract :

Le but de cet article est de mettre en garde le chercheur en types abstraits algébriques contre une utilisation abusive de la théorie des catégories. Quelques propriétés peu souhaitables du (pourtant classique) fondeur de synthèse sont décrites, spécialement si l'on s'intéresse aux sémantiques dites "loose". Tous les résultats énoncés ici sont particulièrement simples, sinon triviaux ; néanmoins, ils illustrent des faits donnant lieu à de nombreuses erreurs dans le cadre des types abstraits algébriques. Ces erreurs résultent souvent d'une inadéquation entre certains outils catégoriques bien connus et le concept informatique que l'on souhaite modéliser.

Enfin, une approche hiérarchique fondée sur la catégorie des modèles " protégeant les sortes prédéfinies" est proposée, et les premières propriétés en sont dégagées.

Mots clés : complétude, consistance, modèle initial, spécifications abstraites, spécifications structurées, théorie des catégories, types abstraits algébriques.

1. Introduction

In the following pages, we focus our attention on results which seem to be 44trivially ensured" in the basic abstract data type framework. We sometimes give proofs ... often counter-examples of such results. In order to get striking counter-examples, we provide very simple ones, if not trivial (mainly based on elementary algebraic properties of

Déjà paru dans les Proc. de "Category Theory and Computer Science**, LNCS 283, 1987.

(3)

natural numbers). Nevertheless, many common errors, or misinterpretations found in the abstract data type littérature resuit from similar mechanisms. This emphasizes the fact that category theory should be carefully used in the abstract data type field, includ- ing for (very) low level concepts.

More provocatively: this paper mainly points out the fact that the synthesis functor F of abstract data types "does not préserve philosophy." However, since about teen years [ADJ 76], it is well known that this functor is crucial for defining a hierarchical, modu- lar approach of abstract spécifications!

Some elementary reminders about abstract data types are given in the next section (Sec- tion 2). Section 3 discusses about the well known forgetful and synthesis functors, U and F, associated with a hierarchical approach. Section 4 shows the difficulty of prop- erly defining sufficient completeness and hierarchical consistency with loose semantics.

In Section 5, we show what happens when combining enrichments. Lastly, Section 6 discusses about a loose semantics obtained by "protecting" predefined sorts.

The following discussions are mainly centered on pairs [positive fact / proof] (respec- tively: [négative fact / counter-example]).

2. Elementary reminders

Let us begin with basic définitions and properties [ADJ 76]:

Given a signature Z (i.e. a finite set S of sorts and a finite set Z of operation-nzmts with arity in S), a Z-algebra, A, is a heterogeneous set partitioned as { As } ^s , and for each operation-name op: sx • • • ^i—>sn of Z there is an opération opA\ Asx • • • xA^-ïAs^ . A H-morphism from A to S is a sort-preser/ing, operation- preserving application from A to S. This defines a category, denoted by Alg(Z) ; it has an initial object: the ground-term algebra Tz .

In the following, a spécification SPEC will be defined by a signature Z and a finite set E of positive conditional équations of the form:

Vj^Wi A • • * A vlt_1=wll_1 => v„=wn

where v,- and w,- are Z-terms with variables,

Given a spécification SPEC, Alg(SPEC) is the fiill sub-category of Alg(Z) whose objects are the Z-algebras which validate each axiom of E. The category Alg(SPEC) has an initial object, denoted by rSPEC [BPW 82].

Since rSPEC exists, Gen(SPEC) can be defined as the fiill sub-category of Alg(SPEC) such that the initial morphism is an epimorphism (i.e. is surjective, in our framework).

Gen(SPEC) is the category of ûitfinitely generated algebras. Our first "fact" will be devoted to the following remarie:

It is well known that Gen(SPEC) is a particularly interesting category for the abstract

(4)

data type computer scientist; nevertheless, this is not exactly due to its large spectrum of morphisms, as reminded below.

Fact 1 : Morphisms from a finitely generated algebra

Let T be an object of Gen(SPEC) and A an object of Alg(SPEC). The set HomMg(s?EC)(TA) contains at most one élément. Consequently, for ail objects X and Y of Gen(SPEC), #0WGen(SPEC)(X,ïO contains at most one morphism.

Proof :

By initiality properties, if there exists a morphism jx, then the following triangle commutes:

(For printing facilities, our triangles will become squares!) r -\L-> A

T T initial initial morphism morphism

I I

^SPEC = = = = = = = ^SPEC

Thus, the unicity of \i results from the suijectivity of the initial morphism associated with T. •

One of the most important aspect of abstract data types is its structured, hierarchical, modular approach. This is obtained by means of présentations. A présentation PRES over SPEC is a new "part of spécification" PRES=<S\Z\E'> such that the disjoint union SPEC+PRES=<SuS',ZuZ,,EuE,> is a spécification. Sorts and opérations of SPEC are often called the predefined sorts and opérations. Relations between the catégories Alg(SPEC) and Alg(SPEC+PRES) are handled by the well known forgetful functor and synthesis functor:

(U: Alg(SPEC+PRES)-»Alg(SPEQ) and (F: Alg(SPEC)->Alg(SPEC+PRES)).

The functor F is a left adjoint for the functor U. Consequently, for each SPEC-algebra A, there is a particular morphism from A to U(F(A)) : the morphism deduced from the adjunction unit (or adjunction morphism). This morphism is absolutely crucial for the hierarchical approach: it allows to evaluate the modifications performed on A under the action of PRES.

Example 0 :

If A is equal to N over the signature \0jucc_) (without axioms) and if PRES adds pred_ with the axioms [pred(succ(n))=succ(pred(n))=n] , then U(FÇS)) is iso-

morphic to Z. The unit of adjunction leads to the natural inclusion; and this mor- phism permits to show that N has been modified by adding négative values.

(5)

If the axioms were [pred(succ(n))=n and pred(0)=0], then the unit of adjunction leads to the identity over N showing that this second spécification of pred does not change N.

3. Forgetful and synthesis functors

We first présent a rather obvious reminder about the forgetful functor. Let B be a SPEC+PRES-algebra. The forgetful functor removes ail subsets Bs where seS\ and ail opérations of Z' are forgotten (including those with arity in S only), but it does not remove any value of predefined son. U(BS)=BS for each seS. For instance, in Exam- ple 0, tf(Z)=Z*N.

Let us remind the classical définition of the synthesis functor (although classical, this définition is the starting point of some misinterpretations!): Let A be a SPEC-algebra and let 7£+r(A) be the algebra of Z+Z'-terms with variables in A\ we dénote by eval: UÇT^+Z^-ÏA the canonical évaluation morphism. F(A) is the quotient of TZ+Z>(A) by the smallest congruence containing both the fibers of eval and the close instancia- tions of E + E \

Because E+E' is required in the définition of F (instead of E ' alone), F(A) does not only dépend on A and PRES ; it also dépends on SPEC.

Fact 2 :

Given a présentation PRES, the action of the synthesis functor F over a given, fixed algebra A is highly dépendent of the predefined spécification.

As outlined in the following example, this fact considerably restricts the possibility of writing "implementation independent" spécifications (see for instance [EKMP 80], [SW 82], or [BBC 86a] about abstract implementations).

Example 1 :

Let SPEC be a classical spécification of NAT with opérations 0, succ_ and _+_ : x + 0 = x

x + succ(y) = succ(x+y)

Let S P E C be the spécification obtained by adding the following axiom to SPEC : x + y = x + z => y - z

The spécifications SPEC and S P E C hâve clearly the same initial object: N . In fact, they hâve the same finitely generated algebras because the previous axiom can be proved from SPEC via structural induction.

Let PRES be the présentation adding no sort, adding the opération _x_, and adding the axioms:

(6)

x x succ(O) = x (1 is neutral)

x x succ(y) = x + (x x y) (recursive définition)

When PRES is shown as a présentation over SPEC, F(N) is a model where ail terms containing a multiplication by 0 cannot be evaluated. When PRES is shown as a présentation over SPEC, F(N) is isomorphic to N, because:

jc + 0 = x = x x succ(O) = x + (x x 0 ) and the simplification axiom of SPEC leads to 0 = xxO .

Notice that, in spite of the fact that SPEC and SPEC hâve the same finitely gen- erated models and the same initial algebra, the présentation PRES is not completely specified over the first spécification, but is completely specified over the second one.

4. Consistency and completeness

The subject of this section is an examination of some a priori possible définitions of the notions of sufficient completeness and hierarchical consistency with loose semantics.

We start with the most loose semantics: the entire category Alg(SPEC). We will show that the simplest définitions are unacceptable for abstract spécification purposes.

Ail the counter-examples provided in this section are based on the following specification+presentation example. Hopefully, we believe that this counter-example cannot be suspected to be too much unusual, complicated or ad hoc.

Example 2 :

Let SPEC be a spécification of natural numbers (for instance the spécification given in Example 1) together with a sort BOOL and boolean opérations True and False.

We consider the présentation PRES enriching SPEC by an equality predicate eq? : eq?(0,0) = True

eq?(Ofsucc(n)) = False eq?(succ(m)f0) = False eq?(succ(m)tsucc(n)) = eq?(mfn)

Looking at this présentation PRES, we can affirm that a "good notion" of sufficient completeness (resp. hierarchical consistency) should be satisfied by PRES. This exam- ple is simply written by taking into account each possible value for the arguments of eq?, with respect to the constructors of SPEC, moreover there are no axioms between constructors (fair présentation [Bid 82]).

We may of course imagine more sophisticated présentation examples, in particular examples which add new sorts to SPEC. But our goal is simply to prevent the abstract data type researcher from using a naive, rather unrealistic définition of sufficient

(7)

completeness or hierarchical consistency.

4.1. Sufficient completeness

In the initial approach, sufficient completeness is defined as follows [Gau 78].

"The adjunction morphism associated with the initial algebra is surjective:"

^SPEC ~> U(F(TS?EC))

This condition exactly means that PRES does not add new values to rSPEC . Remind that /7(7'SPEC)=7SPEC+PRES » ^u e t 0 adjunction properties.

Fact 3 :

The following définition of sufficient completeness is not suitable in the gênerai case:

4'PRES is sufficiently complète if and only if for ail algebras in Alg(SPEC) the adjunction morphism is surjective".

Using Example 2, we convince ourselves of this fact by considering the SPEC-algebra obtained by two copies of N. This algebra, (Nx{0,l} and {TrueJFalse}) , is not finitely generated, but is an object of Alg(SPEC) by sending the operation-name 0 over the élé- ment (0,0) , and succ((n,a))=(succ(n),a). Terms of the form eq?((n,0),(m,l)) cannot be evaluated using the PRES axioms of Example 2. Consequently, they add new boolean values, and the adjunction morphism is not surjective.

Fact 4 :

The following two définitions of sufficient completeness are logically équivalent:

1) the adjunction morphism associated with the initial algebra TSPEC is surjective 2) for ail algebras in Gen(SPEC) the adjunction morphism is surjective.

Proof :

[2=£>1] is trivial because the initial algebra is finitely generated.

[1=£>2] : let A be a finitely generated SPEC-algebra. By construction of F, F(A) is finitely generated over the signature of SPEC+PRES. Consequently, the image of the initial morphism via the forgetful functor is surjective:

u(initAy. t/(F(rSpEC))=f/(rSpEC+PRES) -> u(F(A)) Our conclusion results from the commutativity of the following diagram:

(8)

A -adjunction-» U(F(A))

T T surjective surjective

I I

?SPEC -surjective-» ^(^SPEC+PRES)

Restricting ourselves to finitely generated algebras has several disadvantages. For instance, parameterized présentations require a non finitely generated semantics [ADJ 80].

4.2. Hierarchical consistency

In the initial approach, hierarchical consistency is defined as follows:

"the adjunction morphism associated with the initial algebra is a monomorphism"

(i.e. is injective in our framework).

Fact 5 :

The following définition of hierarchical consistency is not suitable in the gênerai case:

"PRES is hierarchically consistent if and only if for ail algebras in Alg(SPEC) the adjunction morphism is injective".

Let us return to Example 2. If we consider the SPEC-algebra Z (which is a non finitely generated algebra), we get the following inconsistency:

True = eq?(0t0) = eq?(0jucc(-l)) = False

Restricting hierarchical consistency checks to finitely generated algebras does not yield better results:

Fact 6 :

The following définition of hierarchical consistency is not suitable in the gênerai case:

"PRES is hierarchically consistent if and only if for ail algebras in Gen(SPEC) the adjunction morphism is injective".

Using Example 2 again, we consider a finitely generated algebra of the form , and nL we get the following inconsistency:

True = eq?(0fl) = eq?(0tn) = eq?(Otsucc(n-l)) = False

(9)

Thèse facts prove that "defining sufficient completeness on Alg(SPEC)" , "defining hierarchical consistency on Alg(SPEC)" or "defining hierarchical consistency on Gen(SPEC)" are too strong requirements. Extension from the purely initial semantics to a loose semantics must be done more carefully.

5. Combining présentations

In the remainder of this paper, we simply follow the définitions of sufficient complete- ness and hierarchical consistency given at the beginning of sections 4.1 and 4.2 (i.e. the initial approach). Given a spécification SPEC, we consider two présentations PRES!

and PRES2 with disjoint signatures.

Let PRES be the union of P R E S Î and PRES2 , we care about the sufficient complete- ness and hierarchical consistency of PRES. In spite of the strong hypothesis described hère, we hâve sometimes to be careful, as detailed in the following two subsections.

5.1. Sufficient completeness Fact 7 :

If PRESi and PRES2 are both sufficiently complète over SPEC, then PRES=PRES1+PRES2 remain sufficiendy complète. Moreover, under the same hypothesis, PRES2 is sufficiently complète over SPEC+PRES^

Proof : (using elementary tools)

7SPEC+PRES!+PRES2 *s *e quotient of 7^+^+^ by the smallest congruence containing the close instanciations of the SPEC+PRES !+PRES2 axioms [BPW 82]. Conse- quently, it suffices to prove that each Z-fZ1+Z2-ground-term of sort in S (resp. in S+S^ belongs to the équivalence class of a Z-term (resp. Z+Zrterm). This can be trivially proved via structural induction. •

Obviously, the converse is false: the sufficient completeness of PRES does not imply the sufficient completeness of PRES! or PRES2 .

5.2. Hierarchical consistency Fact 8 :

The hierarchical consistency of PRES! and PRES2 over SPEC does not imply the hierarchical consistency of PRES=PRES!+PRES2 over SPEC.

Example 3 :

Let SPEC be a spécification of natural numbers. Let PRES! be the présentation

(10)

simply containing the following axiom:

succ(n) = 0 => n = 0

PRES! is clearly consistent (in fact, the premise cannot be satisfied in the initial object, thus this axiom is never applied). Let PRES2 be the présentation adding the opération pred_ with [pred(succ(n))=succ(pred(n))=n] . PRES2 is clearly hierarchi- cally consistent over natural numbers (even though it is not sufficiently complète).

The union PRES=PRES!+PRES2 is not hierarchically consistent because from succ(pred(0))=0 we get:

0=pred(0) , which leads to succ(0)=succ(pred(0))=0 Another example of the same fact is the following:

Example 4 :

Let PRES! be the présentation described in Example 2 (adding equality predicate to natural numbers), and let PRES2 be the same présentation as Example 3 before

fqHHmcr nr/7/A POT7Ç and PPT?Ç ar& H o o r l ^ Vnororr'hir'nlly ^ ^ " ^ Î ^ Î C n î 0""Cr TlCïtUm.1

numbers, but the union PRES=PRES1+PRES2 is not hierarchically consistent because:

True = eq?(0,0) = eq?(Ojucc(pred(0))) = False

(a similar example was first presented in [EKP 80], for abstract implementation pur- poses).

Fact 9 :

If PRES=PRES!+PRES2 is hierarchically consistent over SPEC , then PRES! and PRES2 are hierarchically consistent over SPEC.

Proof :

Assume that PRES! is not consistent: the morphism from TS?£C to £ATSPEC+PRESl) is not injective. Since the following diagram commutes, the adjunction morphism from rS P E C to TSPEC+PRESl+PREs2 is not injective:

^lCTsPEC+PRESi) ~* ÉATsPEC+PRES^PRES^

T T

PRES! PRES!+PRES2

adjunction morphism adjunction morphism

I I

^ S P E C = ^SPEC

SPEC+PRES^.

It results that PRES is not hierarchically consistent over SPEC. •

(11)

Fact 10 :

If PRES! and PRES2 are both hierarchically consistent and sufficiently complète over SPEC, then PRES=PRES1+PRES2 too. Moreover, under the same hypothesis, PRES2 is hierarchically consistent and sufficiently complète over SPEC+PRESi.

(This fact is well known; a démonstration with conditional axioms, including exception handling, can be found in [Ber 86]).

6. Loose semantics with "Protect"

Clearly, abstract spécifications do not necessarily directly lead to exécutable spécifications. It is often convenient to specify some opérations via "universal proper- ties." For instance the subtraction can be specified via:

z -y = x <=> x + y = z

Sometimes, such axioms may lead to uncompletely specified présentations, as in the fol- lowing example.

Example 5 :

Let SPEC be an initial spécification of integers with opérations 0, succ_, pred_, _+_, _-_ and _x_ . Let us specify a présentation PRES adding the opération jdiv_

as follows:

0 < (a - (b x (a div b))) = True (a- (bx (a div b))) < b = True

Thèse axioms characterize (a div b) among ail integers finitely generated with respect to suce and pred. However, in the initial model ?SPEC+PRES , the term (a div b) is not reached by suce and pred . Its value is only a unreachable value such that the (unreachable) remainder (a- (b x (a div b))) retums the specified boolean values when compared with 0 and b .

Consequently, this présentation is uncompletely specified according to the usual définition of sufficient completeness.

In such examples, the only interesting models are those which do not modify the predefined initial model (Z). This leads to a Ooose) semantics where models are those protecting predefined sorts [Kam 80]. Indeed, when writing relatively large

spécifications, this semantics seems to be highly suitable (ASL [Wir 82] [SW 83], PLUSS [Gau 84], OBJ [FGJM 85], LARCH [GH 83] ... ).

Let us define the associated category:

(12)

Définition : The "Protecf category

Let SPEC be a spécification and let PRES be a présentation over SPEC. The category of VRES-models protecting SPEC is the full subcategory of Alg(SPEC+PRES) whose objects are the SPEC+PRES-algebras A such that U(A) is isomorphic to the initial predefined algebra rSPEC . We dénote this category by Pro(SPECPRES) .

Notice that the object class of Pro(SPEC,PRES) can be empty.

Fact 11 :

If Pro(SPECPRES) is not an empty category, then PRES is hierarchically con- sistent over SPEC.

(Hère, consistency is defined with respect to the initial algebra TsPEC only) Proof :

If ^SPEC+PRES is inconsistent over TSPEC, then a fortiori ail SPEC+PRES-algebras are inconsistent over 7*SPEC (because 7SPEC+PRES *S minimal). •

Fact 12 :

Even if PRES is consistent over SPEC, Pro(SPEC,PRES) may be empty.

Example 6 :

Let SPEC be the boolean spécification with True and False. Let PRES be a spécification of SET(BOOL) with 0 , insert, e and choose :

True e 0 = False False € 0 = False b e insert(b'JC) = b=b* or 6e X

choose(X) G X = True

This spécification is clearly hierarchically consistent (even though it is not sufficiently complète). However, the Protect category is empty, because the term choose(0) can neither be equal to True nor to False (both choices induce True=False).

(Fortunately, this example can be easily specified without inconsistency using abstract data types with exception handling [Bid 84] [GDLE 84] [BBC 86b]

[Ber 86], or with partial fonctions [BW 82].) Fact 13 :

Even if Pro(SPEC.PRES) contains models, it has not necessarily an initial object.

(13)

Example 7 :

Let SPEC be the boolean spécification with True and False. Let PRES be the présentation adding the constant opération maybe, without any axiom.

Pro(SPECPRES) contains two models, no one is initial.

Fact 14 :

If PRES is sufficiently complète over SPEC, then either Pro(SPEC,PRES) has an initial object, either it is empty.

Proof :

If PRES is consistent, then the initial model rSPEC+PRES belongs to Pro(SPECPRES); it is then necessarily initial in Pro(SPEC,PRES). If PRES is not hierarchically consistent, then Fact 11 implies that Pro(SPEC.PRES) has no object. D

Fact 15 :

There are présentations PRES which are not sufficiendy complète over SPEC, such that Pro(SPEC,PRES) is not empty and has an initial object.

It suffices to refer to Example 5, where the axioms characterize div by a "universal pro- perty among integers." The division is incompletely specified according to classical initial définition of sufficient completeness, but Pro(SPEC,PRES) only contains one model (Z) which is necessarily initial.

7. Conclusion

We hâve investigated how a hierarchical approach of abstract data types, with the notions of hierarchical consistency and sufficient completeness, could be defined when dealing with so-called loose semantics. The results shown in sections 2 to 5 seem to be somewhat pessimistic:

• The synthesis functor is "implementation dépendent" with respect to the predefined spécification (Fact 2).

• Sufficient completeness cannot be checked on ail models (Fact 3).

• Hierarchical consistency cannot be checked on ail models (Fact 5).

• Hierarchical consistency cannot be checked on ail finitely generated models, a smaller class of models must be investigated (Fact 6).

• Combining hierarchically consistent présentations does not resuit on a hierarchi- cally consistent présentation (Fact 8).

(14)

However, we showed some positive results:

• Checking sufficient completeness on ail finitely generated algebras is équivalent to check it on the initial algebra only (Fact 4).

• Combining sufficiently complète présentations results on sufficiently complète présentations (Fact 7); the same occurs for présentations that are both sufficiently complète and hierarchically consistent (Fact 10).

In the last section (Section 6), we defined the category of models protecting predefined sorts. We hâve investigated the relations between the classical notions of completeness/consistency and the elementary properties of this category:

• The category is empty if the présentation is not hierarchically consistent, but the converse is false (Facts 11 & 12).

• The category has not necessarily initial models (Fact 13).

It has initial models if the présentation is sufficiendy complète and hierarchically consistent, but the converse is false (Facts 14 & 15).

In conclusion: From facts 2, 3, 5, 6 and 8, we showed that the synthesis functor of clas- sical abstract data types "does not always préserve philosophy" when dealing with loose semantics. Moreover, with a loose semantics based on protection of predefined sorts, the corresponding category has few systematic relations with sufficient complete- ness or hierarchical consistency (facts 11 to 15).

Acknowledgements :

It is a pleasure to express gratitude to Michel Bidoit, Christine Choppy and Marie- Claude Gaudel for encouragements to write this paper and carefiil proof readings.

The tide was suggested by Stéphane Kaplan.

(15)

8. Références

[ADJ 76] Goguen J., Thatcher J., Wagner E. : "An initial algebra approach to the spécification, correctness, and implementation of abstract data types", Current Trends in Programming Methodology, Vol.4, Yeh Ed.

Prentice Hall, 1978. Also : IBM Report RC 6487, Oct. 1976.

[ADJ 80] Ehrig H., Kreowski H., Thatcher J., Wagner J., Wright J. :

"Parameterized data types in algebraic spécification langages", Proc.

7th ICALP, July 1980.

[BBC 86.a] Bernot G., Bidoit M., Choppy C. : "Abstract implementations and correctness proofs", Proc. 3rd STACS, January 1986, Springer-Verlag LNCS 210, January 1986. Also : LRI Report 250, Orsay, Dec. 1985.

[BBC 86b] G. Bernot, M. Bidoit, C. Choppy : "Abstract data types with excep- tion handling : an initial approach based on a distinction between ex- ceptions and errors", Theoretical Computer Science, Vol. 46, n° 1, p. 13-45, November 1986.

[Ber 86] Bernot G. : "Une sémantique algébrique pour une spécification différenciée des exceptions et des erreurs : application à lf implementation et aux primitives de structuration des spécifications formelles", Thèse de troisième cycle, LRI, Université de Paris-Sud, Or-

say, Février 1986.

[Bid 82] Bidoit M. : "Algebraic data types: structured spécifications and fair présentations", Ptoc. AFCET Symposium on Mathematics for Comput- er Science, Paris, March 1982.

[Bid 84] Bidoit M. : "Algebraic spécification of exception handling by means of déclarations and équations", Proc. llth ICALP, Springer-Verlag LNCS 172, July 1984.

[BPW 82] Broy M., Pair C , Wirsing M. : "A systematic study of models of abstract data types", Theoretical Computer Sciences, p. 139-174, vol.

33, October 1984.

[BW 82] Broy M., Wirsing M. : "Partial abstract data types", Acta Informati- ca, Vol.18-1, Nov, 1982.

[EKMP 80] Ehrig H., Kreowski H., Mahr B., Padawitz P. : "Algebraic imple- mentation of abstract data types", Theoretical Computer Science, Oct. 1980.

[EKP 80] Ehrig H., Kreowski H., Padawitz P. : "Algebraic implementation of abstract data types: concept, syntax, semantics and correctness", Proc.

ICALP, Springer-Verlag LNCS 85, 1980.

(16)

[FGJM 85] Futatsugi K., Goguen J., Jouannaud J-P., Meseguer J. : "Principles of OBJ2", Proc. 12th ACM Symp. on Principle of Programming Languages, New Orléans, January 1985.

[Gau 78] Gaudel M-C. : "Spécifications incomplètes mais suffisantes de la représentation des types abstraits", Laboria Report 320, 1978.

[Gau 84] Gaudel M-C. : "A first introduction to PLUSS", LRI Report, Orsay, December 1984.

[GDLE 84] Gogolla M., Drosten K., Lipeck LL, Ehrich H.D. : "Algebraic and operational semantics of spécifications allowing exceptions and er- rors", Theoretical Computer Science 34, North Holland, 1984.

[GH 83] Guttag J.V., Horning JJ. : "An introduction to the LARCH shared language", Proc. IFIP 83, REA Mason éd., North Holland Publishing Company, 1983.

[Kam 80] Kamin S. : 4 'Final data type spécifications : a new data type spécification method", Proc. of the 7th POPL Conférence, 1980.

[SW 82] Sannella D., Wirsing M. : "Implementation of parameterized spécifications", Report CSR-103-82, Department of Computer Science, University of Edinburgh.

[SW 83] Sannella D., Wirsing M. : "A kernel language for algebraic spécification and implementation", Proc. Intl. Conf. on Foundations of computation Theory, Springer-Verlag, LNCS 158, 1983.

[Wir 82] Wirsing M. : "Structured algebraic spécifications", Proc. of AFCET Symposium on Mathematics for Computer Science, Paris, March 1982.

Références

Documents relatifs

Port-au-Prince dataset: (a) optical ( c GeoEye, 2010) and (b) SAR images (CSK, c ASI, 2010), and classification results obtained with: (c) the proposed method applied to

We describe below first the learning mode, necessary to build the hierarchical gesture models from templates recorded by the user, and second, the performance mode, where the

En revanche, avec l’harmonique de rang 39, cette influence est positive : les harmoniques hautes fréquences génèrent moins de pertes supplémentaires lorsqu’elles ne

Il faudrait notamment prévoir la mesure simultanée de paramètres urinaires (osmolalité urinaire, excrétion d’eau et des solutés) et de pression artérielle le Jour et

Design and Evaluation of a Pneumatic Caisson Shaft Alternative for a Proposed Subterranean Library at

The time intervals in the multiresolution view are distorted to depict different levels of details over time (see horizontal axis in Fig.. This distortion is related to

Elmoataz, A., Lezoray, O., Bougleux, S.: Nonlocal discrete regularization on weighted graphs: a framework for image and manifold processing. Lezoray, O., Ta, V.T., Elmoataz, A.:

This section describes our multimodal and hierarchical processing pipeline. It starts with a tag comparison tech- nique based on frequency matching, followed by a descrip- tion of