3,679 research outputs found
Towards an Intelligent Tutor for Mathematical Proofs
Computer-supported learning is an increasingly important form of study since
it allows for independent learning and individualized instruction. In this
paper, we discuss a novel approach to developing an intelligent tutoring system
for teaching textbook-style mathematical proofs. We characterize the
particularities of the domain and discuss common ITS design models. Our
approach is motivated by phenomena found in a corpus of tutorial dialogs that
were collected in a Wizard-of-Oz experiment. We show how an intelligent tutor
for textbook-style mathematical proofs can be built on top of an adapted
assertion-level proof assistant by reusing representations and proof search
strategies originally developed for automated and interactive theorem proving.
The resulting prototype was successfully evaluated on a corpus of tutorial
dialogs and yields good results.Comment: In Proceedings THedu'11, arXiv:1202.453
The AutoProof Verifier: Usability by Non-Experts and on Standard Code
Formal verification tools are often developed by experts for experts; as a
result, their usability by programmers with little formal methods experience
may be severely limited. In this paper, we discuss this general phenomenon with
reference to AutoProof: a tool that can verify the full functional correctness
of object-oriented software. In particular, we present our experiences of using
AutoProof in two contrasting contexts representative of non-expert usage.
First, we discuss its usability by students in a graduate course on software
verification, who were tasked with verifying implementations of various sorting
algorithms. Second, we evaluate its usability in verifying code developed for
programming assignments of an undergraduate course. The first scenario
represents usability by serious non-experts; the second represents usability on
"standard code", developed without full functional verification in mind. We
report our experiences and lessons learnt, from which we derive some general
suggestions for furthering the development of verification tools with respect
to improving their usability.Comment: In Proceedings F-IDE 2015, arXiv:1508.0338
Z2SAL: a translation-based model checker for Z
Despite being widely known and accepted in industry, the Z formal specification language has not so far been well supported by automated verification tools, mostly because of the challenges in handling the abstraction of the language. In this paper we discuss a novel approach to building a model-checker for Z, which involves implementing a translation from Z into SAL, the input language for the Symbolic Analysis Laboratory, a toolset which includes a number of model-checkers and a simulator. The Z2SAL translation deals with a number of important issues, including: mapping unbounded, abstract specifications into bounded, finite models amenable to a BDD-based symbolic checker; converting a non-constructive and piecemeal style of functional specification into a deterministic, automaton-based style of specification; and supporting the rich set-based vocabulary of the Z mathematical toolkit. This paper discusses progress made towards implementing as complete and faithful a translation as possible, while highlighting certain assumptions, respecting certain limitations and making use of available optimisations. The translation is illustrated throughout with examples; and a complete working example is presented, together with performance data
A collaborative Mathematics Learning Using Differentiated Pedagogy
Our contribution represents a new method of learning mathematics by group through the differentiated pedagogy whose goal is to reduce the heterogeneity between learners in the classroom by using their knowledge, skills, and social profile. Indeed, there are different ways to implement a differentiated pedagogy. These methods must be considered by the teacher in order for his rehabilitation to be effective in student learning. Our approach specifically concerns differentiation by situation, it allows students to self-assess, and this to situate their knowledge and skills. In case of difficulty when assessing the learner, the approach uses group learning so that learners interact with each other without using the teacher. In the next works, we wish to integrate into our exerciser platform a module for the interaction of the students in order to discuss the difficulties and share the information between them
Towards multilingual domain module acquisition
Máster y Doctorado en Sistemas Informáticos Avanzados, Informatika Fakultatea - Facultad de InformáticaDOM-Sortze is a framework for Semi-Automatic development of Domain Modules, i.e., the pedagogical representation of the domain to be learnt. DOM-Sortze generates Domain Modules for Technology Supported Learning Systems using Natural Language Processing Techniques, Ontologies and Heuristic Reasoning. The framework has been already used over textbooks in Basque language. This work presents the extension that adds English support to the framework, which is achieved with the modification of ErauzOnt. This is the tool that enables the acquisition of learning resources, definitions, examples, exercises, etc. used in the learning process. Moreover, some tests have been made to evaluate the performance of the tool with this new language. Principles of Object-Oriented Programming textbook for Object-Oriented Programming university subject is used for evaluation purposes. The results of this tests show that DOM-Sortze is not tight to a particular domain neither language
Proceedings of QG2010: The Third Workshop on Question Generation
These are the peer-reviewed proceedings of "QG2010, The Third Workshop on Question Generation". The workshop included a special track for "QGSTEC2010: The First Question Generation Shared Task and Evaluation Challenge".
QG2010 was held as part of The Tenth International Conference on Intelligent Tutoring Systems (ITS2010)
A hint generation system for introductory programming exercises in Java
Teaching and learning programming is a real challenge for teachers and students.
Students starting to code for the first time, feeling stuck when trying to solve a programming
exercise is normal, and teachers should support them in this case. The student
who works autonomously can create a proactive attitude towards his education.
With the current evolution of technology and world events, the remote environment for
education is a reality, so tools that can help students, guiding them when they need
it, can be important to give them the necessary autonomy.This dissertation proposes a
recommendation system that can be integrated into any exercise platform to recognize
a partially written code and generate reliable and useful tips (combined with positive
feedback) whenever the student needs support, based on a solution previously set by
the teacher. This dissertation describes the implementation of such a recommendation
system, based on abstract syntax trees and tree editing distance. A system prototype
composed of a REST API and a Web frontend was developed as a materialization of the
proposed approach.Ensinar e aprender programação é um verdadeiro desafio para professores e alunos.
É normal os alunos que começam a codificar pela primeira vez sentirem-se bloqueados
ao tentar resolver um exercício de programação, ficando dependentes de ajuda de
professores ou alguém mais experiente para progredir. Porém, o aluno que trabalha
de forma autónoma pode desenvolver uma atitude proativa em relação à sua educação.
Com a atual evolução da tecnologia e os acontecimentos mundiais, o ambiente
remoto para educação é uma realidade, e logo, ferramentas que possam auxiliar os alunos,
orientando-os quando precisam, podem ser importantes para dar-lhes a autonomia
necessária. Esta dissertação propõe um sistema de recomendação que pode ser integrado
em qualquer plataforma de exercícios para reconhecer um código parcialmente
escrito e gerar dicas confiáveis e úteis (combinadas com feedback positivo) para ajudar
no progresso sempre que o aluno precisar de apoio. As dicas são geradas com base numa
solução previamente definida pelo professor. Esta dissertação descreve a implementação
de tal sistema de recomendação, baseado em árvores de sintaxe abstrata e distância
de edição das mesmas. Foi desenvolvido um protótipo de sistema composto por uma API
REST e um frontend Web como materialização da abordagem proposta
- …