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
About

About

I am professor of Computer Science at the Informatics Department of University of Minho and researcher at HASLab/ INESC TEC. I am also a member of IFIP WG 2.1 (Algorithmic Languages and Calculi) and of the Formal Methods Europe (FME) Association. I serve on the editorial board of Springer journal Formal Aspects of Computing.
RESEARCH 
My research interests are focussed on formal methods, algebra of programming (program calculation) and functional programming. I've published recently on relation algebra and its application to programming. Currently, I am developing a linear algebra of programming which I want to apply to the verification of complex software systems, including quantum ptogramming.

Interest
Topics
Details

Details

  • Name

    José Nuno Oliveira
  • Role

    Research Coordinator
  • Since

    01st November 2011
004
Publications

2024

Alloy Goes Fuzzy

Authors
Silva, P; Cunha, A; Macedo, N; Oliveira, JN;

Publication
RIGOROUS STATE-BASED METHODS, ABZ 2024

Abstract
Humans are good at understanding subjective or vague statements which, however, are hard to express in classical logic. Fuzzy logic is an evolution of classical logic that can cope with vague terms by handling degrees of truth and not just the crisp values true and false. Logic is the formal basis of computing, enabling the formal design of systems supported by tools such as model checkers and theorem provers.This paper shows how a model checker such as Alloy can evolve to handle both classical and fuzzy logic, enabling the specification of high-level quantitative relational models in the fuzzy domain. In particular, the paper showcases how QAlloy-F (a conservative, general-purpose quantitative extension to standard Alloy) can be used to tackle fuzzy problems, namely in the context of validating the design of fuzzy controllers. The evaluation of QAlloy-F against examples taken from various classes of fuzzy case studies shows the approach to be feasible.

2024

On the Relational Basis of Early R/G Work

Authors
Oliveira, N;

Publication
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

Abstract
The R/G approach to the development of interfering programs was initiated by the pioneering work of Cliff Jones (1981) on a relational basis. R/G has been the subject of much research since then, most of it deviating from the original relational set-up. This paper looks at such early work from a historical perspective and shows how it can be approached and extended using state-of-the-art relational algebra. © The Author(s), under exclusive license to Springer Nature Switzerland AG 2024.

2023

On difunctions

Authors
Backhouse, R; Oliveira, JN;

Publication
JOURNAL OF LOGICAL AND ALGEBRAIC METHODS IN PROGRAMMING

Abstract
The notion of a difunction was introduced by Jacques Riguet in 1948. Since then it has played a prominent role in database theory, type theory, program specification and process theory. The theory of difunctions is, however, less known in computing than it perhaps should be. The main purpose of the current paper is to give an account of difunction theory in relation algebra, with the aim of making the topic more mainstream.As is common with many important concepts, there are several different but equivalent characterisations of difunctionality, each with its own strength and practical significance. This paper compares different proofs of the equivalence of the characterisations. A well-known property is that a difunction is a set of completely disjoint rectangles. This property suggests the introduction of the (general) notion of the core of a relation; we use this notion to give a novel and, we believe, illuminating characterisation of difunctionality as a bijection between the classes of certain partial equivalence relations.& COPY; 2023 The Authors. Published by Elsevier Inc. This is an open access article under the CC BY license (http://creativecommons .org /licenses /by /4 .0/).

2023

Why Adjunctions Matter—A Functional Programmer Perspective

Authors
Oliveira, JN;

Publication
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

Abstract
For the average programmer, adjunctions are (if at all known) more respected than loved. At best, they are regarded as an algebraic device of theoretical interest only, not useful in common practice. This paper is aimed at showing the opposite: that adjunctions underlie most of the work we do as programmers, in particular those using the functional paradigm. However, functions alone are not sufficient to express the whole spectrum of programming, with its dichotomy between specifications—what is (often vaguely) required—and implementations—how what is required is (hopefully well) implemented. For this, one needs to extend functions to relations. Inspired by the pioneering work of Ralf Hinze on “adjoint (un)folds”, the core of the so-called (relational) Algebra of Programming is shown in this paper to arise from adjunctions. Moreover, the paper also shows how to calculate recursive programs from specifications expressed by Galois connections—a special kind of adjunction. Because Galois connections are easier to understand than adjunctions in general, the paper adopts a tutorial style, starting from the former and leading to the latter (a path usually not followed in the literature). The main aim is to reconcile the functional programming community with a concept that is central to software design as a whole, but rarely accepted as such. © 2023, Springer Nature Switzerland AG.

2022

A tribute to Jose Manuel Valenca

Authors
Oliveira, JN; Pinto, JS; Barbosa, LS; Henriques, PR;

Publication
JOURNAL OF LOGICAL AND ALGEBRAIC METHODS IN PROGRAMMING

Abstract
The present Special Issue of the Journal of Logical and Algebraic Methods in Programming was planned as a tribute to Jose Manuel Esgalhado Valenca on the occasion of his Jubilation. A tribute to a professor, in the deepest sense of the word, a colleague and a friend, but above all to a long and inspiring academic journey that has so profoundly shaped the development of Informatics as a scientific area in Portugal. A scientific area that, as he taught us, needs to be understood broadly: not only as an independent research domain, but also as an educational pillar, a strategy for social and economic development, a foundation for a multifaceted professional career. This preface introduces some steps of such a journey. The Special Issue features a selection of scientific papers written by his collaborators, colleagues and friends, covering the different areas Jose Valenca helped to launch and consolidate in Portugal, namely computational logic, verification and mechanized reasoning, and information security. (c) 2022 Published by Elsevier Inc.

Supervised
thesis

2023

Towards a typed linear algebra formal semantics for spreadsheets

Author
Rui Filipe Brito Azevedo

Institution
UM

2023

Functional Programming for Explainable AI

Author
Gonçalo José Azevedo Esteves

Institution
UM

2023

Towards ‘Just Good Enough’ Quantum Programming

Author
Ana Isabel Carvalho Neri

Institution
UM

2023

Verificação e descoberta de modelos probabilísticos no Alloy Analyser.

Author
Pedro Faria Durães da Silva

Institution
UM

2022

Processamento Analítico com Álgebra Linear Tipada em MonetDB

Author
Lucas Ribeiro Pereira

Institution
UM