## Transforming Data by Calculation (2008)

Venue: | IN GTTSE’07, VOLUME 5235 OF LNCS |

Citations: | 5 - 3 self |

### BibTeX

@INPROCEEDINGS{Oliveira08transformingdata,

author = {José N. Oliveira},

title = {Transforming Data by Calculation},

booktitle = {IN GTTSE’07, VOLUME 5235 OF LNCS},

year = {2008},

pages = {134--195},

publisher = {Springer}

}

### OpenURL

### Abstract

This paper addresses the foundations of data-model transformation. A catalog of data mappings is presented which includes abstraction and representation relations and associated constraints. These are justified in an algebraic style via the pointfree-transform, a technique whereby predicates are lifted to binary relation terms (of the algebra of programming) in a two-level style encompassing both data and operations. This approach to data calculation, which also includes transformation of recursive data models into “flat ” database schemes, is offered as alternative to standard database design from abstract models. The calculus is also used to establish a link between the proposed transformational style and bidirectional lenses developed in the context of the classical view-update problem.

### Citations

2021 |
The Unified Modeling Language User Guide
- Booch, Rumbaugh, et al.
- 1999
(Show Context)
Citation Context ...dying data structuring is the number of disparate (inc. graphic) notations, programming languages and paradigms one has to deal with. Which should one adopt? While graphical notations such as the UML =-=[15]-=- are gaining adepts everyday, it is difficult to be precise in such notations because their semantics are, as a rule, not formally defined. Our approach will be rather minimalist: we will map such not... |

711 | Separation Logic: A Logic for Shared Mutable Data Structures
- Reynolds
- 2002
(Show Context)
Citation Context ...ed work on calculating with pointers (read eg. [12] and follow the references). Separation logic. Law (129) has a clear connection to shared-mutable data representation and thus with separation logic =-=[63]-=-. There is work on a PF-relational model for this logic [68] which is believed to be useful in better studying and further generalizing law (129) and to extend the overall approach to in-place data-st... |

642 |
Systematic Software Development Using VDM
- Jones
- 1986
(Show Context)
Citation Context ...ata refinement. The theory behind diagrams such as (8) is known as data refinement. It is among the most studied formalisms in software design theory and is available from several textbooks — see eg. =-=[38, 50, 20]-=-. The fact that state-of-the-art software technologies don’t enforce such formal design principles in general leads to the unsafe technology which we live on today, which is hindered by permanent cros... |

571 | A transformation system for developing recursive programs
- Burstall, Darlington
- 1977
(Show Context)
Citation Context ...rk on the foundations of computer programming [47] and Floyd’s work on program meaning [26]. A so-called program transformation school was already active in the mid 1970s, see for instance references =-=[16, 19]-=-. But program transformation becomes calculational only after the inspiring work of J. Backus in his algebra of (functional) programs [7] where the emphasis is put on the calculus of functional combin... |

568 |
Assigning meanings to programs
- Floyd
- 1967
(Show Context)
Citation Context ...ematics to reason about and transform programs is an old one and can be traced back to the times of McCarthy’s work on the foundations of computer programming [47] and Floyd’s work on program meaning =-=[26]-=-. A so-called program transformation school was already active in the mid 1970s, see for instance references [16, 19]. But program transformation becomes calculational only after the inspiring work of... |

474 |
Programming from Specifications
- Morgan
- 1994
(Show Context)
Citation Context ...ata refinement. The theory behind diagrams such as (8) is known as data refinement. It is among the most studied formalisms in software design theory and is available from several textbooks — see eg. =-=[38, 50, 20]-=-. The fact that state-of-the-art software technologies don’t enforce such formal design principles in general leads to the unsafe technology which we live on today, which is hindered by permanent cros... |

443 |
Can programming be liberated from the von Neumann style? A functional style and its algebra of programs
- Backus
- 1978
(Show Context)
Citation Context ...eady active in the mid 1970s, see for instance references [16, 19]. But program transformation becomes calculational only after the inspiring work of J. Backus in his algebra of (functional) programs =-=[7]-=- where the emphasis is put on the calculus of functional combinators rather than on the λ-notation and its variables, or points. This is why Backus’ calculus is said to be point-free. Intensive resear... |

