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 Alexandra Sofia Mendes

2023

bGSL: An imperative language for specification and refinement of backtracking programs

Autores
Dunne, S; Ferreira, JF; Mendes, A; Ritchie, C; Stoddart, B; Zeyda, F;

Publicação
JOURNAL OF LOGICAL AND ALGEBRAIC METHODS IN PROGRAMMING

Abstract
We present an imperative refinement language for the development of backtracking programs and discuss its semantic foundations. For expressivity, our language includes prospective values and preference - the latter being a variant of Nelson's biased choice that backtracks from infeasibility of a continuation. Our key contribution is to examine feasibility-preserving refinement as a basis for developing backtracking programs, and several key refinement laws that enable compositional refinement in the presence of non -monotonic program combinators.

2021

Formal Methods Teaching

Autores
Ferreira, JF; Mendes, A; Menghi, C;

Publicação
Lecture Notes in Computer Science

Abstract

2014

Structure Editing of Handwritten Mathematics

Autores
Mendes, A; Backhouse, R; Ferreira, JF;

Publicação
Proceedings of the Ninth ACM International Conference on Interactive Tabletops and Surfaces - ITS '14

Abstract

2017

Certified Password Quality

Autores
Ferreira, JF; Johnson, SA; Mendes, A; Brooke, PJ;

Publicação
Lecture Notes in Computer Science - Integrated Formal Methods

Abstract

2017

Certified Password Quality - A Case Study Using Coq and Linux Pluggable Authentication Modules

Autores
Ferreira, JF; Johnson, SA; Mendes, A; Brooke, PJ;

Publicação
IFM

Abstract
We propose the use of modern proof assistants to specify, implement, and verify password quality checkers. We use the proof assistant Coq, focusing on Linux PAM, a widely-used implementation of pluggable authentication modules for Linux. We show how password quality policies can be expressed in Coq and how to use Coq’s code extraction features to automatically encode these policies as PAM modules that can readily be used by any Linux system. We implemented the default password quality policy shared by two widely-used PAM modules: pam_cracklib and pam_pwquality. We then compared our implementation with the original modules by running them against a random sample of 100,000 leaked passwords obtained from a publicly available database. In doing this, we demonstrated a potentially serious bug in the original modules. The bug was reported to the maintainers of Linux PAM and is now fixed.

2014

Structure Editing of Handwritten Mathematics: Improving the Computer Support for the Calculational Method

Autores
Mendes, A; Backhouse, RC; Ferreira, JF;

Publicação
ITS

Abstract
We present a structure editor that aims to facilitate the presentation and manipulation of handwritten mathematical expressions. The editor is oriented to the calculational mathematics involved in algorithmic problem solving and it provides features that allow reliable structure manipulation of mathematical formulae, as well as flexible and interactive presentations. We describe some of its most important features, including the use of gestures to manipulate algebraic formulae, the structured selection of expressions, definition and redefinition of operators in runtime, gesture's editor, and handwritten templates. The editor is made available in the form of a C# class library which can be easily used to extend existing tools. For example, we have extended Classroom Presenter, a tool for ink-based teaching presentations and classroom interaction. We have tested and evaluated the editor with target users. The results obtained seem to indicate that the software is usable, suitable for its purpose and a valuable contribution to teaching and learning algorithmic problem solving.

  • 8
  • 10