[comp.doc.techreports] tr-input/texas.austin

leff@smu.UUCP (Laurence Leff) (02/10/88)

From uunet!R20.UTEXAS.EDU!CS.TECH Thu Feb  4 23:29:54 1988
Received: by smu (5.51/4.7)
	id AA08599; Thu, 4 Feb 88 21:29:45 CST
From: uunet!R20.UTEXAS.EDU!CS.TECH
Received: from R20.UTEXAS.EDU by uunet.UU.NET (5.54/1.14) 
	id AA10008; Thu, 4 Feb 88 14:14:23 EST
Date: Thu 4 Feb 88 13:14:01-CST
Subject: UT-CS TRS
To: trlist-request@smu.edu
Message-Id: <12372096163.47.CS.TECH@R20.UTEXAS.EDU>
Status: R


                        DEPARTMENT OF COMPUTER SCIENCES
                            TECHNICAL REPORT CENTER
                               TAYLOR HALL 2.124
                       THE UNIVERSITY OF TEXAS AT AUSTIN
                           AUSTIN, TEXAS 78712-1188

                                (512) 471-9595
                      ARPANET ADDRESS: CS.TECH@UTEXAS-20

             TECHNICAL REPORTS, SEPTEMBER 1987 - DECEMBER 1987

                          PREPAYMENT IS REQUIRED.

    Please make U.S. bank checks or international money orders payable to
                         "The University of Texas."

       [ ] TR-87-34  $1.50                         [ ] TR-87-41  $1.50
       [ ] TR-87-35  $3.00                         [ ] TR-87-42  $5.00
       [ ] TR-87-36  $5.00                         [ ] TR-87-43  $2.00
       [ ] TR-87-37  $1.50                         [ ] TR-87-44  $1.50
       [ ] TR-87-38  $1.50                         [ ] TR-87-45  $1.50
       [ ] TR-87-39  $2.50                         [ ] TR-87-46  $1.50
       [ ] TR-87-40  $1.50                         [ ] TR-87-47  $1.50

------------------------------------------------------------------------------

TR-87-34    VERTEX DECOMPOSITIONS OF PLANAR GRAPHS
                         Donald Fussell and Ramakrishna Thurimella
                                      September 1987
                                         16 pages
            
            ABSTRACT: Vertex decompositions of graphs are useful  in  designing
            fast  parallel algorithms for vertex coloring. Vertex arboricity of
            a graph is the minimum number of sets into which a vertex  set  can
            be  partitioned  such  that  the subgraph induced by each set is an
            acyclic graph  (a  forest).  It  is  well  known  that  the  vertex
            arboricity  of planar graphs is 3 and that of outerplanar graphs is
            2, from a result due to Chatrand and Kronk [CK 69]. In this  paper,
            it  is shown that outerplanar graphs can be vertex partitioned into
            two sets, one inducing a forest and the other an  independent  set.
            As  a result it can be concluded that all 4-connected planar graphs
            can be vertex partitioned into three sets such  that  two  of  them
            induce forests and the third is an independent set.


TR-87-35    INTRODUCTION TO LOGIC PROGRAMMING
                                     Krzysztof R. Apt
                                      September 1987
                                         55 pages
            
            ABSTRACT: We provide a systematic and  self-contained  introduction
            to the theory of logic programming.


TR-87-36    DESIGN OF THE CADM BASED SORT/SEARCH/SET ENGINE
                                      Vivekanand Bhat
                                      September 1987
                                         171 pages
            
            ABSTRACT: Managing large  databases  involves  time  consuming  and
            computationally intensive operations such as sorting, searching and
            various relational algebraic operations.  These  are  traditionally
            performed  on  general  purpose  computers. Special hardware can be
            used to achieve higher speed in implementing these operations.  The
            design  of  one  such  system  for  performing sort, search and set
            operations such as  union,  intersection  and  set  difference,  is
            described.  The  performance  of  this  system is compared with the
            performance of general purpose computers for performing  the  above
            operations,  and  it is shown that our system performs considerably
            better. Implementation of a prototype is described.


TR-87-37    A DATA-DEPENDENCY BASED INTELLIGENT BACKTRACKING SCHEME FOR PROLOG
                               Vipin Kumar and Yow-Jian Lin
                                      September 1987
                                         22 pages
            
            ABSTRACT: This paper presents a scheme for intelligent backtracking
            in Prolog programs. Rather than doing the analysis  of  unification
            failures,  this  scheme  chooses  backtrack  points  by  doing  the
            analysis  of  data   dependency   between   literals.   The   other
            data-dependency  based  methods  previously  developed  can  not be
            easily incorporated in the Warren's abstract machine, and  are  not
            able  to  perform across-the-clause backtracking intelligently. Our
            scheme overcomes all these problems. For many problems this  scheme
            is just as effective as intelligent backtracking schemes based upon
            (more accurate) analysis of unification  failure,  and  yet  incurs
            small space and time overhead. To demonstrate the usefulness of our
            scheme, we have modified a Warren's abstract machine  simulator  to
            incorporate our intelligent backtracking scheme, and have evaluated
            its performance on a number of problems.


TR-87-38    ON IMPLEMENTING A COST-EFFECTIVE HYPERTEXT SYSTEM
                                       Khe-Sing The
                                      September 1987
                                          9 pages
            
            ABSTRACT:  The current state of technology is still insufficient to
            support the ideal futuristic hypermedium. It can, however,  support
            a  hypertext  for  some  specific  applications,  provided that the
            system  is  carefully  designed  to  fit  into  the   technological
            advantages  and  usability  considerations.  In this paper we first
            discuss the requirements for a simple and  yet  practically  usable
            hypertext  system,  then  we identify some feasible applications of
            the simple system in the current practices of software development.
            A  feasible  prototype  is proposed as an example to illustrate the
            technical aspects of our hypertext specification.


TR-87-39    BALANCED PROTOCOLS FOR SEQUENCING DISTRIBUTED COMPUTATIONS
                              Yeturu Aahlad and J. C. Browne
                                       October 1987
                                         50 pages
            
            ABSTRACT:   A  fundamental  issue  in  the  design  of  distributed
            sequencing protocols which greatly impacts performance is the level
            of  optimism  at which they operate. "Optimistic" and "pessimistic"
            protocols such as those proposed  by  [Jefferson]  and  [Schneider]
            respectively, represent end-points of a spectrum of protocols which
            we call "balanced." We illustrate with an example that the  optimal
            balance  between  the  extremes  of  optimism and pessimism may lie
            anywhere in this spectrum. We then lay the ground-work for a  study
            dealing  with  the  selection  of an appropriate protocol from this
            spectrum and the impact of such a choice upon performance.  Towards
            this end, a general purpose protocol capable of executing any given
            distributed  program  at  any  specified  level  of   optimism   is
            presented.


TR-87-40    DISTRIBUTED PROCESSING OF LOGIC PROGRAMS
                             Ouri Wolfson and Avi Silberschatz
                                       October 1987
                                         14 pages
            
            ABSTRACT: This paper  is  concerned  with  the  issue  of  parallel
            evaluation  of  logic  programs.  To address this issue we define a
            new  concept  of  predicate  decomposability.  If  a  predicate  is
            decomposable, it means that:

               - its  evaluation  can  be conducted in parallel by several
                 processors, without communication among them.

               - the computation-time by k processors is roughly equal  to
                 1/k of the time required by one processor.

            On   both   accounts   decomposability  is  a  stronger  notion  of
            amenability  to  parallel  evaluation  than  the  widely   accepted
            membership-in-the-NC-complexity-class.   The  reason  is  that  the
            latter notion may necessitate communication among  the  processors,
            and may not reduce computation time as drastically.

            We  completely  characterize  three classes of single rule programs
            (sirups) with respect to decomposability: nonrecursive, linear, and
            simple chain programs. All three classes were studied previously in
            various contexts.  We  establish  that  nonrecursive  programs  are
            decomposable,  whereas for the other two classes we determine which
            ones are, and which ones are not decomposable.  We  also  establish
            two sufficient conditions for sirup decomposability.