433 |
The Theory of Relational Databases
- Maier
- 1983
(Show Context)
Citation Context ...as is the case in figure 2b. However, thinking in terms of tabular relations expressed by sets of tuples where particular attributes ensure unique identification 14 , as is typical of database theory =-=[46]-=-, is neither sufficiently general nor agile enough for reasoning purposes. References [57, 59] show that relational simplicity 15 is what matters in unique identification. So it suffices to regard col... |

298 |
Software Abstractions: Logic, Language, and Analysis
- Jackson
- 2006
(Show Context)
Citation Context ...(38) A special case of split will be referred to as relational product: R × S def = 〈R · π1, S · π2〉 (39) 8 The “everything is a relation” motto implicit in this approach is also the message of Alloy =-=[36]-=-, a notation and associated model-checking tool which has been successful in alloying a number of disparate approaches to software modeling, namely model-orientation, object-orientation, etc. Quoting ... |

194 |
Advanced Engineering Mathematics
- Kreyszig
- 1993
(Show Context)
Citation Context ...rgan in the 1860s [62], eventually led to what is known today as the algebra of programming [11, 5]. As suggested in [61], the PF-transform offers to the predicate calculus what the Laplace transform =-=[41]-=- offers to the differential/integral calculus: the possibility of changing the underlying mathematical space in a way which enables agile algebraic calculation. Theories “refactored” via the PF-transf... |

161 | Towards a Mathematical Science of Computation
- McCarthy
- 1962
(Show Context)
Citation Context ...w some background. The idea of using mathematics to reason about and transform programs is an old one and can be traced back to the times of McCarthy’s work on the foundations of computer programming =-=[47]-=- and Floyd’s work on program meaning [26]. A so-called program transformation school was already active in the mid 1970s, see for instance references [16, 19]. But program transformation becomes calcu... |

125 | Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem
- Foster, Greenwald, et al.
- 2007
(Show Context)
Citation Context ...e proximity is obvious between abstraction/representation pairs implicit in ≤-rules and bidirectional transformations known as lenses and developed in the context of the classical view-update problem =-=[33, 14, 27, 13]-=-. Each lens connects a concrete data type C with an abstract view A on it by means of two functions A × C put ��C and get A C . (Note the similarity with (R, F) pairs, except for put’s additional argu... |

92 | Polytypic programming
- Jeuring, Jansson
- 1996
(Show Context)
Citation Context ...sformations. For instance, [57] shows how to use it in calculating a universal SQL representation for XML data. The sections which follow will illustrate this potential, while stressing on genericity =-=[37]-=-. Operations of the algebra of heaps such as eg. defragment (cf. garbage-collection) will be stated generically and be shown to be correct with respect to the abstraction relation. 10 Cross-paradigm i... |

77 |
H.: Conceptual Mathematics: A First Introduction to Categories
- Lawvere, Schanuel
- 1997
(Show Context)
Citation Context ... been hinted at) would be a fascinating piece of research in mathematics and computer science in itself, and one which would put the vast storehouse in order, to use the words of Lawvere and Schanuel =-=[45]-=-. In these times of widespread pre-scientific software technology, putting the PFtransform under the same umbrella as other mathematical transforms would contribute to better framing the software scie... |

67 | Deriving a lazy abstract machine
- Sestoft
- 1997
(Show Context)
Citation Context ...ges are rather more complex than their obvious cousins in mathematics. For the sake of simplicity, we deliberately don’t consider aspects such as non-strictness, lazy-evaluation, infinite data values =-=[65]-=- etc. Back to the running example. Recall the family tree displayed in (7) and figure 2. Suppose requirements ask us to provide CRUD operations on a genealogy database collecting such family trees. Ho... |

63 |
Data refinement refined
- He, Hoare, et al.
- 1986
(Show Context)
Citation Context ... data refinement widespread? Perhaps because it is far too complex a discipline for most software practitioners, a fact which is mirrored on its prolific terminology — cf. downward, upward refinement =-=[31]-=-, forwards, backwards refinement [31, 72, 49], S,SP,SCrefinement [21] and so on. Another weakness of these theories is their reliance on inventGTTSE’07 — post-refereeing version (March 2008) 7 & veri... |

62 |
1992] Elementary Categories, Elementary Toposes
- McLarty
(Show Context)
Citation Context ...ent, no special requirements are put on K. Later on, K will be asked to provide for a countably infinite supply of identifiers, that is, to behave such as natural number objects do in category theory =-=[48]-=-. Below we show that simplicity and membership are what is required of our PFnotation to capture the semantics of data modeling (graphical) notations such as EntityRelationship diagrams and UML class ... |

