Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
Publications

Publications by José Nuno Oliveira

2010

Matrices as Arrows! A Biproduct Approach to Typed Linear Algebra

Authors
Macedo, HD; Oliveira, JN;

Publication
MATHEMATICS OF PROGRAM CONSTRUCTION, PROCEEDINGS

Abstract
Motivated by the need to formalize generation of fast running code for linear algebra applications, we show how an index-free, calculational approach to matrix algebra can be developed by regarding matrices as morphisms of a category with biproducts. This shifts the traditional view of matrices as indexed structures to a type-level perspective analogous to that of the pointfree algebra of programming. The derivation of fusion, cancellation and abide laws from the biproduct equations makes it easy to calculate algorithms implementing matrix multiplication, the kernel operation of matrix algebra, ranging from its divide-and-conquer version to the conventional, iterative one. From errant attempts to learn how particular products and coproducts emerge from biproducts, we not only rediscovered block-wise matrix combinators but also found a way of addressing other operations calculationally such as e.g. Gaussian elimination. A strategy for addressing vectorization along the same lines is also given.

2006

Pointfree factorization of operation refinement

Authors
Oliveira, JN; Rodrigues, CJ;

Publication
FM 2006: FORMAL METHODS, PROCEEDINGS

Abstract
The standard operation refinement ordering is a kind of "meet of opposites": non-determinism reduction suggests "smaller" behaviour while increase of definition suggests "larger" behaviour. Groves' factorization of this ordering into two simpler relations, one per refinement concern, makes it more mathematically tractable but is far from fully exploited in the literature. We present a pointfree theory for this factorization which is more agile and calculational than the standard set-theoretic approach. In particular, we show that factorization leads to a simple proof of structural refinement for arbitrary parametric types and exploit factor instantiation across different subclasses of (relational) operation. The prospect of generalizing the factorization to coalgebraic refinement is discussed.

2008

Transforming Data by Calculation

Authors
Oliveira, JN;

Publication
GENERATIVE AND TRANSFORMATIONAL TECHNIQUES IN SOFTWARE ENGINEERING II

Abstract
This paper addresses the foundations of data-model trans formation. A catalog of data mappings is presented which includes abstraction and representation relations and associated constraints. These are justified in an algebraic style via the pointfree-transform, a technique whereby predicates are lifted to binary relation terms (of the algebra of programming) in a two-level style encompassing both data and operations. This approach to data calculation, which also includes transformation of recursive data models into "flat" database schemes, is offered as alternative to standard database design from abstract models. The calculus is also used to establish a link between the proposed transformational style and bidirectional tenses developed in the context of the classical view-update problem.

2002

Special issue on Mathematics of Program Construction (MPC 2000) Preface

Authors
Backhouse, R; Oliveira, J;

Publication
SCIENCE OF COMPUTER PROGRAMMING

Abstract

2011

Preparing for a literature survey of software architecture using Formal Concept Analysis

Authors
Couto, L; Oliveira, JN; Ferreira, M; Bouwers, E;

Publication
CEUR Workshop Proceedings

Abstract
The scientific literature on Software Architecture (SA) is extensive and dense. With no preparation, surveying this literature can be a daunting task for novices in the field. This paper resorts to the technique of Formal Concept Analysis (FCA) in organizing and structuring such a body of knowledge. We start by surveying a set of 38 papers bearing in mind the following questions: "What are the most supported definitions of software architecture?", "What are the most popular research topics in software architecture?", "What are the most relevant quality attributes of a software architecture?" and "What are the topics that researchers point out as being more interesting to explore in the future?". To answer these questions we classify each paper with appropriate keywords and apply FCA to such a classification. FCA allows us to structure our survey in the form of lattices of concepts which give evidence of main relationships involved. We believe our results will help in guiding a more comprehensive, in-depth study of the field, to be carried out in the future.

2004

Relational sampling for data quality auditing and decision support

Authors
Cortes, B; Oliveira, JN;

Publication
ICEIS 2004 - Proceedings of the Sixth International Conference on Enterprise Information Systems

Abstract
This paper presents a strategy for applying sampling techniques to relational databases, in the context of data quality auditing or decision support processes. Fuzzy cluster sampling is used to survey sets of records for correctness of business rules. Relational algebra estimators are presented as a data quality-auditing tool.

  • 11
  • 13