Monografias em Ciência da Computação

1994

ABSTRACTS

Departmento de Informática 
Pontifícia Universidade Católica do Rio de Janeiro - PUC-Rio
Rio de Janeiro - Brazil


This file contains a list of the technical reports of the Departmento de Informática, Pontifícia Universidade Católica do Janeiro - PUC-Rio, Brazil, which are published in our series Monografias em Ciência da Computação (ISSN 0103-9741), edited by Prof. Carlos Lucena. Please note that the reports not available for download are available in their print format and can be obtained via the e-mail below.

For any questions, requests or suggestions, please contact:
Rosane Castilho bib-di@inf.puc-rio.br

Last update: 18/DECEMBER/2003

INDEX


[MCC01/94]
VELOSO, P.A.S. On fork algebras and reasoning about programs. 16 p. Eng. E-mail: bib-di@inf.puc-rio.br

Abstract: Fork algebras provide a useful basis for relational reasoning about programs and specifications. They arise as extensions of relational algebras with a new operator, called fork, which anables the introduction, by definition, of projections. In this paper we examine some fundamental issues concerning fork algebras, presenting the profs of expressiveness and representability and discuss their importance for reasonig about programs.


[MCC02/94]
ANDREATTA, A.A.; Ribeiro, C.C. A graph partitioning heuristic for the parallel pseudo-exhaustive logical test of VLSI combinational circuits. 37 p. Eng. E-mail: celso@inf.puc-rio.br

Abstract: The logical test of integrated VLSI circuits is one of the main phases of their design and fabrication. The pseudo-exhaustive approach for the logical test of integrated circuits consists in partitioning the original circuit to be tested into non-overlapping subcircuits with a small, bounded number of subcircuits, which are then exhaustively tested in parallel. In this work we present an approximate algorithm for the problem of partitioning integrated combinational circuits, based onthe tabu search metaheuristic. The proposed algorithm presents several original features, such as: the use of a reduced neighborhood, obtained from moves involving only a subset of boundary nodes; complex moves which entail several resulting moves, although the variations in the cost function arevery easily computable; a bi-criteria cost function combining the number of subcircuits and the number of cuts, which simultaneously adds adiversification strategy to the search; and the use of a bin-packing heuristic as a post-optimization step. The behavior of the proposed algorithm was evaluated through its application to a set of benchmark ISCAS combinational circuits. The computational results have been compared withthose obtained by other algorithms in the literature, with significant improvements. The average reduction rates have been of the order of 30% inthe number of subcircuits in the partition, and of the order of 40% in the number of cuts.


[MCC 03/94]
IERUSALIMSCHY, R.; FIGUEIREDO, L.H.; CELES FILHO, W. Reference manual of the programming language Lua. 21 p. Eng. E-mail: roberto@inf.puc-rio.br

Abstract: Lua is an embedded programming language designed to be used as a configuration language for any program that needs one. This document describesthe Lua programming language and the API that allows interaction between Lua program and its host C program. It also presents some examples of using the main features of the system.


[MCC04/94]
de SOUZA, C.S.; JAMES, D. Especificações formais para linguagens visuais de programação. 11 p. Eng. E-mail: clarisse@inf.puc-rio.br

Abstract: In this work we present LvPASCAL, a visual programming language based on PASCAL. After a short survey of concepts usually associated to visualprogramming, we propose that the advent of real instances of such type of graphical code claims for syntactical formalization and cognitive motivation. Syntactic formalization is needed for program compilation and,in LvPASCAL, such formalization is done with L-Systems. Cognitive motivation is needed for a programmer to be able to write and understand code in the language. In LvPASCAL, the motivation for imaging is driven towards perception, in an association between geometric forms and control and modularization abstractions.


[MCC05/94]
de SOUZA, C.S.; GARCIA, A.C.B. Towards a rethoric of active design documents. 13 p. Eng. E-mail: clarisse@inf.puc-rio.br

