701 research outputs found
Proving Calculational Proofs Correct
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
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
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
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
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
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?
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
- …