61 | Relational lenses: a language for updatable views
- Bohannon, Pierce, et al.
- 2006
(Show Context)
Citation Context ...e proximity is obvious between abstraction/representation pairs implicit in ≤-rules and bidirectional transformations known as lenses and developed in the context of the classical view-update problem =-=[33, 14, 27, 13]-=-. Each lens connects a concrete data type C with an abstract view A on it by means of two functions A × C put ��C and get A C . (Note the similarity with (R, F) pairs, except for put’s additional argu... |

54 | Origins of the calculus of binary relations
- Pratt
- 1992
(Show Context)
Citation Context ...rm” for short) we essentially mean the conversion of predicate logic formulæ into binary relations by removing bound variables and quantifiers — a technique which, initiated by De Morgan in the 1860s =-=[62]-=-, eventually led to what is known today as the algebra of programming [11, 5]. As suggested in [61], the PF-transform offers to the predicate calculus what the Laplace transform [41] offers to the dif... |

43 | Boomerang: Resourceful lenses for string data
- Bohannon, Foster, et al.
- 2008
(Show Context)
Citation Context ...ntimately related to the data transformation discipline put forward in the current paper. One is bidirectional pro-�� � �� �� 54 J.N. Oliveira gramming used to synchronize heterogeneous data formats =-=[13]-=-. The other is the design of term rewriting systems for type-safe data transformation [17]. Lenses. The proximity is obvious between abstraction/representation pairs implicit in ≤-rules and bidirectio... |

43 |
A synthesis of several sorting algorithms
- Darlington
- 1978
(Show Context)
Citation Context ...rk on the foundations of computer programming [47] and Floyd’s work on program meaning [26]. A so-called program transformation school was already active in the mid 1970s, see for instance references =-=[16, 19]-=-. But program transformation becomes calculational only after the inspiring work of J. Backus in his algebra of (functional) programs [7] where the emphasis is put on the calculus of functional combin... |

35 |
Modelling Systems: Practical Tools and Techniques for Software Development
- Fitzgerald, Larsen
- 1998
(Show Context)
Citation Context ... ⊆ X ≡ R ⊆ X ∧ S ⊆ X.) Furthermore show that (32) converts to pointwise notation as follows, 〈∀ a :: a ∈ (dom M ∩ dom N) ⇒ (M a) = (N a)〉 — a condition known as (map) compatibility in VDM terminology =-=[25]-=-. ✷ Exercise 5. It will be useful to order relations with respect to how defined they are: R ≼ S ≡ δ R ⊆ δ S (33) From ⊤ = ker! draw another version of (33), R ≼ S ≡ ! · R ⊆ ! · S, and use it to deriv... |