Abstract: Design documentation is costly, often inconsistent, and generally incomplete. Active Documents offer an active approach to capturingand delivering design rationale. In ADD, an existing implementation of anactive document, what is stored and manipulated by system and user is notjust information, but knowledge. Delivering knowledge at the interface level is a complex task, involving communicative strategies that fully explore documentation resources and adequately meet users cognitive needs. The implemented system generates information that can be displayed as an explanation, but it lacks rhetorical organization and structuring. Users, on their own, cannot be expected to (1) explore the full wealth of knowledge resources available in an active document, and (2) diagnose their own misconceptions about the design model and history. This paper discusses the potential for improving the input and output code, as well as for introducing dialogue structure, so that the knowledge usability
problem in (1) and the cognitive paradox problem in (2) are made smaller.


[MCC06/94]
SOUZA, C.S. Structure and expresiveness visual computer languages. 18 p. Eng. E-mail: clarisse@inf.puc-rio.br

Abstract: One of the meanings that can be assigned to the expression Visual Programming Language (VPL) is that of a programming language whose tokens are visual, rather than textual. Despiste the linguistic parallel, however, VPL's can hardly challenge their textual counterparts in the construction of even very simple software programs. But Visual Command Languages (VCL's) seem to have nearly overtaken their textual counterparts as a protocol for user-system interaction. Thus, the very nature of software programs and interface commands appear to be differentially suited for visual representation. In this paper, a classification of visual languages is proposed with respect to the dimensions of structural complexity and interactivity. Whereas languages deprived of a cognitively clear conceptual model in the semantic component seem to be necessarily low on the interactive side, languages deprived of formally clear structuring rules in the syntactic component do not. But, the lack of a powerful grammar seems to affect the language's ability to represent adequately the elements involved in even the simplest computer processes. In order to integrate the adequacy of VCL's to a programming environment, an end-user VPL schema is presented, in which visual parametric and syntactic variations of a classical fractal image - the Koch Curve - are assigned perceptually motivated procedural meanings. Although images in this VPL schema are abstract, and not semiotically iconic or indexical as the majority of VCL images, underlying structural regularities seem to accommodate consistenly some semantic notions related to data, control and modular abstractions. A global linguistic and semiotic analysis of the proposed VPL schema suggests that there may be important expressive limits to the quality of genuinely visual programming languages. Nevertheless, the limits of successful visual command languages may apparently be extended to incorporate abstractions that are desirable for end-user programming applications.


[MCC07/94]
FUKS, H.; MOURA, L.M. A document based approach for cooperation. 21 p. Eng. E-mail: hugo@inf.puc-rio.br

Abstract: This article outlines a document based approach for cooperation. It proposes a cooperation model, wich states the way team members access the documents of a project. It is the underlying model for a cooperative system, where developers concentrate on the application's domain, ignoring the aspects related to the cooperative process.


[MCC08/94]
GARCIA, A.C.B.; STEFIK, M.J.; HOWARD, H.C. Design rationale for collaboration: the active document approach. 29 p. Eng. E-mail: bicharra@inf.puc-rio.br

Abstract: We present a new approach for supporting documentation in routine design tasks using computationally active documents. This approach substantially reduces the costs of collaborative design. The major costs are in the time required to check and maintain consistency between design decisions and requirements, the time to explore a large design space, and the time lost in communication delays between people with different expertise. By reducing these costs, the active design document approach supports the creation, use and revision of design documents. We demonstrate the feasibility of the approach with a detailed case study of its application to the preliminary design of heating ventilation and air conditioning (HVAC) systems. Evaluation of a prototype system confirms that where the approach is applicable, it can significantly improve the quality and reduce the cost of design documentation.


[MCC09/94]
GARZA, J.M.; GARCIA, A.C.B.; HOWARD, H.C. Making the case for design rationale in the A/E/C industry. 12 p. Eng. E-mail: bicharra@inf.puc-rio.br

Abstact: Articulation and use of design rationale are critical elements in improving design, construction, and facility management in the architecture/engineering/construction (A/E/C) industry. This paper summarizes some of the research work on design rationale in the fields of construction and software engineering, and shows how design rationale could be captured and employed in the A/E/C industry. The articulation of design rationale should be a standard activity in the entire design process starting with owner's initial conception of the facility, the designer's elaborations on that concept, construction by the contractor, and finally, operation by the facility's managers. Owners of constructed facilities need to recognize the usefulness of this new design output product called "design rationale" as a valuable addition to the typical construction documents already produced, i.e., drawings, specifications, and as-builts. We argue that design rationale, if adopted as a valid concept, can be articulated and used through software tools and that these need to be embedded within the key software packages that designers are already using.


[MCC10/94]
GARCIA, A.C.B.; HOWARD, H.C.; STEFIK, M.J. Improving design and documentation by using partially automated synthesis. 35 p. Eng. E-mail: bicharra@inf.puc-rio.br

Abstract: One of the products of engineering, besides constructed artifacts, is design documentation. To understand how design participants use documentation, we interviewed designers and typical documentation users and also took protocols of them both creating and using design documentation. Our protocols were taken from realistic projects of preliminary design for heating, ventilation and air conditioning systems (HVAC). Our studies of document creation and use revealed three important issues: (1) Design participants not only look up design facts; they frequently access documents to obtain information about the rationale for design decisions; (2) The design rationale that they seek is often missing from the documents; (3) design requirements change frequently over a project life cycle so that design documents are often inconsistent and out-of-date. Recognizing these documentation issues in design practice, we developed a new approach in which documents are no longer static records, but rather interactive design models supporting a case. We demonstrated the feasibility of the approach by constructing a running system and testing it designers on realistic problems. We also analyze the costs and benefits of creating and using documentation of design rationale and of the active documents approach in praticular for routine, preliminary design in domains where community practice is widely shared and largely standardized. The approach depends on the feasibility of creating a parametric design model for the design domain.


[MCC11/94]
BIGONHA, M.A.S.; RANGEL NETTO, J.L.M. Sistema gerador de geradores de código para arquiteturas superescalares. 18 p. Port. E-mail: bib-di@inf.puc-rio.br

Abstract: Modern computer architectures have motivated research for more efficient compiler techniques. These new architectures, however, delegate the solution of the most complicated problems in code generation to the compiler. The focus of this paper is the design of a retargetable code generator system for superscalar architectures. We also show the results of the study of several problems related to code generation to these processors.


[MCC12/94]
BIGONHA, M.A.S.; RANGEL NETTO, J.L.M. Linguagens para descrição de arquiteturas de computadores. 18 p. Port. E-mail: bib-di@inf.puc-rio.br

Abstract: Modern computer architectures lead to research looking for better techniques for effective implementation of compilers wich must be able to produce high-quality code. In the special case of superscalar architectures we have reduced instructions sets, and instructions must be combined to warrant efficient execution by the compilers, which have more complex back-ends than their CISC counterparts. Objectives of this work are the study of the characteristics of formal languages for the description of architectures, meant for use with code generator generators and the project, and the semantic validation of an architecture description language adequate for use with the generator system.


[MCC13/94]
MAIBAUM, T.S.E.; VELOSO, P.A.S. Logical specifications: 1. Introduction and overview. 16 p. Eng. E-mail: bib-di@inf.puc-rio.br

Abstract: The logical approach to formal specifications regards specifications as axiomatic presentations of theories in standard first-order logic. Its motivations come mainly from two related sources: concepts aikin to program verification and "liberal" specifications (which provide flexibility for specifying what one whishes without forcingover-specification). The rationale for our standpoint is the realisation that programming has to do with syntactical objects rather with their semantical counterparts and, thus, that program and specification development consists of the manipulation of theories. This introductory report is intended to set the stage and provide a general overview. It presents and discusses some general ideas underlying our property-oriented approach. We start by examining the motivations for our approach and then proceed to consider some of its consequences for stepwise development: implementations and their composition as well as parametrisation and instatiation. We also briefly comment on our approach to errors via liberal specifications. This report is a draft of the first section of a handbook chapter. Subsequent reports will analyse these and related points in more detail.


[MCC14/94]
VELOSO, P.A.S.; MERÉ, M.C. Construtores parametrizados de sortes. 10 p. Port. E-mail: bib-di@inf.puc-rio.br

Abstract: Some sort constructors needed for implementing formal specifications are presented parameterized specifications. Implementation of formal specifications are crucial in formal program development. Specifications are viewed as theory presentations: theories in many-sorted first-order logic presented by a set of axioms. Implementation of formal specifications can also be described in terms of simple logical concepts. The constructors examined akin to those found in programming languages, namely record, discriminated union, subsorting and quotient. It is of interest to describe, in a formal way, how new sorts can be constructed from given sorts.


