2 research outputs found

    Reading Between the Lines: Verifying Mathematical Language

    Get PDF
    A great deal of work has been done on automatically generating automated proofs of formal statements. However, these systems tend to focus on logic-oriented statements and tactics as well as generating proofs in formal language. This project examines proofs written in natural language under a more general scope of mathematics. Furthermore, rather than attempting to generate natural language proofs for the purpose of solving problems, we automatically verify human-written proofs in natural language. To accomplish this, elements of discourse parsing, semantic interpretation, and application of an automated theorem prover are implemented

    On Computational Small Steps and Big Steps: Refocusing for Outermost Reduction

    Get PDF
    We study the relationship between small-step semantics, big-step semantics and abstract machines, for programming languages that employ an outermost reduction strategy, i.e., languages where reductions near the root of the abstract syntax tree are performed before reductions near the leaves.In particular, we investigate how Biernacka and Danvy's syntactic correspondence and Reynolds's functional correspondence can be applied to inter-derive semantic specifications for such languages.The main contribution of this dissertation is three-fold:First, we identify that backward overlapping reduction rules in the small-step semantics cause the refocusing step of the syntactic correspondence to be inapplicable.Second, we propose two solutions to overcome this in-applicability: backtracking and rule generalization.Third, we show how these solutions affect the other transformations of the two correspondences.Other contributions include the application of the syntactic and functional correspondences to Boolean normalization.In particular, we show how to systematically derive a spectrum of normalization functions for negational and conjunctive normalization
    corecore