701 research outputs found

    Proving Calculational Proofs Correct

    Full text link
    Teaching proofs is a crucial component of any undergraduate-level program that covers formal reasoning. We have developed a calculational reasoning format and refined it over several years of teaching a freshman-level course, "Logic and Computation", to thousands of undergraduate students. In our companion paper, we presented our calculational proof format, gave an overview of the calculational proof checker (CPC) tool that we developed to help users write and validate proofs, described some of the technical and implementation details of CPC and provided several publicly available proofs written using our format. In this paper, we dive deeper into the implementation details of CPC, highlighting how proof validation works, which helps us argue that our proof checking process is sound.Comment: In Proceedings ACL2-2023, arXiv:2311.0837

    Calculational Proofs in ACL2s

    Full text link
    Teaching college students how to write rigorous proofs is a critical objective in courses that introduce formal reasoning. Over the course of several years, we have developed a mechanically-checkable style of calculational reasoning that we used to teach over a thousand freshman-level undergraduate students how to reason about computation in our "Logic and Computation" class at Northeastern University. We were inspired by Dijkstra, who advocated the use of calculational proofs, writing "calculational proofs are almost always more effective than all informal alternatives, ..., the design of calculational proofs seems much more teachable than the elusive art of discovering an informal proof." Our calculational proof checker is integrated into ACL2s and is available as an Eclipse IDE plugin, via a Web interface, and as a stand-alone tool. It automatically checks proofs for correctness and provides useful feedback. We describe the architecture of the checker, its proof format, its underlying algorithms, its correctness and provide examples using proofs from our undergraduate class and from Dijkstra. We also describe our experiences using the proof checker to teach undergraduates how to formally reason about computation

    Conceptual modelling: framework, principles, and future research

    Get PDF
    The conceptual modelling task in a simulation project is very important and yet is still generally regarded as more of an art than a science. The meaning and nature of conceptual modelling are discussed and a framework set out. The overall aim should be to choose the best model for the project and conceptual modelling can be viewed as a difficult optimisation problem that can be tackled effectively using a creative search process that develops alternative models and predicts their performance throughout the project. An experiment relating model characteristics to some aspects of performance is described and this type of experiment may inform the process of predicting model performance. Based on advice from the literature and my own previous work on conceptual modelling 17 principles of conceptual modelling are suggested. Conceptual modelling research is still at an early stage and ideas for future research are proposed

    Isabelle/PIDE as Platform for Educational Tools

    Full text link
    The Isabelle/PIDE platform addresses the question whether proof assistants of the LCF family are suitable as technological basis for educational tools. The traditionally strong logical foundations of systems like HOL, Coq, or Isabelle have so far been counter-balanced by somewhat inaccessible interaction via the TTY (or minor variations like the well-known Proof General / Emacs interface). Thus the fundamental question of math education tools with fully-formal background theories has often been answered negatively due to accidental weaknesses of existing proof engines. The idea of "PIDE" (which means "Prover IDE") is to integrate existing provers like Isabelle into a larger environment, that facilitates access by end-users and other tools. We use Scala to expose the proof engine in ML to the JVM world, where many user-interfaces, editor frameworks, and educational tools already exist. This shall ultimately lead to combined mathematical assistants, where the logical engine is in the background, without obstructing the view on applications of formal methods, formalized mathematics, and math education in particular.Comment: In Proceedings THedu'11, arXiv:1202.453

    Tactic-Based Modeling of Cognitive Inference on Logically StructuredNotation

    Full text link
    Computational (algorithmic) models of high-level cognitive inference tasks such as logical inference, mathematical inference, and decision making can have both theoretical and practical impact. They can improve our theoretical understanding of how people think and also provide practical direction for applications such as automated reasoning systems, systems attuned to user-interaction in decision-critical environments, and computer-aided education. To support those benefits, cognitive models need to be detailed, compositional, based in well-understood mathematics, and, to whatever extent possible, descriptively accurate. We introduce a new, interdisciplinary approach that could be used to develop cognitive models of high-level inference with these properties. Two significant aspects of this approach are tactics and eyetracking methods. Tactics are used to express high-level inferences in fully formalized mathematics for automated theorem proving systems; eyetracking methods provide insight into real-time and microcognitive information processing by permitting analysis of the visual attention of people performing cognitive tasks. Combining tactics and eyetracking methods with traditional techniques from applied logic, artificial intelligence, and cognitive science can result in more deeply detailed and accurate cognitive models. We demonstrate the feasibility of this new approach to modeling by describing its application to a calculational logic system that supports schematic reasoning via metalinguistic operations (such as textual substitution) without resorting to higher-order logic. We discuss several computational, psychological, and pedagogical insights that resulted from this approach, and we present a detailed, tactic-based model of calculational logic inference. Specific results include: an explanation of calculational logic as a formalized metalogic; a tactic-based implementation of calculational logic inference; some pedagogical observations on the teaching of calculational logic; and experimental results that demonstrate that eyetracking methods can provide insight into theorem proving that could not be achieved by studies of written work alone

    EPR, Bell, and Quantum Locality

    Full text link
    Maudlin has claimed that no local theory can reproduce the predictions of standard quantum mechanics that violate Bell's inequality for Bohm's version (two spin-half particles in a singlet state) of the Einstein-Podolsky-Rosen problem. It is argued that, on the contrary, standard quantum mechanics itself is a counterexample to Maudlin's claim, because it is local in the appropriate sense (measurements at one place do not influence what occurs elsewhere there) when formulated using consistent principles in place of the inconsistent appeals to "measurement" found in current textbooks. This argument sheds light on the claim of Blaylock that counterfactual definiteness is an essential ingredient in derivations of Bell's inequality.Comment: Minor revisions to previous versio

    Which mathematics for the Information Society?

    Get PDF
    MathIS is a new project that aims to reinvigorate secondary- school mathematics by exploiting insights of the dynamics of algorithmic problem solving. This paper describes the main ideas that underpin the project. In summary, we propose a central role for formal logic, the development of a calculational style of reasoning, the emphasis on the algorithmic nature of mathematics, and the promotion of self-discovery by the students. These ideas are discussed and the case is made, through a number of examples that show the teaching style that we want to introduce, for their relevance in shaping mathematics training for the years to come. In our opinion, the education of software engineers that work effectively with formal methods and mathematical abstractions should start before university and would benefit from the ideas discussed here.Long-term collaboration with J. N. Oliveira on calculational approaches to mathematics is deeply acknowledged. We are also grateful to the anonymous referees for their valuable comments. This research was supported by FCT (the Portuguese Foundation for Science and Technology), in the context of the MATHIS Project under contract PTDC/EIA/73252/2006. The work of Joao F. Ferreira and AlexandraMendeswas further supported by FCT grants SFRH/BD/24269/2005 and SFRH/BD/29553/2006, respectively
    • …
    corecore