[MCC15/94]
OLIVEIRA, A.P.A.; LEITE, J.C.S.P. SERBAC: uma estratégia para definição de requisitos. 16 p. Port. E-mail: julio@inf.puc-rio.br

Abstract: No English abstract provided.


[MCC16/94]
GILVAZ, A.P.P.; LEITE, J.C.S.P. FAES - uma estratégia para aquisição de informações. 19 p. Port. E-mail: julio@inf.puc-rio.br

Abstract:In this article we present FAES, an automated assistant for interviews, and discuss its use and limitations. Interview is the most used technique for fact gathering, but suffers from several problems: tacit knowledge, the say do problem and has to deal with a large quantity of information. FAES is based on an information system conceptual model and is designed to help mitigate some of the cited problems. FAES guides the software engineer in the process of fact gathering by proposing questions to be asked to clients and providing an analysis of the client's answers as provided by the software engineer. The conceptual model was tested in a couple of cases and the assistant was used in a real case study.


[MCC17/94]
IERUSALIMSCHY, R.; RODRIGUEZ, N.L. Side effect free functions in object-oriented languages. 20 p. Eng. E-mail: roberto@inf.puc-rio.br

Abstract: This paper presents a method for statically verifying that functions do not produce side effects, in an  object-oriented language. The described model, although not allowing any changes to pre-existing objects during a function call, permits an imperative style of programming, where new objects can be freely created and manipulated.


[MCC18/94]
FIGUEIREDO, L.H.; IERUSALIMSCHY, R.; CELES Fo., W. The design and implementation of a language for extending applications. 11 p. Eng. E-mail: roberto@inf.puc-rio.br

Abstract: We describe the design and the implementation of Lua, a simple, yet powerful, language for extending applications. Although Lua is a procedural language, it has data description facilities, and has been extensively used in production for several tasks including user configuration, general-purpose data-entry, description of user interfaces, description of application objects, and storage of structured graphical metafiles.


[MCC19/94]
BORGES, R.; CASSINO, C.; CERQUEIRA, R.; IERUSALIMSCHY, R. UAI - um framework para suporte a objetos visuais. 10 p. Port. E-mail: roberto@inf.puc-rio.br

Abstract: UAI is a framework of C++ classes for developing interactive applications, with support for visual objects. The main features of UAI are the high integration between the interface and the graphic systems and its portability. This work describes the facilities of UAI for modeling active objects. The software is currenly running on X-Windows, MS-DOS, and MS-Windows.


[MCC20/94]
CELES FILHO, W.; FIGUEIREDO, L.H.; GATTASS. M.; IERUSALIMSCHY, R. Estratégias de reúso de software no TeCGraf. 9 p. Port. E-mail: roberto@inf.puc-rio.br

Abstract: No English abstract provided.


[MCC21/94]
COWAN, D.D.; LUCENA, C.J.P. Abstract data views: motivation, current proposal and research trends. 12 p. Eng. E-mail: lucena@inf.puc-rio.br

Abstract: This paper provides an overview of our current research work on Abstract Data Views (ADVs). ADVs are a new design concept that supports reuse-in-the-large and are a method for specifying and abstracting interfaces between objects. We present the motivation for the problem, express the requirements for an appropriate solution and outline our current proposal. We also provide an overview of the theoretical aspects of ADVs and illustrate how they provide a general solution for the module interconnection problem in object-oriented design.


[MCC22/94]
ALENCAR, P.S.C.; CARNEIRO-COFFIN, L.M.F.; COWAN, D.D.; LUCENA, C.J.P. The semantics of abstract data views: a design concept to support reuse-in-the-large. 18 p. Eng. E-mail: lucena@inf.puc-rio.br

Abstract: In this paper we present a preliminary formal semantics of a new design concept to support reuse-in-the-large called Abstract Data Views (ADVs). This approach toward reuse is described informally followed by the presentation of a formal basis for its semantics. The semantics of the relationship of ADVs and ADTs as well as the semantics of a specification constructor for simple composition are presented. Issues on reusability, the main concern of the presented design concept, and the role of instantiation and naming requirements in this contex are discussed. We also indicate how the dynamic features of ADVs and consistency requirements can be represented through a temporal logic formalism. Finally, a proff outline of a modularization theorem for reuse of ADTs interpreted through ADVs is presented.


