José Luis Freire
University of A Coruña
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by José Luis Freire.
Journal of Functional Programming | 2005
Víctor M. Gulías; Miguel Barreiro; José Luis Freire
In this paper, we present some experience of using the concurrent functional language Erlang to implement a distributed video-on-demand server. For performance reasons, the server is deployed in a cheap cluster made from off-the-shelf components. The demanding system requirements, in addition to the complex and ever-changing domain, suggested a highly flexible and scalable architecture as well as a quite sophisticated control software. Functional programming played a key role in the development, allowing us to identify functional abstractions throughout the system. Using these building blocks, large configurations can be defined using functional and process composition, reducing the effort spent on adapting the system to the frequent changes in requirements. The server evolved from a prototype that was the result of a project supported by a regional cable company, and it is currently being used to provide services for real-world users. Despite our initial concerns, efficiency has not been a major issue.
Journal of Symbolic Computation | 2009
J. Santiago Jorge; Víctor M. Gulías; José Luis Freire
This paper explores the certification of properties of an efficient functional program in the area of symbolic computation: the calculation of Grobner basis of a set of multivariate polynomials. Our experience in the development of industrial systems and the certification of some of its relevant properties has led us to use a methodology consisting of functional programs to write the code and the formal verification of fundamental properties. The functional language OBJECTIVE CAML has been chosen to implement the program. To verify the properties two approaches are explored: manual proofs that reason directly over the source code of the algorithms, applying techniques like equational reasoning, and theorem provers that are used as a tool to help us certify a model of the real system. The chosen proof assistant is COQ. Not only will the certification of the software be taken into consideration but also its efficiency. In addition, we present a graphical interface which eases the use of the program.
computer aided systems theory | 2005
José Luis Freire; E. Freire; Antonio Blanco
This paper presents a reflection about function construction through well-founded recursion in the type theory known as Calculus of Inductive Constructions. It shows the expressive power of this calculus when dealing with concepts as accesibility and noetherianity among others. The properties of the General Recursion Scheme ([2]) and its relation with Structural Recursion in inductive types are analyzed. As a consequence, a methodology arises which is illustrated with some examples.We use the INRIAs compiler of the Calculus of Inductive Constructions: Coq [6].
computer aided systems theory | 2001
José Luis Freire; José E. Freire Brañas; Antonio Blanco Ferro; Juan José Sánchez Penas
Fusion theorem is a classical result that allows the simplification of the morphisms among homogeneus structures [10]. We present this theorem and some generalizations in the context of the constructive proof assistant tool Coq [2] where we have dependent types and parametric polymorphism. The work is organised as follows: afther the classical interpretation of the fusion law for catamorphisms in a categoric context, examples of fusion for programs defined with recursive types in Coq are analysed and the theorems of corresponding optimisation are shown. Finally, a generalisation of fusion law for inductive types is presented which is applied to a specific case.
computer aided systems theory | 1997
J. M. Molinelli; J. M. Barja; Antonio Blanco; José Luis Freire
In this paper a general model, that allows different kinds of diagrams that appears in several fields of Science and Engineering to be integrated under the same representation, is proposed, and a computer aided graphical calculus system, enabling to manipulate these graphical representations in a semiautomatic way, is presented.
Proceedings of the Third Basque International Workshop on Information Technology - BIWIT'97 - Data Management Systems | 1997
José Luis Freire; Víctor M. Gulías; Xesús M. López
In this work, an integration of a relational database manager (Postgres95) and a functional language (Objective Caml) is shown. The main goal consists of providing a mechanism to save values in non volatile storage following the client-server approach. The existing relationships between the structures offered by databases and those of functional languages, such as lists or tuples, are identified. Besides, we show how the use of functional abstractions may simplify the development of queries to interact with the database manager.
computer aided systems theory | 2009
Antonio Blanco; Enrique Freire; José Luis Freire; Javier París
In the present work a Coq based approach is taken to characterize the foldl using a functorial structure from which an inductive type is determined. With μF being an initial F---algebra and (B,?) another F---algebra, two F---algebras with support B×μF are constructed and then coequalized. This coequalization morphism allows the definition of foldl structurally. After examining some significant examples we propose the following methodology to define a foldl operator. Let F be a polynomial endofunctor and (μF,inF) its initial algebra. We define two F---algebras with support B×μF, and h1,h2:F(B×μF) ?B ×μF constructed such that in one of them the argument of the initial type is syntactically (structurally) lower than that in the other. Then,
computer aided systems theory | 2007
Antonio Blanco; J. E. Freire; José Luis Freire
{\mathit{foldl}}:B\times\mu_F \rightarrow B
computer aided systems theory | 2005
J. Santiago Jorge; Víctor M. Gulías; José Luis Freire; Juan J. Sanchez
can be defined as a specific morphism that coequalizes them
computer aided systems theory | 2003
Carlos Abalde; Víctor M. Gulías; José Luis Freire; Juan J. Sanchez; J. García-Tizón
(h_1;{\mathit{foldl}}=h_2;{\mathit{foldl}}).