Dr Hiroyuki Sato

Analysis of Expressive Power of Idiom Recognition System using Term Rewriting Theory

Much effort has been performed on developing parallel zing compilers. However, it is becoming clear that parallel zing compilers are much harder to develop than successful vector zing compilers. Idiom recognition can be a bridge between abstract source programs and concrete architectures, and has been proved to be a useful tool for the maintenance of complicated parallel programs. It can remove obstacles of gaps between the two which cannot be bridged by compilers of today's state of the art.

A major problem in idiom recognition is the intermediate representation. In this talk we apply term rewriting theory --a very general framework to the idiom recognition system. Specifically, we apply it to the idiom recognition problem of Fortran90/95 matrix manipulations, and show that Fortran90/95 system is never a trivial system. Straight forms are introduced to make the idiom recognition system more powerful. We make a completion procedure on this Fortran90/95 system, and show some non-trivial idiom recognition using our theory.

Andrew Oldham

Destination: Internet Economy

Internet is changing the economy forever -- the 21st Century will see us all living and working in an Internet Economy, a change as major as any since the Industrial Revolution.

This presentation looks at how the Internet Economy is growing and Intel's predictions for its impact. In particular, we will examine how businesses are starting to change to meet the challenges of the Internet and how this means the emergence of a very different business world in the next few years.

Phil May

Minimizing latency in a multimedia conference Multiport Control

This seminar discusses the challenges facing the developers of multipoint control units (MCUs - as used in multi-party audio, video and data conferencing) with particular regard to performance issues. Items covered are:-
  • Functional overview of a multipoint control unit
  • Causes of latency
  • Media packetization
  • Encoding,decoding and transcoding
  • Handling jitter
  • Media mixing
  • Bandwidth constraints and CPU/bandwidth trade-off
  • Error recovery
  • Ways of improving latency through the MCU

    Norbert E Fuchs

    Attempto Controlled English - Not Just Another Logic Specification Language

    The specification language Attempto Controlled English (ACE) is a controlled natural language, i.e. a subset of standard English with a domain-specific vocabulary and a restricted grammar. The restriction of full natural language to a controlled subset is essential for ACE to be suitable for specification purposes. The main goals of this restriction are to reduce ambiguity and vagueness inherent in full natural language and to make ACE computer process able. ACE specifications can be unambiguously translated into logic specification languages, and can be queried and executed. In brief, ACE allows domain specialists to express specifications in familiar natural language and combine this with the rigour of formal specification languages. Using ACE we have specified a simple automated teller machine, Kemmerer's library database problem, Schubert's steam-roller, and various other smaller specifications. Recently we used ACE as the input language of a theorem-prover and of a program synthesizer.

    Mike Burrows

    A library for indexing and querying text

    I will explain the main design decision in a general-purpose text indexing library. The library manages a set of inverted files, and provides mechanisms to construct and optimise Complex queries on those inverted files. It is a low-level library; it does not perform high-level functions such as parsing queries, parsing text to be indexed, or computing ranking scores. Instead it supplies the interface to allow these operations to be implemented. The design goals were to enable efficient queries on bodies of text up to a few hundred gigabytes in size (e.g. the library is used in AltaVista) without sacrificing too much generality, and without giving up on small applications (e.g. mail directories). The key design choices covered include:

  • the use of flat inverted files, and the techniques to allow their efficient update,
  • the byte-level format of the inverted files, and the sequence of instructions used to parse that format,
  • the internal abstractions used to construct complex queries.