33 | A programmable editor for developing structured documents based on bidirectional transformations
- Hu, Mu, et al.
- 2004
(Show Context)
Citation Context ...e proximity is obvious between abstraction/representation pairs implicit in ≤-rules and bidirectional transformations known as lenses and developed in the context of the classical view-update problem =-=[33, 14, 27, 13]-=-. Each lens connects a concrete data type C with an abstract view A on it by means of two functions A × C put ��C and get A C . (Note the similarity with (R, F) pairs, except for put’s additional argu... |

27 |
der Woude. Polynomial relators
- Backhouse, Bruin, et al.
- 1992
(Show Context)
Citation Context ... out that the wish list concerning G will end up being as follows: Gid = id (93) G(R · S) = (GR) · (GS) (94) G(R ◦ ) = (GR) ◦ (95) R ⊆ S ⇒ GR ⊆ GS (96) These turn up to be the properties of a relator =-=[6]-=-, a concept which extends that of a functor to relations: a parametric datatype G is said to be a relator wherever, given a relation R from A to B, GR extends R to G-structures. In other words, it is ... |

25 | Generic Traversal over Typed Source Code Representations
- Visser
(Show Context)
Citation Context ...e the same equation as the following (suitably sugared) type declaration in C: typedef struct x { A data; struct x *next; } Node; typedef Node *X; Recursive types. Both the interpretation of grammars =-=[70]-=- and the analysis of datatypes with pointers [71] lead to systems of polynomial equations, that is, to mutually recursive datatypes. For instance, the two typedef s above lead to Node = A × X and to X... |

23 |
der Woude. A relational theory of datatypes
- Aarts, Backhouse, et al.
- 1992
(Show Context)
Citation Context ...e mentioned that some rules in table 1 appear in the literature under different guises and usually not identified as GCs 5 . For a thorough presentation of the relational calculus in terms of GCs see =-=[1, 5]-=-. There are many advantages in such an approach: further to the systematic tabulation of operators (of which table 1 is just a sample), GCs have a rich algebra of properties, namely: – both adjoints f... |

21 | A reification calculus for model-oriented software specification
- Oliveira
- 1990
(Show Context)
Citation Context ...atatype (cf. G) which captures its structural “shape” are often referred to as two-level types in the literature [66].22 J.N. Oliveira ∈F×G ∈F+G ∈F·G def = (∈F · π1) ∪ (∈G · π2) (52) def = [∈F , ∈G] =-=(53)-=- def = ∈G · ∈F (54) Exercise 10. Calculate the membership of type FX = X × X and convert it to pointwise notation, so as to confirm the intuition above that a ∈ (x, y) holds iff a = x ∨ a = y. ✷ Gener... |

20 |
der Woude. A calculational approach to mathematical induction
- Doornbos, Backhouse, et al.
- 1997
(Show Context)
Citation Context ...RI property (60) — and to be referentially acyclic. This second requirement can also be expressed via the membership relation associated with G: relation ∈G·H K � K on references must be well-founded =-=[23]-=-. Jourdan [39] developed a pointwise proof of the surjectiveness of Unf (129) for K isomorphic to the natural numbers and G polynomial (see more about this in section 13). The representation relation ... |

17 |
A Generic Theory of Data Types
- Hoogendijk
- 1997
(Show Context)
Citation Context ...s a ∈ (x, y) means a = x ∨ a = y. So it makes sense to define a generic notion of membership, able to fully explain the overloading of symbol ∈ above. Datatype membership has been extensively studied =-=[32, 11, 60]-=-. Below we deal with polynomial type membership, which is what it required in this paper. A polynomial type expression may involve the composition, product, or sum of other polynomial types, plus the ... |

16 | Compiling exceptions correctly
- Hutton, Wright
- 2004
(Show Context)
Citation Context ...nomial and K the natural numbers. “De-recursivation” law (129) generalizes, in the generic PF-style, the main result of [71] and bears some resemblance (at least in spirit) with “defunctionalization” =-=[35]-=-, a technique which is used in program transformation and compilation. The genericity of this result and the ubiquity of its translation into practice — cf. name spaces, dynamic memory management, poi... |

15 | Transposing relations: from Maybe functions to hash tables
- Oliveira, Rodrigues
- 2004
(Show Context)
Citation Context ...ational operators seen so far: ◦ > {δ , ρ } > (·) > ∩ > ∪ Example: R · δ S ◦ ∩ T ∪ V abbreviates ((R · (δ (S ◦ ))) ∩ T) ∪ V . Summary. The material of this section is adapted from similar sections in =-=[60, 61]-=-, which introduce the reader to the essentials of the PF-transform. While the notation adopted is standard [11], the presentation of the associated calculus is enhanced via the use of Galois connectio... |

12 | Coupled Schema Transformation and Data Conversion for XML and SQL
- Berdaguer, Cunha, et al.
- 2007
(Show Context)
Citation Context ...ated in the main body of this paper. See section 13 for future research directions in this respect. 2LT — a library for two-level data transformation. The 2LT package of the U.Minho Haskell libraries =-=[17, 10, 18]-=- applies the theory presented in the current paper to data refinement via (typed) strategic term re-writing using GADTs. The refinement process is modeled by a type-changing rewrite system, each rewri... |

12 |
The transformational approach to database engineering
- Hainaut
- 2006
(Show Context)
Citation Context ...(running) example; on the other hand, to show how to circumvent such disparity by expressing the same models in PF-notation. Particular emphasis will be put on describing Entity-relationship diagrams =-=[30]-=-. Later on we will go as far as capturing recursive data models by least fixpoints over polynomial types. Once again we warn the reader that types and data modeling constructs in current programming l... |

10 |
Safety of abstract interpretations for free,via logical relations and Galois connections
- Backhouse, Backhouse
- 2003
(Show Context)
Citation Context ...culus [11]. For instance, the PF-transform rule which follows, involving two functions (f, g) and an arbitrary relation R b(f ◦ · R · g)a ≡ (f b)R(g a) (18) plays a prominent role in the PF-transform =-=[4]-=-. The pointwise definition of the kernel of a function f, for example, b(kerf)a ≡ f b = f a (19) stems from (18), whereby it is easy to see that ⊤ is the kernel of every constant function, ! 1 A inclu... |

9 | Transformation of structure-shy programs: applied to XPath queries and strategic functions, in
- Cunha, Visser
(Show Context)
Citation Context ...ated in the main body of this paper. See section 13 for future research directions in this respect. 2LT — a library for two-level data transformation. The 2LT package of the U.Minho Haskell libraries =-=[17, 10, 18]-=- applies the theory presented in the current paper to data refinement via (typed) strategic term re-writing using GADTs. The refinement process is modeled by a type-changing rewrite system, each rewri... |

9 | Calculating with concepts: a technique for the development of business process support
- Dijkman, Pires, et al.
(Show Context)
Citation Context ...Following the exercise of section 8, a calculational theory of UML mapping scenarios could be developed starting from eg. K. Lano’s catalogue [44]. This should also take the Calculating with Concepts =-=[22]-=- semantics for UML class diagrams into account. For preliminary work on this subject see eg. [9]. 30 The ≤-rules of the calculus are used in practical classes and lab assignments in the derivation of ... |

9 | On refinement of generic state-based software components
- Meng, Barbosa
- 2004
(Show Context)
Citation Context ...because it is far too complex a discipline for most software practitioners, a fact which is mirrored on its prolific terminology — cf. downward, upward refinement [31], forwards, backwards refinement =-=[31, 72, 49]-=-, S,SP,SCrefinement [21] and so on. Another weakness of these theories is their reliance on inventGTTSE’07 — post-refereeing version (March 2008) 7 & verify (proof) development strategies which are h... |

8 | Type-safe two-level data transformation
- Cunha, Oliveira, et al.
- 2006
(Show Context)
Citation Context ...ions injective (as expected). At programming level, they ensure that adding entries to a struct or (disjoint) union is a valid representation strategy, provided functions f, g are supplied by default =-=[17]-=-. Alternatively, they can be replaced by the top relation ⊤ (meaning a don’t care representation strategy). In the case of (71), even ⊥ will work instead of f, g, leading, for A = 1, to the standard r... |

7 |
Mathematics of Program Construction. Univ. of Nottingham, 2004. Draft of book in preparation
- Backhouse
(Show Context)
Citation Context ...ts. This is why Backus’ calculus is said to be point-free. Intensive research on the (pointfree) program calculation approach in the last thirty years has led to the algebra of programming discipline =-=[11, 5]-=-. The priority of this discipline has been, however, mostly on reasoning about algorithms rather than data structures. Our own attempts to set up a calculus of data structures date back to [52– 54] wh... |

6 |
Fork algebras in algebra, logic and computer science
- Frias
- 2002
(Show Context)
Citation Context ...ferred to section 7 and, in particular, to exercise 27, in which the corresponding universal property is inferred. 10 Read 〈R, S〉 as “split of R and S”. This construct is also known as a fork algebra =-=[28]-=-.18 J.N. Oliveira So we can add two more entries to table (35): ψ [ψ] a R c ∧ b S c (a, b)〈R, S〉c b R a ∧ d S c (b, d)(R × S)(a, c) As another example of PF-transformation, we calculate the PF-versio... |

6 | Back to basics: Deriving representation changers functionally
- Hutton, Meijer
- 1993
(Show Context)
Citation Context ...nsures H · f ◦ simple, via (28) and monotonicity.GTTSE’07 — post-refereeing version (March 2008) 53 Secondly, the defragment operation we’ve just reasoned about is a so-called representation changer =-=[34]-=-. These operations (which include garbage collection, etc) are important because they add to efficiency without disturbing the service delivered to the client. In the mapping scenario terminology of [... |

6 |
Refinamento Transformacional de Especificações (Terminais
- Oliveira
- 1987
(Show Context)
Citation Context ...ured around another datatype (cf. G) which captures its structural “shape” are often referred to as two-level types in the literature [66].22 J.N. Oliveira ∈F×G ∈F+G ∈F·G def = (∈F · π1) ∪ (∈G · π2) =-=(52)-=- def = [∈F , ∈G] (53) def = ∈G · ∈F (54) Exercise 10. Calculate the membership of type FX = X × X and convert it to pointwise notation, so as to confirm the intuition above that a ∈ (x, y) holds iff a... |

6 |
The Impedance Imperative: Tuples + Objects + Infosets =Too Much Stuff
- Thomas
- 2003
(Show Context)
Citation Context ...’s to capture (by analogy with a similar situation in electrical circuits) the technical differences between the object and relational technologies. Other kinds of impedance mismatch are addressed in =-=[69, 43]-=-.�� �� 6 J.N. Oliveira Whatever programming paradigm for data processing we choose, data has the tendency to live on the other side or to eventually end up there. (...) This myriad of inter- and intr... |

5 | Strategic term rewriting and its application to a VDM-SL to SQL conversion
- Alves, Silva, et al.
- 2005
(Show Context)
Citation Context ... (1) The no loss principle means that no data are lost in the representation process. Put in other words, it ensures that every datum of interest a is representable by some c: 〈∀ a :: 〈∃ c :: c R a〉〉 =-=(2)-=- Above we mention the converse R ◦ of R, which is the relation such that a(R ◦ )c holds iff c R a holds. Let us use this rule in re-writing (1) in terms of F = R ◦ : 〈∀ c, a, a ′ :: a F c ∧ a ′ F c ⇒ ... |

5 |
The Specification of Abstract Mappings and Their Implementation as B + -Trees
- Fielding
- 1980
(Show Context)
Citation Context ... injective f will qualify for safe defragmentation, for every heap. Some comments are in order. First of all, and unlike what is common in data refinement involving recursive data structures (see eg. =-=[24]-=- for a comprehensive case study), our calculations above have dispensed with any kind of inductive or coinductive argument. (This fact alone should convince the reader of the advantages of the PF-tran... |

5 |
Reificação de tipos abstractos de dados: Uma abordagem matemática
- Jourdan
- 1992
(Show Context)
Citation Context ...0) — and to be referentially acyclic. This second requirement can also be expressed via the membership relation associated with G: relation ∈G·H K � K on references must be well-founded [23]. Jourdan =-=[39]-=- developed a pointwise proof of the surjectiveness of Unf (129) for K isomorphic to the natural numbers and G polynomial (see more about this in section 13). The representation relation R, which shoul... |

5 |
Refinement and development of programs from relational specifications
- Kahl
- 2001
(Show Context)
Citation Context ...7 needs to be reasoned about, the overall flavour is more practical and not that of a fine art only accessible to the initiated — an aspect of the recent evolution of the calculus already stressed in =-=[40]-=-. The table below provides a summary of the PF-transform rules given so far, where left-hand sides are logical formulæ (ψ) and right-hand sides are the corresponding PF equivalents ([ψ]): 7 To use the... |

5 | Mappings Make Data Processing Go ’Round
- Lämmel, Meijer
(Show Context)
Citation Context ...omparison belong to different paradigms. This kind of complexity is a measure of the impedance mismatches between the various data-modeling and data-processing paradigms 3 , in the words of reference =-=[43]-=- where a thorough account is given of the many problems which hinder software technology in this respect. Quoting [43]: 3 According to [3], the label impedance mismatch was coined in the early 1990’s ... |

4 |
Unfolding pointer algorithms
- Bird
(Show Context)
Citation Context ...free calculation if results developed meanwhile by Gibbons [29] are taken into account. Moreover, the same law should be put in parallel with other related work on calculating with pointers (read eg. =-=[12]-=- and follow the references). Separation logic. Law (129) has a clear connection to shared-mutable data representation and thus with separation logic [63]. There is work on a PF-relational model for th... |

4 | Pointfree factorization of operation refinement
- Oliveira, Rodrigues
- 2006
(Show Context)
Citation Context ...lass of operations is still quite general: it encompasses all deterministic, possibly partial computations. Within this class, inclusion coincides with the standard definition of operation refinement =-=[61]-=-.GTTSE’07 — post-refereeing version (March 2008) 51 calculate: name · [ in, H ] ⊆ [ T, H ] ⇐ { fusion (127) } name · in ⊆ T · G(name) ≡ { name · Node = π1 · π1 (124) ; expansion of G(name) } π1 · π1 ... |