[MCC23/94]
CARNEIRO-COFFIN, L.M.F.; COWAN, D.D.; LUCENA, C.J.P.; SMITH, D. An experience using JASMINUM - formalization assisting with the design of user interfaces. 18 p. Eng. E-mail: lucena@inf.puc-rio.br


Abstract: This paper describes experience in using a visual formalism, called JASMINUM, in the design of the user interface of a structured document editor called Waterloo Rita. JASMINUM combines concepts from Abstrac Data Views, with notations from Objectcharts, Statecharts, and Petri-nets. JASMINUM was motivated by the need for a formal notation to express directly some aspects of the design of interactive systems, especially the design of an interactive system through its user interface. In particular, we show in this paper how the use of JASMINUM helped to find some design flaws in the existing Waterloo Rita system, demonstrating that JASMUNUM might be a useful notation for re-engineering systems.


[MCC24/94]
NOGUEIRA, J.H.M.; PEREZ ALCAZAR, J.J.; FURTADO, A.L. Análise e implementação da teoria formal de reconhecimento de planos. 54 p. Port. E-mail: furtado@inf.puc-rio.br

Abstract: The central part of intelligent reasoning resides in the agent (human or machine) capacity to realize plans and explain them. Plan recognition process consists in explain observed actions. Plan recognition complexity appears when we try to infer reasonable plan of actions which are not explicitly observed, but actions which are implicit into agent's knowledge. This process is not purely deductive because it uses a powerful knowledge representation model, heuristics, and a typical plans library. The main goal of this work was a implementation of a Plan Recognition System (PRS), based in Kautz's formal theory. Furthermore, we include new concepts, rules, and improvements in this theory, creating a hybrid theory. Our plan recognition system works with this theory treating complete and incomplete information.


[MCC25/94]
NOGUEIRA, J.H.M.; FURTADO, A.L. Representação do conhecimento em banco de dados textuais. 26 p. Port. E-mail: furtado@inf.puc-rio.br

Abstract: Attempts to develop a good semantic network that can support language, reasoning, and information retrieval upon Textual Databases - TDB is not easy. This work has got as goal to make an overview of the main models of knowledge representatation in Artificial Intelligence and at the same time to make the link between this models and Textual Databases. In spite of complexity of the models, we find out that some models had little expression and sometimes they were dificult to handle with TDB. So, we create a new model, TDM (Textual Database Model), where it is specifical to treat texts.


[MCC26/94]
VELOSO, P.A.S.; MAIBAUM, T.S.E. Logical specifications: 2. specifications as presentations. 24 p. Eng. E-mail: bib-di@inf.puc-rio.br

Abstract: The logical approach to formal specifications regards specifications as axiomatic presentations of theories in standard first-order logic. We present this view of specifications as theory presentations, exploring some of its methodological consequences. Particular attention is paid to underdetermined specification and the role of error or exceptions. We start by reviewing some syntactical and semantical concepts pertaining to languages and specifications. We then discuss how a specification generates its theory as well as the roles of equality and induction. Errors and underdetermined specifications are motivated and discussed in view of their role in developing programs and reasoning about them. Finally we introduce liberally constrained specifications as more realistic concept of "good" specification, motivated by what is specified and available knowledge about it. A collection of example specifications is also provided. This report is draft of the second section of a handbook chapter. Other reports cover the remaining sections.


[MCC27/94]
CERQUEIRA, P.M.; LEITE, J.C.S.P. Recuperação de requisitos a partir de especificações estruturadas - um estudo de caso. 17 p. Port. E-mail: julio@inf.puc-rio.br

Abstract: No English abstract provided.


[MCC28/94]
AMARAL, F.C.V.; MILET, J.R.L.; LANZELOTTE, R.S.G. Utilizando a metodologia OMT para uma aplicação de banco de dados orientado a objetos. 35 p. Port. E-mail: bib-di@inf.puc-rio.br

