Download Transformation Synthesis Language – Template MOLA - Latvijas PDF

TitleTransformation Synthesis Language – Template MOLA - Latvijas
File Size8.8 MB
Total Pages248
Document Text Contents
Page 1



Page 2


University of Latvia

Page 124

124 Computer SCienCe and information teChnologieS

style and local style (the diagramming engine uses the local style if it is defined;
otherwise the default style is used). The Collection class contains a single item that
is linked to currently active (selected) elements in the diagram. The seed/child link
between Element and GraphDiagram permits specifying an element to be a seed for a
diagram (typically, not the diagram the element is in), thus providing means for building
diagram hierarchies.

Besides the classes of visual elements, GDMM also contains classes describing
the tool’s environment (Palette, Toolbar and Keyboard classes with corresponding
elements). Instances of these classes are typically created at the tool creation time and

Fig. 1. The graph diagramming metamodel

Page 125

125J. Barzdins et al. An MDE-Based Graphical Tool Building Framework

do not change during the work with a tool. A context menu (ContextMenu class) can also
be specified to be opened in response to the tool’s request.

There is an Event class in GDMM whose singleton subclasses correspond to the
actions the user may perform on a particular diagram (the event classes are represented
as rounded rectangles), and that are understood by GDE. Upon observing a current
event, GDE invokes the event’s eventAction transformation responsible for particular
tool’s “business logic” in response to this event. The Command class describes the
requests (commands) that the tool transformations can issue for GDE. There may be
several commands issued by a single tool transformation. Command classes are denoted
as ellipses in Fig. 1.

For instance, the creation of a new box in a graph diagram starts by the user clicking
the tool-triggering GDE to set CurrentEventPointer to the only instance of NewBoxEvent
(the parent link from the event is set if the new box is to be created inside another box).
The event’s transformation then may, for instance, create a new element of the Box
class (or it may do some extra/other action depending on the tool’s specific logic). Then
it creates an instance of UpdateDgrCmd and transfers the control back to GDE that
processes the command by updating the diagram so that the newly-created box becomes

The semantics of some further Command subclasses is explained as follows.
The ActiveDgrCmd sets the editor’s focus on the particular diagram, RefreshCmd
refreshes the specified elements in the diagram, PasteCmd computes coordinates of
elements pasted into the diagram model, RefreshConfigCmd rebuilds toolbars and
palettes, ActivateContextMenuCmd opens a context menu (depending on the collection
of elements pointed to by the Collection element), StyleDialogCmd opens the style
dialogue of elements, ExecTransfCmd is used for calling back transformations. The
other commands and events should be mostly self-explanatory.

Although most of user activities in a tool trigger setting of the current event and
invoke some transformation, there are actions that are performed solely by GDE (e.g.,
undo/redo, zoom, export to hTML, print diagrams, etc). The toolbar items responsible
for these actions do not have associated ToolSelectEvents to be triggered when the
user selects the toolbar item. The context menu item that is handled directly by GDE
is “Symbol Style”. GDE is also responsible for handling element coordinates (the
coordinates can be abstracted away while writing tool defining transformations).

The implementation of GDE has been a considerable programming task of several
person years. The relatively simple diagram structure has allowed us to implement
advanced graph drawing capabilities [14, 15] in GDE, which support diagram initial
layout application as well as serve the interactive diagram editing process. The definition
of GDE interface in the form of GDMM allows for reuse of its graph diagramming
capabilities in various MDE-related tasks, among them, meta-tool creation. The
architecture of GDE is described in more detail in [11, 16].

In this section, we describe the syntax and semantics of the core tool definition
metamodel (Core TDMM) that can have (simple) modeling tools as its instances. The
aim of Core TDMM is to provide basic means for DST definition on the level of graphical

Page 247

247A. Vasilieva. Quantum Algorithms for Computing the Boolean Function AND ..


1. H. Buhrman and R. de Wolf. Complexity Measures and Decision Tree Complexity: A
Survey. Theoretical Computer Science, v. 288(1), 2002, pp. 21–43.

2. R. de Wolf. Quantum Computing and Communication Complexity. University of
Amsterdam, 2001.

3. M. Nielsen, I. Chuang. Quantum Computation and Quantum Information. Cambridge
University Press, 2000.

4. P. Kaye, R. Laflamme, M. Mosca. An Introduction to Quantum Computing. Oxford, 2007.
5. A. Ambainis. Quantum query algorithms and lower bounds. (Survey article.) In:

Proceedings of FOTFS III, Trends on Logic, vol. 23, 2004, pp. 15–32.

6. A. Ambainis and R. de Wolf. Average-case quantum query complexity. Journal of Physics
A 34, 2001, pp. 6741–6754.

7. A. Ambainis. Polynomial degree vs. quantum query complexity. Journal of Computer and
System Sciences, 72, 2006, pp. 220–238.

8. T. M. Cover, J. A. Thomas. Elements of Information Theory. Wiley-Interscience, 1991,
pp. 209–212.

9. P. W. Shor. Polynomial time algorithms for prime factorization and discrete logarithms on
a quantum computer. SIAM Journal on Computing, 26(5), 1997, pp. 1484–1509.

10. L. Grover. A fast quantum mechanical algorithm for database search. In: Proceedings of

STOC '96, 1996, pp. 212–219.

11. A. Ambainis, personal communication, April 2009.
12. D. Deutsch, R. Jozsa. Rapid solutions of problems by quantum computation. Proceedings

of the Royal Society of London, Vol. A 439, 1992, pp. 553–558.

13. R. Cleve, A. Ekert, C. Macchiavello, M. Mosca. Quantum algorithms revisited.
Proceedings of the Royal Society of London, Vol. A 454, 1998, pp. 339–354.

14. L. Lāce. Quantum Query Algorithms. Doctoral Thesis. University of Latvia, 2008, pp. 42–

15. A. Vasilieva. Quantum Query Algorithms for AND and OR Boolean Functions, Logic and
Theory of Algorithms. Proceedings of the 4th Conference on Computability in Europe,

2008, pp. 453–462.

16. I. Kerenidis, R. de Wolf. Exponential Lower Bound for 2-Query Locally Decodable Codes
via a Quantum Argument. Journal of Computer and System Sciences, 2004, pp. 395–420.

17. A. Dubrovska. Quantum Query Algorithms for Certain Functions and General Algorithm
Construction Techniques. Quantum Information and Computation V, Proc. of SPIE, vol.

6573. SPIE, Bellingham, WA, article 65730F, 2007.

Page 248

Iespiests SIA «Latgales druka»

Similer Documents