TR-87-41    MANAGEMENT OF STRATIFIED DATABASES
                           Krzysztof R. Apt and Jean-Marc Pugin
                                       November 1987
                                         25 pages
            
            ABSTRACT: We propose  here  a  knowledge  based  management  system
            supporting  immediate  visualization  and  simulation facilities in
            presence of non-monotonic reasoning. It is based on a special class
            of  indefinite  deductive  databases,  called stratified databases,
            introduced in APT, BLAIR and WALKER [ABW] and VAN GELDER  [VG],  in
            which recursion "through" negation is disallowed.

            A  stratified database has a natural model associated with it which
            is selected as its intended meaning.  The  main  technical  problem
            addressed  here  is the task of maintaining this model. To solve it
            we refine the ideas present in the works of DOYLE [D] and DE  KLEER
            [dK] on belief revision systems. We also discuss the implementation
            issues and the trade-offs involved.


TR-87-42    TECHNIQUES AND DATA STRUCTURES FOR PARALLEL RESOURCE MANAGEMENT
                                        Jit Biswas
                                       November 1987
                                         200 pages
            
            ABSTRACT:  The  problem  of  managing  the  resources  of  a highly
            parallel system is viewed as the problem of simultaneously updating
            data structures that hold system state. We approach this problem in
            an  abstract  data  type  framework.  Simultaneous  update  may  be
            attained   in   two  ways:  by  decomposing  abstract  states  into
            components and allowing operations to  concurrently  transform  the
            state  of these components in a controlled manner, and by weakening
            the  specification  of  abstract  data  types  in  ways  that   are
            acceptable to entities using instances of abstract data types.

            This  thesis  contributes  to  parallel resource management in both
            ways.  First, we have considered management  of  system  state  for
            computation  structures  consisting  of arrays of computations that
            differ only in  indexing  parameters.    We  have  proposed  simple
            decompositions  of the externally visible state into simultaneously
            updatable components.  Second, we have considered the management of
            system  state  for  weakened  priority  queues.  The  two  priority
            structures proposed  in  this  thesis,  a  concurrent  heap  and  a
            software banyan, have been found to be efficient and effective.

            We have, in addition, contributed in the area of language tools for
            computations   that   utilize   predefined   abstract   data   type
            implementations.  A  mechanism for abstract data type definition is
            presented. To promote simultaneity of  update  we  have  defined  a
            significant   extension   of   the  linguistic  construct  of  path
            expressions and used it as a basis for defining  implementation  of
            sequencing  within abstract data types. The main advantage of using
            extended path expressions is that in  addition  to  synchronization
            requirements, binding of activities to object decompositions may be
            specified, along with runtime consistency checking,  while  leaving
            the  object  implementation  to  the  underlying  system.  We  have
            developed algorithms for the automatic synthesis of sequencing  and
            synchronization code.

            A  task level data flow language designed and implemented by us has
            provided a context and  a  testbed  for  ideas  presented  in  this
            thesis.

TR-87-43    PSYCHO:  A  GRAPHICAL  LANGUAGE  FOR SUPPORTING SCHEMA EVOLUTION IN
            OBJECT-ORIENTED DATABASES
                             Hyoung-Joo Kim and Henry F. Korth
                                       November 1987
                                         34 pages
            
            ABSTRACT:  One  of  the  important requirements of non-conventional
            applications such as  CAD/CAM,  AI,  and  OIS  (office  information
            systems)  with  multimedia  documents is schema evolution, that is,
            the ability to make a wide  variety  of  changes  to  the  database
            schema  dynamically. We provided a framework of schema evolution in
            [BKKK86,BKKK87] and  the  framework  was  realized  in  an  object-
            oriented database system, ORION at MCC.  Schema modifications using
            line-oriented interaction are difficult for the user to  manage  if
            class  lattices  are  complicated.  The  difficulty is even greater
            because there are a large number of types of schema  modifications.
            We  have  designed  and  implemented  a  graphical  language PSYCHO
            (Pictorial Schema-editor Yielding Class  Hierarchies  and  Objects)
            for  supporting  user  friendly and powerful schema modification in
            object-oriented databases.    In  this  paper,  following  a  brief
            overview of our schema evolution framework, we present the detailed
            exploration of PSYCHO.


