92 citations found. Retrieving documents...
R. M. Amadio and L. Cardelli. Subtyping recursive types. ACM TOPLAS, 15(4):575--631, 1993.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

Types for Access Control - De Nicola, Ferrari, Pugliese, Venneri (2000)   (2 citations)  (Correct)

....it is their least upper bound. Recursive types are used for typing migrating recursive processes. A type # generated from the grammar in Table 2 is such that any recursive type ##:# # occurring in # does not contain # on the left of ##. This is a simpli#cation of the notion of positive type of [5]. The fact that we only deal with a restricted form of types will be essential in the de#nition of subtyping. A consequence of our requirement that each process variable=identi#er in process de#nitions be guarded (i.e. occurs within the scope of a blocking in=read pre#x) is the fact that we only ....

....(ax#) ax#) and (eq) have priority over the other rules. The proof of decidability, that explicitly de#nes the algorithm, can be found in Section 8. Theorem 3.8. The subtyping relation 4 is decidable. A more general discussion about equality and subtyping of recursive types can be found in [5]. Moreover, an e#cient algorithm for deciding subtyping in the presence of recursive types has been proposed in [27] In our context, decidability of subtyping involves both union types and recursive types. However, in any type, and then in its canonical forms, recursive types can only occur in ....

R. Amadio, L. Cardelli, Subtyping recursive types, ACM Trans. Programm. Languages Systems 15(4) (1993) 575-- 631.


Typing and Subtyping for an Object-Oriented - Process Algebra Malcolm (2002)   (Correct)

....objects, the typically interreferential nature of their types (as defined by interface and class definitions) can lead to an infinite sequence of definition look ups. These become serious issues when it comes to subtyping, and a terminating algorithm requires a careful approach. In the style of [AC91], we introduce a notion of type tree and using an algorithm based on [PS93] we can deal with types not involving definitions. We deal with the issue of definitions by defining a function, similar to one in [AC91] which can remove the dependency of types on definitions. Our subtype algorithm is ....

....subtyping, and a terminating algorithm requires a careful approach. In the style of [AC91] we introduce a notion of type tree and using an algorithm based on [PS93] we can deal with types not involving definitions. We deal with the issue of definitions by defining a function, similar to one in [AC91], which can remove the dependency of types on definitions. Our subtype algorithm is shown to be terminating and both complete and sound relative to a tree semantics. As regards Oompa, the important result is that an Oompa expression which passes our type safety system never commits a type ....

[Article contains additional citation context not shown here]

Roberto M. Amadio and Luca Cardelli. Subtyping recursive types. In ACM-SIGPLAN ACM-SIGACT, editor, Conference Record of the 18th Annual ACM Symposium on Principles of Programming Languages (POPL '91), pages 104--118, Orlando, FL, USA, January 1991. ACM Press.


Typing and Subtyping - For Mobile Processes   (Correct)

....x(y:T ) is well sorted if S x T , where x: S x ) and I is either b or r. The subsort relation is formalized in Section 2 using a notion of simulation of regular trees and treated using techniques similar to those developed by Amadio and Cardelli for calculi with subtyping and recursive types [AC91]. Section 3 proves the soundness of the resulting type system. The greater precision of our type discipline yields stronger versions of some standard theorems about the calculus. For example, in Sections 4 and 5 we obtain the validity of fi reduction for the more efficient of Milner s encodings ....

Roberto M. Amadio and Luca Cardelli. Subtyping recursive types. In Proceedings of the Eighteenth ACM Symposium on Principles of Programming Languages, pages 104--118, Orlando, FL, January 1991. Also available as DEC Systems Research Center Research Report number 62, August 1990. To appear in TOPLAS.


The Complexity of Simple Subtyping Systems - Rehof (1998)   (9 citations)  (Correct)

.... studied by Mitchell [51, 53] and subsequently many others, including Fuh and Mishra [28, 29] Struc tural recursive subtyping arises as a natural generalization and has been studied by, among others, Tiuryn and Wand [72] Non structural recursive subtyping was introduced by Amadio and Cardelli [5, 6], and its finite version corresponds to Thatte s partial types [69, 70] type inference with non structural subtyping has been investigated in a series of papers authored (in various combinations) by Kozen, O Keefe, Palsberg, Schwartzbach and Wand [45, 44, 57, 56, 58] 2.3 Basic concepts and ....

....morphic qualified type schemes of the form VG.F r C. This notion of subsumption is closely related to the second order polymorphic subsumption relation introduced by Mitchell [52] Trifonov and Smith considered sub sumption in the model of infinite trees equipped with the Amadio Cardelli order [5]. However, the relation makes sense for other models as well, and we consider here a version appropriate for the present setting of simple subtypes over a partial order of ground types. A combination of a simple type and a constraint set C, written C, will be called a qualified type. The set ....

R. Amadio and L. Cardelli. Subtyping recursive types. In Proc. 18th Annual A CM Symposium on Principles of Programming Languages (POPL), Orlando, Florida, pages 104-118. ACM Press, January 1991.


Assigning Types to Processes - Yoshida, Hennessy (2000)   (32 citations)  (Correct)

....shared variables (i.e. passing environments as com types) will also be useful in this setting. More Type Constructors. We believe that it will be relatively straightforward to extend our set of types with many of the standard constructs from the literature; these include recursive types [4, 46, 37], record types [14, 45] polymorphic types [7, 38] and dynamic types [2, 40] A particularly useful extension would be linear affine types, as in the p calculus and the linear l calculus [30, 6, 19, 49] For example, in the higher order input process in (4) of Section 1, if a is a linear name, ....

Amadio, R. and Cardelli, L., Subtyping Recursive Types, TOPLAS, 15(4), pp.575--631, 1993.


Faithful Translations between Polyvariant Flows and.. - Amtoft, Turbak   (9 citations)  (Correct)

....the plumbing of a program, and recent work has uncovered deep connections between them. For example, Palsberg and O Keefe [PO95] demonstrated an equivalence between determining flow safety in the monovariant 0 CFA flow analysis and typability in a system with recursive types and subtyping [AC93] Heintze showed equivalences between four restrictions of 0 CFA and four type systems parameterized by (1) subtyping and (2) recursive types [Hei95] Because they merge flow information for all calls to a function, monovariant analyses are imprecise. Greater precision can be obtained via ....

....: # ( t y = # ( 3 : u # y # u z ) u y = # (q y : t y ) u xy = # (q x : t x , q y : t y ) Figure 8: Typing the program P 2.2 from Example 2.2. 3. 5 Embedding the Amadio Cardelli Type System In this section we investigate the relationship to the Amadio Cardelli (AC) type system [AC93] We show (Prop. 3.10) that AC can be embedded into the Mono part of our system, where a typing T belongs to Mono if it 1. is monovariant, that is IT T is a singleton . 18 [var] AC B # z l : s if B(z) # AC s [fun] AC B[f ## s 0 ] x ## s 1 ] # e : s 2 B # f.# l x.e : s ....

R. Amadio and L. Cardelli. Subtyping recursive types. ACM Trans. on Prog. Langs. & Systs., 15(4):575--631, 1993.


Developments in Object-Oriented Type Systems - Schwartzbach (1994)   (5 citations)  (Correct)

....[77, 80, 82, 83] Slide 52 References on the methodological aspects of inheritance are too numerous to cite. An example of the Scandinavian school is [54] the use of undisciplined code reuse is critizised in [35] Slide 56 59 The problems of inheritance, subtyping, and recursion are exposed in [33, 14, 15, 5]. The separation of subtyping and inheritance is made clear in [32] Slide 58 Emerald is described in [6, 50, 7, 87] Trellis Owl in [95] Slide 60 62 Definitions of class based inheritance are given in [57, 49, 110, 46, 63, 96, 9, 93] Annotated Bibliography 103 Slide 63 66 The soundness of ....

.... problem is made clear in [12] Mutable types are from [18] Simpler, specialized subtyping systems are presented in [109, 88, 70, 68, 71, 2, 1, 52] Minimal calculi are proposed in [40, 92, 16] A speciale case of the update problem is tackled in [20] Recursion and inheritance is analyzed in [33, 14, 15, 5]. A calculus with covariant specialization is proposed in [41, 22, 23] Undecidability of bounded polymorphism is shown in [84] Abstract data types are employed in [86, 85] their relation to classes is discussed earlier in [31] Large languages are presented in [13, 11] Slide 86 Type inference ....

Roberto M. Amadio and Luca Cardelli. Subtyping recursive types. In Eighteenth Symposium on Principles of Programming Languages, pages 104--118. ACM Press, January 1991. To appear in ACM TOPLAS, Transactions on Programming Languages and Systems.


XML-Fluent Mobile Agents - Pericas-Geertsen (1999)   (2 citations)  (Correct)

.... regular interchangeably. There are many, in fact infinitely many, finite representations for the same regular tree. Therefore, we need to define a relation by which two recursive types are equated iff they represent the same regular tree. The formalization of this relation is based on that in [AC93] we 101 will assume without proof that the main results from that report hold in our system as well. 1 As a first attempt, let us define the relation # over elements of DExpTypeUR as a congruence based on the following axiom: X) # # # X : X) # (FoldUnfold) This congruence relates ....

....(X) # X and # # (X) # X (both of which can be infintely unfolded as # # # ) because by (Fold Unfold) we have (i) X) # X # # (X) # X and (ii) # (X) # X # # # (X) # X , which implies that the former must be congruent to the latter by transitivity. Unfortunately, as explained in [AC93] this way of defining the congruence # results in a relation that is sound but not complete. It is sound because it only relates recursive types that represent the same regular tree, but incomplete because there are types that represent same regular tree that are not related. For example, ....

[Article contains additional citation context not shown here]

R. Amadio and L. Cardelli. Subtyping recursive types. ACM Trans. on Prog. Langs. & Systs., 15(4):575--631, 1993.


Schema Refinement and Schema Integration in Object-Oriented.. - Thieme, Siebes (1993)   (1 citation)  (Correct)

....in the superclass. 2 Every class in a class hierarchy has an underlying type, which describes the structure of the class, i.e. the structure of the objects in its extensions (cf. TM FM [3, 4] Informally, the underlying type of a class is an aggregation of its attributes, where recursive types [2] are used to cope with attributes that refer to classes. Definition 3. First, postulate a new type oid , whose extension is an enumerable set of object identifiers. Let H be a class hierarchy satisfying the first constraint, C be a class in H , and c be the name of C. The underlying type of ....

.... element type is a subtype of the second element type, and a recursive type is a subtype of another recursive type if from the assumption that the first type variable is a subtype of the second type variable it follows that the body of the first type is a subtype of the body of the second type [7, 2]: B B if B 2 finteger; rational; stringg, fAEg fAE 0 g if AE AE 0 , t:ff t 0 :ff 0 if t t 0 ) ff ff 0 . 2 For example, A is a subtype of S . Attribute specialisation is a form of attribute redefinition, where an inherited attribute a : T , defined in class C, is replaced ....

R. Amadio and L. Cardelli. Subtyping recursive types. In Proc. Int. Symp. on Principles of Programming Languages, pages 104--118, 1991.


An Approach to Schema Integration Based on Transformations.. - Thieme, Siebes (1994)   (5 citations)  (Correct)

....type, i.e. a type that describes the structure of the objects in its extensions (cf. TM FM [4, 5] Since a class can refer to other classes, its underlying type depends on the class hierarchy as a whole. The underlying type of a class is an aggregation of its attributes, where recursive types [3] are used to cope with attributes that refer to classes. Definition 4 (Underlying types) First, we postulate a new type oid , whose extension is an enumerable set of object identifiers. Let H be an acyclic class hierarchy, such that classes have a unique name and only refer to classes in the ....

.... , subtrees struc(e 1 ) Delta Delta Delta ; struc(e n ) and arrows, labeled l i , one for each i 2 f1; Delta Delta Delta ; ng, from the root labeled to the root of struc(e i ) ffl struc(x:e) struc(e[x n x:e] 2 A natural subtype relation for underlying types is the following [3, 8]: t:ff is a subtype of t 0 :ff 0 if from the assumption that t is a subtype of t 0 it follows that for every field a : AE 0 in ff 0 there is a field a : AE in ff, such that AE is a subtype of AE 0 . Definition 8 (Subtyping) Let underlying types and 0 be given by: t: l i : ....

R. Amadio and L. Cardelli. Subtyping recursive types. In Proc. Int. Symp. on Principles of Programming Languages, pages 104--118, 1991.


Type Equivalence, Subtyping, and Type Transformations in.. - Thieme, Siebes   (Correct)

....equivalence in Algol68 ( 7] where types are represented by infinite trees. Furthermore, we define extensional type equivalence, reducible type equivalence, and derivable type equivalence, which induces an algorithm, similar to the algorithm in [7] In fact, our approach resembles the approach of [2], where structural type equivalence resembles = T , extensional type equivalence resembles =M , reducible type equivalence resembles =R , and derivable type equivalence =A . However, there is an important difference. Since we have no functional types, but only basic, set, and recursive record ....

....is sound and complete w.r.t. both structural and extensional type equivalence. In Section 4, we introduce derivable subtyping using a set of subtyping rules, structural subtyping using trees, and extensional subtyping using extensions. These subtyping relations resemble A , T , and M from [2], respectively. Again, we have a stronger result: derivable subtyping is sound and complete w.r.t. both structural and extensional subtyping. In Section 5, we introduce type transformations: renaming operations and aggregation operations. We show that this set of type transformations is sound and ....

[Article contains additional citation context not shown here]

R. Amadio and L. Cardelli. Subtyping recursive types. In Proc. Int. Symp. on Principles of Programming Languages, pages 104--118, 1991.


Programming with Role-Based Access Control - Radha Jagadeesan Alan   (Correct)

No context found.

R. M. Amadio and L. Cardelli. Subtyping recursive types. ACM TOPLAS, 15(4):575--631, 1993.


On Sets of Terms: - Study Of Generalisation   (Correct)

No context found.

R.M. Amadio, L. Cardelli, "Subtyping recursive types". In proceedings POPL'91, appeared in ACM, pp 104-118, 1991.


Regular Expression Types for XML - Haruo Hosoya Kyoto (2000)   (51 citations)  (Correct)

No context found.

Amadio, R. M. and Cardelli, L. 1993. Subtyping recursive types. ACM Transactions on Programming Languages and Systems 15, 4, 575-631. Preliminary version in POPL '91 (pp. 104{ 118); also DEC Systems Research Center Research Report number 62, August 1990.


Assigning Types to Processes - Yoshida, Hennessy (2000)   (32 citations)  (Correct)

No context found.

Amadio, R. and Cardelli, L., Subtyping Recursive Types, TOPLAS, 15(4), pp.575--631, 1993.


Faithful Translations between Polyvariant Flows and.. - Amtoft, Turbak (2000)   (9 citations)  (Correct)

No context found.

Amadio, Roberto, & Cardelli, Luca. (1993). Subtyping recursive types. Acm trans. on prog. langs. and systs., 15(4), 575-631.


Faithful Translations between Polyvariant Flows and.. - Amtoft, Turbak (2002)   (9 citations)  (Correct)

No context found.

R. Amadio and L. Cardelli. Subtyping recursive types. ACM Trans. on Prog. Langs. & Systs., 15(4):575--631, 1993.


Faithful Translations between Polyvariant Flows and.. - Amtoft, Turbak (2000)   (9 citations)  (Correct)

No context found.

R. Amadio and L. Cardelli. Subtyping recursive types. ACM Trans. on Prog. Langs. and Systs., 15(4):575--631, 1993.


Faithful Translations between Polyvariant Flows and.. - Amtoft, Turbak (2000)   (9 citations)  (Correct)

No context found.

R. Amadio and L. Cardelli. Subtyping recursive types. ACM Trans. on Prog. Langs. and Systs., 15(4):575-631, 1993.


Faithful Translations between Polyvariant Flows and.. - Amtoft, Turbak (2000)   (9 citations)  (Correct)

No context found.

R. Amadio and L. Cardelli. Subtyping recursive types. ACM Trans. on Prog. Langs. and Systs., 15(4):575--631, 1993.


A Type System Equivalent to a Model Checker - Mayur Naik Stanford   (Correct)

No context found.

R. M. Amadio and L. Cardelli. Subtyping recursive types. ACM TOPLAS, 15(4):575-631, 1993.


Static Checking of Dynamically Generated Queries in.. - Gould, Su, Devanbu (2004)   (5 citations)  (Correct)

No context found.

R. Amadio and L. Cardelli. Subtyping recursive types. In Proceedings of the 18th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 104--118, 1991.


Polymorphism in ACL2 - Mark (2003)   (Correct)

No context found.

R. M. Amadio and L. Cardelli. Subtyping recursive types. In Proceedings of the ACM Conference on Principles of Programming Languages, 1991.


A Formal Foundation for Concurrent Object Oriented Programming - Grosu (1995)   (2 citations)  (Correct)

No context found.

R.M. Amadio and L. Cardelli. Subtyping recursivetypes. In Proc. ACM Symp. Principles of Programming Languages, pages104--= 1991.


Signatures: A Language Extension for Improving Type.. - Baumgartner, Russo (1995)   (20 citations)  (Correct)

No context found.

Roberto M. Amadio and Luca Cardelli, `Subtyping recursive types', ACM Transactions on Programming Languages and Systems, 15, (4), 575--631 (1993).

First 50 documents  Next 50

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC