Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Alfred L. Brown is active.

Publication


Featured researches published by Alfred L. Brown.


BMC Bioinformatics | 2007

Estimating the annotation error rate of curated GO database sequence annotations

Craig E Jones; Alfred L. Brown; Ute Baumann

BackgroundAnnotations that describe the function of sequences are enormously important to researchers during laboratory investigations and when making computational inferences. However, there has been little investigation into the data quality of sequence function annotations. Here we have developed a new method of estimating the error rate of curated sequence annotations, and applied this to the Gene Ontology (GO) sequence database (GOSeqLite). This method involved artificially adding errors to sequence annotations at known rates, and used regression to model the impact on the precision of annotations based on BLAST matched sequences.ResultsWe estimated the error rate of curated GO sequence annotations in the GOSeqLite database (March 2006) at between 28% and 30%. Annotations made without use of sequence similarity based methods (non-ISS) had an estimated error rate of between 13% and 18%. Annotations made with the use of sequence similarity methodology (ISS) had an estimated error rate of 49%.ConclusionWhile the overall error rate is reasonably low, it would be prudent to treat all ISS annotations with caution. Electronic annotators that use ISS annotations as the basis of predictions are likely to have higher false prediction rates, and for this reason designers of these systems should consider avoiding ISS annotations where possible. Electronic annotators that use ISS annotations to make predictions should be viewed sceptically. We recommend that curators thoroughly review ISS annotations before accepting them as valid. Overall, users of curated sequence annotations from the GO database should feel assured that they are using a comparatively high quality source of information.


The Computer Journal | 1988

Safe browsing in a strongly typed persistent environment

Alan Dearle; Alfred L. Brown

The need to examine data structures often occurs in programming language and database management systems. In this paper we describe how a browser for a strongly typed programming language ( PS-algol ) may be written in a type secure manner in a closed persistent environment. This is achieved without resorting to magic or having to break the type rules of the language by exploiting a compiler that is a object with full civil rights in the environment. The use of impact of such an object is discussed. Safe Browsing in a Strongly Typed Persistent Environment Page 3


ACM Transactions on Programming Languages and Systems | 1991

An ad hoc approach to the implementation of polymorphism

Ronald Morrison; Alan Dearle; Richard C. H. Connor; Alfred L. Brown

Polymorphic abstraction provides the ability to write programs that are independent of the form of the data over which they operate. It has proved difficult to provide efficient implementations of polymorphism. This paper addresses this problem and describes a new technique which can implement all forms of polymorphism, use a conventional machine architecture and support non-uniform data representations. Furthermore, the method ensures that any extra cost of implementation applies to polymorphic forms only and allows such polymorphic forms to persist over program invocations.


BMC Bioinformatics | 2005

Automated methods of predicting the function of biological sequences using GO and BLAST

Craig E Jones; Ute Baumann; Alfred L. Brown

BackgroundWith the exponential increase in genomic sequence data there is a need to develop automated approaches to deducing the biological functions of novel sequences with high accuracy. Our aim is to demonstrate how accuracy benchmarking can be used in a decision-making process evaluating competing designs of biological function predictors. We utilise the Gene Ontology, GO, a directed acyclic graph of functional terms, to annotate sequences with functional information describing their biological context. Initially we examine the effect on accuracy scores of increasing the allowed distance between predicted and a test set of curator assigned terms. Next we evaluate several annotator methods using accuracy benchmarking. Given an unannotated sequence we use the Basic Local Alignment Search Tool, BLAST, to find similar sequences that have already been assigned GO terms by curators. A number of methods were developed that utilise terms associated with the best five matching sequences. These methods were compared against a benchmark method of simply using terms associated with the best BLAST-matched sequence (best BLAST approach).ResultsThe precision and recall of estimates increases rapidly as the amount of distance permitted between a predicted term and a correct term assignment increases. Accuracy benchmarking allows a comparison of annotation methods. A covering graph approach performs poorly, except where the term assignment rate is high. A term distance concordance approach has a similar accuracy to the best BLAST approach, demonstrating lower precision but higher recall. However, a discriminant function method has higher precision and recall than the best BLAST approach and other methods shown here.ConclusionAllowing term predictions to be counted correct if closely related to a correct term decreases the reliability of the accuracy score. As such we recommend using accuracy measures that require exact matching of predicted terms with curator assigned terms. Furthermore, we conclude that competing designs of BLAST-based GO term annotators can be effectively compared using an accuracy benchmarking approach. The most accurate annotation method was developed using data mining techniques. As such we recommend that designers of term annotators utilise accuracy benchmarking and data mining to ensure newly developed annotators are of high quality.