TR-87-44    TDFL:  A TASK-LEVEL DATA FLOW LANGUAGE
                       Paul A. Suhler, Jit Biswas, and Kim M. Korner
                                       November 1987
                                         18 pages
            
            ABSTRACT:  The  Task-Level Data Flow Language (TDFL) is a graphical
            programming language intended for the writing of new  programs  and
            the adaptation of existing ones.  A computation is represented as a
            directed graph.  As each node  contains  a  subroutine-sized  task,
            this  is  considered  to  be  coarse-grained parallelism.  The task
            functions are written in standard sequential high-level  languages.
            Two  versions  have been implemented, one supporting static and one
            supporting  dynamic  computation  graphs.    This  paper  discusses
            previous  data  flow  languages,  presents  the definition of TDFL,
            describes its implementations on the Sequent Balance  shared-memory
            multiprocessors,   and   presents   several   programs   and  their
            performance figures.


TR-87-45    QUERY LANGUAGES FOR NESTED RELATIONAL DATABASES
                              Henry F. Korth and Mark A. Roth
                                       December 1987
                                         16 pages
            
            ABSTRACT: The nested relational model has proven useful in modeling
            databases of complex objects.  In  this  paper  we  consider  query
            languages designed specifically to exploit the power of this model.
            First, formal query languages are considered: a relational calculus
            defining  the  desired  power of nested relational languages, and a
            relational algebra that provides a procedural language suitable for
            query  optimization. Next, two higher-level languages are discussed
            and compared, SQL/NF, and Heidelberg Data Base Language (HDBL). Two
            extensions  of  these  languages  are  considered.  X-SQL/NF  is  a
            role-join extended version  of  SQL/NF  that  incorporates  an  ISA
            hierarchy  into  the semantics of the language. A recursive version
            of HDBL allows the definition of a transitive closure operation  on
            nested relations.

TR-87-46    A PROTOTYPE VIEW UPDATE TRANSLATION FACILITY
                            Arthur M. Keller and Laurel Harvey
                                       December 1987
                                         11 pages
            
            ABSTRACT: We describe a prototype implementation of a  view  update
            translation  facility.  This facility consists of two programs: one
            for defining the view and specifying the view update semantics  and
            the  other for translating view updates into database updates based
            on  these  semantics.  The  first  program  is  run  once  at  view
            definition  time  and obtains the necessary semantics by asking the
            view definer a sequence of questions in an interactive dialog.  The
            second  program  takes  any  valid  requests  to insert, delete, or
            replace a single view tuple and performs the necessary  operations,
            if permitted, on the database to accomplish the view update request
            without any disambiguating  dialog.  Prototype  implementation  was
            simplified  by  not actually using a relational database system but
            rather all interaction normally with the database instead  is  with
            the  person running the program. This has the advantages of clearly
            showing all database operations and it eliminates the need  to  set
            up  a  database  with  desired  test  or  demonstration  cases. The
            database operations for performing a view update are those that are
            necessary  for  validating the request and changing the database in
            accordance with the specified semantics so that the view changes as
            requested.  Unnecessary  database operations have not been observed
            in this prototype system. The class of views that  can  be  updated
            using  this  prototype  system  is  a  large  class  of  selection,
            projection, and join views.


TR-87-47    FORMAL MODEL OF CORRECTNESS WITHOUT SERIALIZABILITY
                            Henry F. Korth and Gregory Speegle
                                       December 1987
                                         20 pages
            
            ABSTRACT:  In  the  classical approach to transaction processing, a
            concurrent  execution  is  considered  to  be  correct  if  it   is
            equivalent to a non-concurrent schedule. This notion of correctness
            is called serializability.  Serializability  has  proven  to  be  a
            highly  useful  concept for transaction systems for data-processing
            style applications. Recent interest in applying  database  concepts
            to   applications  in  computer-aided  design,  office  information
            systems, etc. has  resulted  in  transactions  of  relatively  long
            duration.  For such transactions, there are serious consequences to
            requiring   serializability   as   the   notion   of   correctness.
            Specifically,  such  systems  either  impose long-duration waits or
            require the abortion of long transactions. In this paper, we define
            a  transaction model that allows for several alternative notions of
            correctness  without  the  requirement  of  serializability.  After
            introducing  the  model,  we  investigate  classes of schedules for
            transactions in the model.  We show that these classes  are  richer
            than  analogous classes under the classical model. Finally, we show
            the potential practicality of our  model  by  describing  protocols
            that   permit  a  transaction  manager  to  allow  non-serializable
            executions that are correct under our model.
-------