2013
Autores
Tomas, AP; Leal, JP;
Publicação
PRINCIPLES AND PRACTICE OF CONSTRAINT PROGRAMMING, CP 2013
Abstract
We present an application of constraint logic programming to create multiple-choice questions for math quizzes. Constraints are used for the configuration of the generator, giving the user some flexibility to customize the forms of the expressions arising in the exercises. Constraints are also used to control the application of the buggy rules in the derivation of plausible wrong solutions to the quiz questions. We developed a prototype based on the core system of AGILMAT [18]. For delivering math quizzes to students, we used an automatic evaluation feature of Mooshak [8] that was improved to handle math expressions. The communication between the two systems - AgilmatQuiz and Mooshak - relies on a specially designed LATEX based quiz format. This tool is being used at our institution to create quizzes to support assessment in a PreCalculus course for first year undergraduate students.
2013
Autores
Leal, JP; Rocha, R; Simões, A;
Publicação
OpenAccess Series in Informatics
Abstract
2013
Autores
Queirós, Ricardo; Leal, José Paulo;
Publicação
Journal of Universal Computer Science
Abstract
E-Learning frameworks are conceptual tools to organize networks of elearning services. Most frameworks cover areas that go beyond the scope of e-learning, from course to financial management, and neglects the typical activities in everyday life of teachers and students at schools such as the creation, delivery, resolution and evaluation of assignments. This paper presents the Ensemble framework - an e-learning framework exclusively focused on the teaching-learning process through the coordination of pedagogical services. The framework presents an abstract data, integration and evaluation model based on content and communications specifications. These specifications must base the implementation of networks in specialized domains with complex evaluations. In this paper we specialize the framework for two domains with complex evaluation: computer programming and computer-aided design (CAD). For each domain we highlight two Ensemble hotspots: data and evaluations procedures. In the former we formally describe the exercise and present possible extensions. In the latter, we describe the automatic evaluation procedures.
2013
Autores
Castro, S; Mens, K; Moura, P;
Publicação
Practical Aspects of Declarative Languages - 15th International Symposium, PADL 2013, Rome, Italy, January 21-22, 2013. Proceedings
Abstract
While object-oriented programming languages are good at modelling real-world concepts and benefit from rich libraries and developer tools, logic programming languages are well suited for declaratively solving computational problems that require knowledge reasoning. Non-trivial declarative applications could take advantage of the modelling features of object-oriented programming and of the rich software ecosystems surrounding them. Linguistic symbiosis is a common approach to enable complementary use of languages of different paradigms. However, the problem of concepts leaking from one paradigm to another often hinders the applicability of such approaches. This issue has mainly been reported for object-oriented languages participating in a symbiotic relation with a logic language. To address this issue, we present LogicObjects, a linguistic symbiosis framework for transparently and (semi-) automatically enabling logic programming in Java, that aims to solve most of the problems of paradigm leaking reported in other works. © 2013 Springer-Verlag.
2013
Autores
Moura, P;
Publicação
Practical Aspects of Declarative Languages - 15th International Symposium, PADL 2013, Rome, Italy, January 21-22, 2013. Proceedings
Abstract
We describe the portable and efficient implementation of coinductive logic programming found in Logtalk, discussing its features and limitations. As Logtalk uses as a back-end compiler a compatible Prolog system, we also discuss the status of key Prolog features for an efficient and usable implementation of coinduction. © 2013 Springer-Verlag.
2013
Autores
Corte Real, J; Dutra, I; Rocha, R;
Publicação
Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming, PPDP 2013
Abstract
Map-Reduce is a programming model that has its roots in early functional programming. In addition to producing short and elegant code for problems involving lists or collections, this model has proven very useful for large-scale highly parallel data processing. In this work, we present the design and implementation of a high-level parallel construct that makes the Map-Reduce programming model available for Prolog programmers. To the best of our knowledge, there is no Map-Reduce framework native to Prolog, and so the aim of this work is to offer data processing features from which several applications can greatly benefit; the Inductive Logic Programming field, for instance, can take advantage of a Map-Reduce predicate when proving newly created rules against sets of examples. Our Map-Reduce model was comprehensively tested with different applications. Our experiments, using the Yap Prolog system, show that: (i) the model scales linearly up to 24 processors; (ii) a dynamic distributed scheduling strategy performs better than centralized or static scheduling strategies; and (iii) the performance varies significantly with the number of items being sent to each processor at a time. Overall, our Map-Reduce framework presents as a good alternative for both taking advantage of the currently available low cost multi-core architectures and developing scalable data processing applications, native to the Prolog programming language. © 2013 ACM.
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.