international workshop on persistent object systems | 1989

The Persistent Abstract Machine

Richard C. H. Connor; Alfred L. Brown; Raymund Carrick; Alan Dearle; Ronald Morrison

The Persistent Abstract Machine is an integral part of a layered architecture model to support the Napier language. It interfaces cleanly with a persistent store, and allows persistence to be implemented without difficulty in a high-level language. The heap based storage mechanism of the Persistent Abstract Machine is designed to support the block retention nature of the Napier language. This allows the implementation of first ciass procedures and modules in programming languages with the minimum of effort. A primitive type system within the machine contains just enough information to allow machine instructions which behave differently according to the dynamic type of their operands. This type system, in conjunction with the block retention architecture, may be used to great effect to provide a fast implementation of polymorphic procedures, abstract data types, inheritance and bounded universal quantification.


international workshop on persistent object systems | 1989

The Napier Type System

Ronald Morrison; Alfred L. Brown; Raymund Carrick; Richard C. H. Connor; Alan Dearle; Malcolm P. Atkinson

Persistent programming is concerned with the construction of large and long lived systems of data. In designing and building persistent object systems, we are attempting to regularise the activities that are performed on data by programming languages, operating systems, database management systems and file systems. We have identified the following areas of research which we are investigating in the context of persistent systems. They are: controlling complexity, protection of data, orthogonal persistence, controlled system evolution and concurrent computation.


hawaii international conference on system sciences | 1992

An open system architecture for a persistent object store

Alfred L. Brown; G. Mainetto; Florian Matthes; R. Mueller; D.J. McNally

The authors describe an open system architecture for a persistent object store which is able to support a disparate range of persistent programming languages and their individual requirements. The ideal architecture would combine the flexibility and safety of a highly modular system with the performance of a tuned production system. The authors present an approach towards the ideal by realising part of the interface to the persistent object store in terms of conventions. This permits the costly use of interfaces to be circumvented on the basis of trust. The persistent object store may be used to construct programming language specific instances of the open architecture. To date the open architecture has been used to implement the persistent programming language Napier88, the functional programming language STAPLE, the object-oriented database programming language Galileo and the typeful programming language Quest.<<ETX>>


Software Engineering Journal | 1987

Polymorphism, persistence and software re-use in a strongly typed object-oriented environment

Ronald Morrison; Alfred L. Brown; Raymund Carrick; Richard C. H. Connor

The major requirements of a system for software re-use are that it must provide an abstraction mechanism for adequately describing the components, a mechanism for naming and storing the components, and a mechanism for composing new objects out of existing components. This paper describes a polymorphic type system that may be used to describe generic components and a persistence mechanism that may be used to name, store and compose components. By integrating the two, a strongly typed persistent environment that is an ideal base as a system for software re-use is obtained.


Archive | 1990

A Layered Persistent Architecture for Napier88

Alfred L. Brown; Ronald Morrison; David S. Munro; Alan Dearle; John Rosenberg

In recent years a range of single programming language systems have been developed that are supported by a persistent store. Examples of such systems include Argus, Galileo, PS-algol and Smalltalk. Although each of these systems is based on a subtly different concept of persistence a common approach is to utilise a layered architecture. This paper presents the design of one such layered architecture that can be used to support a persistent object store where the protection is enforced by a high level type system. The architecture has been used to construct the persistent programming system for Napier88 and is powerful enough to support languages with similar type systems.


Software Engineering Journal | 1992

A generic persistent object store

Alfred L. Brown; Ronald Morrison

Persistent programming systems have demonstrated the benefits of abstracting over the implementation details related to the storage and manipulation of long-term data. In particular, programming systems in which persistence is provided as an orthogonal property of all data types have been used to produce cost-effective implementations of applications such as integrated programming support environments. In this paper, we describe a generic architecture that supports persistent programming. In particular, the provision of an object store is highlighted, outlining its design aims and resultant structure. The application of the architecture in a wide variety of programming paradigms is reported.

Collaboration


Dive into the Alfred L. Brown's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Alan Dearle

University of St Andrews

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Craig E Jones

Australian Centre for Plant Functional Genomics

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Ute Baumann

Australian Centre for Plant Functional Genomics

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge