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
Publicações

Publicações por CRACS

2006

Logtalk processing of STEP Part 21 files

Autores
Moura, P; Marchetti, V;

Publicação
LOGIC PROGRAMMING, PROCEEDINGS

Abstract
STEP is an international standard for modeling information used in manufacturing activities; Part 21 is a STEP component that standardizes the exchange of this information through text files. We are working on applying logic programming techniques to processing STEP data models. The STEP standard specifies the entities, attributes, consistency rules, and functions used for describing and validating manufacturing information. Most STEP entities and data types are organized into hierarchies, making an object-oriented approach the most straightforward implementation solution. Our work uses Logtalk, an object oriented extension to Prolog, as the primary implementation tool.

2006

Handling incomplete and complete tables in tabled logic programs (Extended abstract)

Autores
Rocha, R;

Publicação
LOGIC PROGRAMMING, PROCEEDINGS

Abstract

2006

An external module for implementing linear tabling in prolog (Extended abstract)

Autores
Silva, C; Rocha, R; Lopes, R;

Publicação
LOGIC PROGRAMMING, PROCEEDINGS

Abstract

2006

Generic cut actions for external Prolog predicates

Autores
Soares, T; Rocha, R; Ferreira, M;

Publicação
PRACTICAL ASPECTS OF DECLARATIVE LANGUAGES

Abstract
An interesting feature of current Prolog systems is the ability to define external Prolog predicates that can be written in other languages. However, an important drawback of these interfaces is the fact that they lack some important features necessary to improve both the efficiency and the transparent integration of the Prolog system and the external predicates. Such an example is the cut operation. This operation is used quite often in Prolog programs, both for efficiency and semantic preservation. However, its use after a call to an externally defined predicate can have undesired effects. For example, if we have a pending connection to another application, or if we have memory blocks allocated by an external predicate, when a cut operation occurs, we may not be able to perform generic destruct actions, such as closing the pending connection or freeing the unnecessary memory. In this work, we propose an extension of the interface architecture that allows to associate generic user-defined functions with external predicates, in such a way that the Prolog engine transparently executes them when a cut operation occurs. We describe the implementation details of our proposal in the context of the Yap Prolog system.

2006

RepeatAround: A software tool for finding and visualizing repeats in circular genomes and its application to a human mtDNA database

Autores
Goios, A; Meirinhos, J; Rocha, R; Lopes, R; Amorim, A; Pereira, L;

Publicação
MITOCHONDRION

Abstract
RepeatAround is a Windows based software tool designed to find "direct repeats", "inverted repeats", "mirror repeats" and "complementary repeats", from 3 to 64 bp length, in circular genomes. It processes input files directly extracted from GenBank database, providing visualisation of the repeats location in the genomic structure, so that for instance, in most mtDNAs the user can check if the repeats are located in coding or non-coding region (and in the first case in which gene), and how far apart the repeat pair(s) are. Besides the visual tool, it provides other outputs in a spreadsheet containing information on the number and location of the repeats, facilitating graphic analyses. Several genomes can be inputed simultaneously, for phylogenetic comparison purposes. Other capabilities of the software are the generation of random circular genomes, for statistical evaluation of comparison between observed repeats distributions with their shuffled counterparts, as well as the search for specific motifs, allowing an easy confirmation of repeats flanking a newly detected rearrangement. As an example of the programme's applications we analysed the Direct Repeats distribution in a large human mtDNA database. Results showed that Direct Repeats, even the larger ones, are evenly distributed among the human mtDNA haplogroups, enabling us to state that, based only on the repetitive motifs, no haplogroup is particularly more or less prone to mtDNA macrodeletions.

2006

The design and implementation of the YAP compiler: An optimizing compiler for logic programming languages

Autores
Da Silva, AF; Costa, VS;

Publicação
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

Abstract

  • 169
  • 192