Cookies
O website necessita de alguns cookies e outros recursos semelhantes para funcionar. Caso o permita, o INESC TEC irá utilizar cookies para recolher dados sobre as suas visitas, contribuindo, assim, para estatísticas agregadas que permitem melhorar o nosso serviço. Ver mais
Aceitar Rejeitar
  • Menu
Tópicos
de interesse
Detalhes

Detalhes

  • Nome

    Vítor Santos Costa
  • Cargo

    Investigador Sénior
  • Desde

    01 janeiro 2009
006
Publicações

2025

Program Synthesis Using Inductive Logic Programming for the Abstraction and Reasoning Corpus

Autores
Rocha, FM; Dutra, I; Costa, VS;

Publicação
INTELLIGENZA ARTIFICIALE

Abstract
The Abstraction and Reasoning Corpus (ARC-AGI) is an Artificial General Intelligence benchmark that is currently unsolved. It demands strong generalization and reasoning capabilities, which are known to be weaknesses of Neural Network based systems. In this work, we propose a Program synthesis system to solve it, which casts an ARC-AGI task as a sequence of Inductive Logic Programming tasks. We have implemented a simple Domain Specific Language that corresponds to a small set of object-centric abstractions relevant to the benchmark. This allows for adequate representations to be used to create logic programs, which provide reasoning capabilities to our system. When solving each task, the proposed system can generalize from a few training pairs of input-output grids. The obtained logic programs are able to generate objects present in the output grids and can transform the test input grid into the output grid solution. We developed our system based on some ARC-AGI tasks that do not require more than the small number of primitives that we implemented and showed that our system can solve unseen tasks that require different reasoning.

2025

Regular Typed Unification

Autores
Barbosa, J; Florido, M; Costa, VS;

Publicação
ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE

Abstract
Here we define a new unification algorithm for terms interpreted in semantic domains denoted by a subclass of regular types here called deterministic regular types. This reflects our intention not to handle the semantic universe as a homogeneous collection of values, but instead, to partition it in a way that is similar to data types in programming languages. We first define the new unification algorithm which is based on constraint generation and constraint solving, and then prove its main properties: termination, soundness, and completeness with respect to the semantics. Finally, we discuss how to apply this algorithm to a dynamically typed version of Prolog.

2025

On Bridging Prolog and Python to Enhance an Inductive Logic Programming System

Autores
Costa, VS; Areias, M;

Publicação
PRACTICAL ASPECTS OF DECLARATIVE LANGUAGES, PADL 2025

Abstract
Prolog is a programming language that provides a high-level approach to software development. Python is a versatile programming language that has a vast range of libraries including support for data analysis and machine learning tasks. We present a Prolog-Python interface that aims at exploiting Prolog deduction capabilities and Python's extensive libraries. Our novel interface was built using a divide and conquer methodology. In a first step, we implemented a set of C++ classes that can be matched to Python classes; next, we used an interface generator to export the relevant classes. Finally, we use C code to actually convert between the two realms. In order to demonstrate the usefulness of the interface, we enhance an Inductive Logic Programming System with a visualization capabilities and show how to interface with a standard classifier.

2024

Yet Another Lock-Free Atom Table Design for Scalable Symbol Management in Prolog

Autores
Moreno, P; Areias, M; Rocha, R; Costa, VS;

Publicação
INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING

Abstract
Prolog systems rely on an atom table for symbol management, which is usually implemented as a dynamically resizeable hash table. This is ideal for single threaded execution, but can become a bottleneck in a multi-threaded scenario. In this work, we replace the original atom table implementation in the YAP Prolog system with a lock-free hash-based data structure, named Lock-free Hash Tries (LFHT), in order to provide efficient and scalable symbol management. Being lock-free, the new implementation also provides better guarantees, namely, immunity to priority inversion, to deadlocks and to livelocks. Performance results show that the new lock-free LFHT implementation has better results in single threaded execution and much better scalability than the original lock based dynamically resizing hash table.

2024

The Impact of Feature Selection on Balancing, Based on Diabetes Data

Autores
Machado, D; Costa, VS; Brandao, P;

Publicação
BIOMEDICAL ENGINEERING SYSTEMS AND TECHNOLOGIES, BIOSTEC 2023

Abstract
Diabetes management data is composed of diverse factors and glycaemia indicators. Glycaemia predictive models tend to focus solely on glycaemia values. A comprehensive understanding of diabetes management requires the consideration of several aspects of diabetes management, beyond glycaemia. However, the inclusion of every aspect of diabetes management can create an overly high-dimensional data set. Excessive feature spaces increase computational complexity and may introduce over-fitting. Additionally, the inclusion of inconsequential features introduces noise that hinders a model's performance. Feature importance is a process that evaluates a feature's value, and can be used to identify optimal feature sub-sets. Depending on the context, multiple methods can be used. The drop feature method, in the literature, is considered to be the best approach to evaluate individual feature importance. To reach an optimal set, the best approach is branch and bound, albeit its heavy computational cost. This overhead can be addressed through a trade-off between the feature set's optimisation level and the process' computational feasibility. The improvement of the feature space has implications on the effectiveness of data balancing approaches. Whilst, in this study, the observed impact was not substantial, it warrants the need to reconsider the balancing approach given a superior feature space.

Teses
supervisionadas

2023

Towards Early detection of faults and failures in complex systems

Autor
Christopher David Harrison

Instituição
UP-FCUP

2023

Advising Diabetes’ self-management supported by user data in a mobile platform

Autor
Diogo Roberto de Melo e Diogo Machado

Instituição
UP-FCUP

2023

Overcoming the current limitations of Reinforcement Learning towards Artificial General Intelligence

Autor
Filipe Emanuel dos Santos Marinho da Rocha

Instituição
UP-FCUP

2023

Type Assignment in Logic Programming

Autor
João Luis Alves Barbosa

Instituição
UP-FCUP

2023

Towards Early detection of faults and failures in complex systems

Autor
Christopher David Harrison

Instituição
UP-FCUP