Abstract: The Object-Oriented Database Management Systems (OODBMS) have become established as alternative to applications that must manipulate non-conventional data. Because of the wealth of concepts, application designs that use OODBMS are far more complex than relational systems. The aim of this project is to investigate the applicatility of the OMT methodology to OODBMS. Therefore, we have used the OMT to design a multimedia application and herein report the result of this experiment.


[MCC29/94]
LUCENA, C.J.; CASANOVA, M.A.; VELOSO, P.A.S. Antonio L. Furtado: pioneiro da pesquisa acadêmcica em bancos de dados. 20 p. Port. E-mail: lucena@inf.puc-rio.br

Abstract: This work consists of three parts, independently written by the three authors, all of them long-time colleagues and collaborators of Prof.Antonio L. Furtado. The first part presents an overview of his scientific career. The second and third parts address distinct aspects of his scientific production. Multiple references to a single work were considered unavoidable, and even desirable. The analysis of the academic contributions is intertwined with personal views of the author as colleague and collaborator. This monograph was prepared as part of the celebrations of the sixtieth anniversary of Prof. Antonio L. Furtado, and is complemented by appendices, containing a bibliography with the author's works and a list of his former advisees with respective dissertation topics.


[MCC30/94]
SCHWABE, D.; ROSSI, G. From domain models to hypermedia applications: an object oriented approach. 17 p. Eng. E-mail: schwabe@inf.puc-rio.br

Abstract: In this paper we present an object-oriented method for designing hypermedia applications. The approach divides the development process in four steps, namely: domain (or content) design, navigational design, abstract interface design and implementation. We use similar modeling primitives (object and classes) and abstraction mechanisms (aggregation, generalization), during the whole process thus improving traceability; design decisions like the use of complex navigational structures are made explicit through a uniform notation thus allowing a coherent document structure that simplifies the construction of a CAHDE.


[MCC31/94]
MARTINS, I.H.; de SOUZA, C.S.; GATTASS, M. Orientação semântica versus orientação sintática na captura de dados para aplicações computacionais pelo método dos elementos finitos. 43 p. Port. E-mail:
gattass@inf.puc-rio.br

Abstract: Engineering Systems Based on Planar Subdivision, more specifically Finite Element Pre-Processors, are powerful tools for capturing data for analysis and simulation systems. In this class of software applications direct manipulation interfaces play a very important role; they allow for visual data entry based on a geometric representation of the artifact. But conceptual models underlying current interface solutions are not adequate. We have identified some incongruities between the manipulation process of visual representations and the data capture process. The former looks for flexibility in the manipulation of the graphic drawings, whereas the latter looks for rigidity in the manipulation of semantic objects to maintain data consistency. Syntactic-driven and semantic-driven approaches favor one process at the expense of the other. Therefore, an alternative model is called for. This paper presents a proposal of one such alternative approach, including a number of contrastive examples between existing solutions and the proposed ones.


[MCC32/94]
LAUFER, C.; FUKS, H. ACCORD - clichês de conversação para cooperação. 15 p. Port. E-mail: hugo@inf.puc-rio.br  (English version)

Abstract: Cliches - conversation stereotypes - are state transition machines that control the sequencing of dialogue events in a conversation between twoparticipants. Cliches are represented in the language of ACCORD - a framework for dialogue representation systems using commitment and legality. The notion of contract - mapped to Winograd's Conversation for Action diagram - is presented as an example of the framework's ability for representing conversation cliches for cooperative work.


[MCC33/94]
VELOSO, P.A.S.; MAIBAUM, T.S.E. Logical specifications: 3. extensions of specifications. 58 p. Eng. E-mail: bib-di@inf.puc-rio.br

Abstract: We present basic concepts and results concerning extensions of logical specifications and illustrate their use in constructing specifications. We start by briefly examining the idea of hidden symbols in specifications. Then, we introduce some concepts concerning extensions of languages and of presentations, as well as properties such as conservativeness and eliminability. We then examine separately extensions by the introduction of predicates, operations, constants and sorts, with emphasis on criteria for concervativeness. In addition to classical definitions, we also consider and compare, constraints (inner, outer, Skolemisation, and pre and post conditions), as well as inductive predicates. The methods we consider for introducing new sorts are product, discriminated union, subsort, quotient and enumeration, as found in many programming languages. Finally, we apply these ideas to the treatment of errors and to construction of specifications. This report is a draft of the third section of a handbook chapter. Other reports cover the remaining sections.


[MCC34/94]
LEVY, C.H.; FIGUEIREDO, L.H.; GATTASS, M.; LUCENA, C.J.P.; COWAN, D.D. IUP/LED: a portable user interface development tool. 29 p. Eng. E-mail: mgattass@inf.puc-rio.br

Abstract: No English abstract provided.


[MCC35/94]
ALENCAR, P.S.C.; CARNEIRO-COFFIN, L.M.F.; COWAN, D.D.; LUCENA, C.J.P. Towards a logical theory of ADVs. 18 p. Eng. E-mail: lucena@inf.puc-rio.br

Abstract: In this paper we motivate and describe a preliminary logical theory for Abstract Data Views (ADVs) and their associated Abstact Data Objects (ADOs). Abstract Data Views (ADVs) define interfaces between application components (ADOs) or between application components and an "external" environment such as a user or a network. ADVs are ADOs that have been augmented with event-driven input and output  operations and a mapping that ensures an ADV interface conforms to the state of its associated ADO. Different ADVs may view or interact with the same ADO since interfaces can support alternative "views" of data or modes of interaction, providing the design satisfies certain consistency obligations. In order to maintain separation of concerns and promote design reuse, ADOs are specified to have no knowledge of their associated ADVs. ADVs can be seen as a way of providing language support for the specification and abstraction of inter-object behavior. The logical approach identifies the individual formal units or objects (ADOs and ADVs) that compose the specification of a system with theories in a temporal logic with a (global) discrete linear time structure. In this logical formalism, objects are characterized by their signatures, thus enabling local reasoning to be performed over components of a system. We also adopt an open semantics so that objects are not taken in isolation but can interact with surrounding objects, a pre-requisite for object composition. Mappings or morphisms are used as a means of connecting ADOs and ADVs thus formalizing the views relationship and other ADO and ADV specification constructors. Finally, we present a proof outline of a modularization theorem of ADOs interpreted through ADVs in the contex of this logical formalism. 


[MCC36/94]
de SOUZA, C.S.; FERREIRA, D.J. Fundamentos de projeto para uma linguagem visual de programação estruturada. 35 p. Port. E-mail: clarisse@inf.puc-rio.br

Abstract: This work proposes to create a Visual Programming Language, where control structures are visually represented by geometric forms suggestive of the data flow control. Such geometric forms are formalized according to L-systems rewrintig rules. L-systems support other kinds of grammars due to generality and simplicity - they allow for rules to be applied in paralel and for easy mapping from syntax on to visual representations. By associating L-systems to the so called "turtle geometry" control structures can be visualized. Moreover L-systems provide for a syntactic formalization necessary to every programming language. The proposed Visual Programming Language is based on Pascal and called Lvpascal.


[MCC37/94]
MERÉ, M.C.; VELOSO, P.A.S. On definition-like extensions by sorts. 19 p. Eng. E-mail: bib-di@inf.puc-rio.br

Abstract: The process of implementing a formal specification on another one is very important in formal software development and it can be described in terms of simple basic logical concepts. Formal specifications are presentations of theories in many-sorted logic, and an implementation of a formal specification A on another formal specification C amounts to an interpretation of A into a conservative extension B of C. An extension consists of the addition of new symbols and axioms, a simple, but important, special case being the so-called extensions by definitions. The new symbols to be introduced correspond to sorts, functions or predicates. Extensions by the addition of function and predicate symbols are well studied in the literature. In particular, extensions by definitions of function and predicate symbols are characterized by the properties of conservativeness together with eliminability. Our propose here is to analyse conservative extensions that introduce new sorts. This is of importance because it occurs often in implementing formal specifications, when new sorts are "constructed" from the concrete ones. We specify and analyse some well-known sort introduction constructs akin to those found in programming languages, namely cartesian product, discriminated union, subsorting and quotient. In each case the extension is shown to be conservative and to exhibit a generalised eliminability property, wich corroborates the intuitive feeling that these amount to extension by definition of a new sort.


[MCC38/94]
VELOSO, P.A.S.; MERÉ, M.C. Some constructs for sort introduction in logical specifications. 12 p. Eng. E-mail: bib-di@inf.puc-rio.br

Abstract: The process of implementing a formal specification on another one is very important in formal software development and it can be described in terms of simple basic logical concepts relating the formal specifications involved. Our propose here is to analyse conservative extensions that introduce new sorts. This is of importance because it occurs often in implementing formal specifications, when new sorts are  "constructed" from (or represented in terms of) the concrete ones. We will specify and analyse some well-known sort introduction constructs akin to those found in programming languages, namely cartesian product, discriminated union, subsorting and quotient. This last construct, quotient, even though not prevalent in programming languages, corresponds to the representation of the equality on an abstract sort, wich is necessary for a correct implementation. We will specify each construct by means of a parameterised formal specification, in that it is a presentation of a theory in the new, extended language, which is a conservative extension of its parameter: a presentation of a theory in old language which describes its applicability condition.


[MCC39/94]
MERÉ, M.C.; VELOSO, P.A.S. The eliminability property in extensions by sorts. 28 p. Eng. E-mail: bib-di@inf.puc-rio.br

Abstract: The process of implementing a formal specification on another one is very important in formal software develpoment and can be described in terms of simple logical concepts as an interpretation into a conservative extension. An extension consists of the addition of new symbols and axioms, a simple, but important, special case being the so-called extensions by definitions. The new symbols to be introduced correspond to sorts, functions and predicates. Extensions by the addition of function and predicate symbols are well studied in the literature. Our purpose here is to analyse the eliminability property in conservative extensions that introduce new sorts. This is of importance because it occurs often in implementing formal specifications, when new sorts are "constructed" from the concrete ones. We view some known sort introduction constructs, akin those found in programming languages (namely cartesian product, discriminated union, subsort and quotient), like extensions of a base language with the given sorts and study some common properties to these extensions.


[MCC40/94]
VELOSO, P.A.S.; MERÉ, M.C. On definability properties for sort introduction constructs. 42 p. Eng. E-mail: bib-di@inf.puc-rio.br

Abstract: The process of implementing a formal specification on another one is very important in formal software development and can be described in terms of simple logical concepts as an interpretation into a conservative extension. An extension consists of the addition of new symbols and axioms, a simple, but important, special case being the so-called extensions by definitions. The new symbols to be introduced correspond to sorts, functions and predicates. Extensions by the addition of function and predicate symbols are well studied in the literature. Our purpose here is to analyse definability properties in conservative extensions that introduce new sorts. We regard some usual sort introduction constructs, akin those found in programming languages (namely cartesian product, discriminated union, subsort and quotient), as extensions of a parameter specification with the given sorts and study some important properties to these extensions.


[MCC41/94]
SCHWABE, D; ROSSI, G. Building hypermedia applications as navigational views of information models. 10 p. Eng. E-mail: dschwabe@inf.puc-rio.br

Abstract: In this paper we present a novel approach for defining hypermedia applications as navigational views of an object-oriented hypermedia schwma. We briefly describe OOHDM (Object-Oriented Hypermedia Design Model) using an academic information system as a concrete example to illustrate each modeling construct. We further analyze the whole process of hypermedia applications building focusing mainly on navigational design. The approach we propose allows clean separation of content design, navigational design and abstract interface design. Such separation of concerns allows seamless evolution from abstract domain models to concrete implementation of hypermedia applications, especially those in which there is a wide range of information to be handled.


[MCC42/94]
BARBOSA, S.; SCHWABE, D. Navigation modelling in hypermedia applications. 21 p. Eng. E-mail: dschwabe@inf.puc-rio.br

Abstract: A distinguishing feature of hypermedia applications is the possibility of navigational access by the user. Although this type of access can be an advantage, there many problems associated with it, for example user disorientation ("lost in hyperspace"). This paper presents the concept of navigational context, which is used to design the navigation structure of a hypermedia application. Navigational contexts are defined in the framework of the Object Oriented Hypermedia Design Methodology, which strives to systematize the process of hypermedia application design, from the conceptual modeling phase all the way to implementation. Throughout the paper, examples of the use of navigational contexts are shown using Microsoft's Art Gallery CDROM application.