Results 1  10
of
13
Grammatical Framework: A TypeTheoretical Grammar Formalism
, 2003
"... Grammatical Framework (GF) is a specialpurpose functional language for defining grammars. It uses a Logical Framework (LF) for a description of abstract syntax, and adds to this a notation for defining concrete syntax. GF grammars themselves are purely declarative, but can be used both for lineariz ..."
Abstract

Cited by 72 (19 self)
 Add to MetaCart
Grammatical Framework (GF) is a specialpurpose functional language for defining grammars. It uses a Logical Framework (LF) for a description of abstract syntax, and adds to this a notation for defining concrete syntax. GF grammars themselves are purely declarative, but can be used both for linearizing syntax trees and parsing strings. GF can describe both formal and natural languages. The key notion of this description is a grammatical object, which is not just a string, but a record that contains all information on inflection and inherent grammatical features such as number and gender in natural languages, or precedence in formal languages. Grammatical objects have a type system, which helps to eliminate runtime errors in language processing. In the same way as an LF, GF uses...
Flexible encoding of mathematics on the computer
 In MKM 2004, volume 3119 of LNCS
, 2004
"... Abstract. This paper reports on refinements and extensions to the MathLang framework that add substantial support for natural language text. We show how the extended framework supports multiple views of mathematical texts, including natural language views using the exact text that the mathematician ..."
Abstract

Cited by 22 (12 self)
 Add to MetaCart
Abstract. This paper reports on refinements and extensions to the MathLang framework that add substantial support for natural language text. We show how the extended framework supports multiple views of mathematical texts, including natural language views using the exact text that the mathematician wants to use. Thus, MathLang now supports the ability to capture the essential mathematical structure of mathematics written using natural language text. We show examples of how arbitrary mathematical text can be encoded in MathLang without needing to change any of the words or symbols of the texts or their order. In particular, we show the encoding of a theorem and its proof that has been used by Wiedijk for comparing many theorem prover representations of mathematics, namely the irrationality of √ 2 (originally due to Pythagoras). We encode a 1960 version by Hardy and Wright, and a more recent version by Barendregt. 1 On the way to a mathematical vernacular for computers Mathematicians now use computer software for a variety of tasks: typing mathematical texts, performing calculation, analyzing theories, verifying proofs. Software tools like
An Implementation of LF with Coercive Subtyping & Universes
 Journal of Automated Reasoning
"... . We present `Plastic', an implementation of LF with Coercive Subtyping, and focus on its implementation of Universes. LF is a variant of MartinLof's logical framework, with explicitly typed abstractions. We outline the system of LF with its extensions of inductive types and coercions. Plastic is ..."
Abstract

Cited by 15 (9 self)
 Add to MetaCart
. We present `Plastic', an implementation of LF with Coercive Subtyping, and focus on its implementation of Universes. LF is a variant of MartinLof's logical framework, with explicitly typed abstractions. We outline the system of LF with its extensions of inductive types and coercions. Plastic is the first implementation of this extended system; we discuss motivations and basic architecture, and give examples of its use. LF is used to specify type theories. The theory UTT includes a hierarchy of universes which is specified in Tarski style. We outline the theory of these universes and explain how they are implemented in Plastic. Of particular interest is the relationship between universes and inductive types, and the relationship between universes and coercive subtyping. We claim that the combination of Tarskistyle universes together with coercive subtyping provides an ideal formulation of universes which is both semantically clear and practical to use. Keywords: type theory, un...
Dependent Coercions
, 1999
"... A notion of dependent coercion is introduced and studied in the context of dependent type theories. It extends our earlier work on coercive subtyping into a uniform framework which increases the expressive power with new applications. A dependent coercion introduces a subtyping relation between a ty ..."
Abstract

Cited by 8 (5 self)
 Add to MetaCart
A notion of dependent coercion is introduced and studied in the context of dependent type theories. It extends our earlier work on coercive subtyping into a uniform framework which increases the expressive power with new applications. A dependent coercion introduces a subtyping relation between a type and a family of types in that an object of the type is mapped into one of the types in the family. We present the formal framework, discuss its metatheory, and consider applications such as its use in functional programming with dependent types. 1 Introduction Coercive subtyping, as studied in [Luo97, Luo99, JLS98], represents a new general approach to subtyping and inheritance in type theory. In particular, it provides a framework in which subtyping, inheritance, and abbreviation can be understood in dependent type theories where types are understood as consisting of canonical objects. In this paper, we extend the framework of coercive subtyping to introduce a notion of dependent coer...
Coercive subtyping and lexical semantics (Extended Abstract)
 Logical Aspects of Computational Linguistics (LACL’98
, 1998
"... ) Zhaohui Luo and Paul Callaghan Department of Computer Science, University of Durham fZhaohui.Luo, P.C.Callaghang@durham.ac.uk 1 Introduction This paper investigates the use of constructive type theory in lexical semantics. Our intention is to explore how a rich language of types with subtyping c ..."
Abstract

Cited by 8 (8 self)
 Add to MetaCart
) Zhaohui Luo and Paul Callaghan Department of Computer Science, University of Durham fZhaohui.Luo, P.C.Callaghang@durham.ac.uk 1 Introduction This paper investigates the use of constructive type theory in lexical semantics. Our intention is to explore how a rich language of types with subtyping can be used to express lexical knowledge, both as an application of type theory and as an alternative to current approaches. In particular, we show that coercive subtyping [Luo97, Luo98a], provides a formal framework with useful mechanisms for lexical semantics. Coercive subtyping extends constructive type theories (eg, MartinLof's intensional type theory [NPS90] and the type theory UTT [Luo94]) with a simple abbreviational mechanism. It provides elegant and flexible means of representing inheritance and overloading. In our earlier paper on the structure of Mathematical Vernacular [LC98], coercive subtyping is used to represent the inheritance relationships between mathematical concepts and ...
Implementation Techniques for Inductive Types in Plastic
 Types for Proofs and Programs, volume 1956 of LNCS
, 2000
"... . In the context of Plastic, a proof assistant for a variant of MartinLof's Logical Framework LF with explicitly typed abstractions, we outline the technique used for implementing inductive types from their declarations. This form of inductive types gives rise to a problem of nonlinear patter ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
. In the context of Plastic, a proof assistant for a variant of MartinLof's Logical Framework LF with explicitly typed abstractions, we outline the technique used for implementing inductive types from their declarations. This form of inductive types gives rise to a problem of nonlinear pattern matching; we propose this match can be ignored in welltyped terms, and outline a proof of this. The paper then explains how the inductive types are realised inside the reduction mechanisms of Plastic, and briefly considers optimisations for inductive types. Key words: type theory, inductive types, LF, implementation. 1 Introduction This paper considers implementation techniques for a particular approach to inductive types in constructive type theory. The inductive types considered are those given in Chapter 9 of [15], in which Luo presents a variant of MartinLof's Logical Framework LF which has explicitly typed abstractions, and a schema for inductive types within this LF which is...
Mathematical Vernacular in Type Theorybased Proof Assistants
 Workshop on User Interfaces in Theorem Proving
, 1998
"... In this paper we present the Durham Mathematical Vernacular (MV) project, discuss the general design of a prototype to support experimentation with issues of MV, explain current work on the prototype  specifically in the type theory basis of the work, and end with a brief discussion of methodology ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
In this paper we present the Durham Mathematical Vernacular (MV) project, discuss the general design of a prototype to support experimentation with issues of MV, explain current work on the prototype  specifically in the type theory basis of the work, and end with a brief discussion of methodology and future directions. The current work concerns an implementation of Luo's typed logical framework LF, and making it more flexible with respect to the demands of implementing MV  in particular, metavariables, multiple contexts, subtyping, and automation. This part of the project may be of particular interest to the general theorem proving community. We will demonstrate a prototype at the conference. 1 Introduction: Defining a Mathematical Vernacular The long term aim of the project is to develop theory and techniques with which the complementary strengths of NLP (Natural Language Processing) and CAFR (ComputerAssisted Formal Reasoning) can be combined to support computerassisted reas...
Object Languages in a TypeTheoretic MetaFramework
 Workshop of Proof Transformation and Presentation and Proof Complexities (PTP'01
, 2001
"... . This paper concerns techniques for providing a convenient syntax for object languages implemented via a typetheoretic Logical Framework, and reports on work in progress. We first motivate the need for a typetheoretic logical framework. Firstly, we take the logical framework seriously as a me ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
. This paper concerns techniques for providing a convenient syntax for object languages implemented via a typetheoretic Logical Framework, and reports on work in progress. We first motivate the need for a typetheoretic logical framework. Firstly, we take the logical framework seriously as a metalanguage for implementing object languages (including object type theories). Another reason is the goal of building domainspecific reasoning tools which are implemented using type theory technology but do not require great expertise in type theory to use productively. We then present several examples of bidirectional translations between an encoding in the framework language and a more convenient syntax. The paper ends by discussing several techniques for implementing the translations and properties that we may require for the translation. Coercive subtyping is shown to help in the translation. 1
ComputerAssisted Reasoning with Natural Language: Implementing a Mathematical Vernacular
 In CLUK'98
, 1998
"... This paper presents the Durham Mathematical Vernacular (MV) project. The project aims to develop the technology for interactive tools based on proof checking with type theory, which allow mathematicians to develop mathematics in their usual vernacular. Its subgoals are to develop type theory techno ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
This paper presents the Durham Mathematical Vernacular (MV) project. The project aims to develop the technology for interactive tools based on proof checking with type theory, which allow mathematicians to develop mathematics in their usual vernacular. Its subgoals are to develop type theory technology to support MV and to develop the corresponding NL technology. Mathematical language has many significant differences from everyday language, hence a different approach is required to automatically process such language. We discuss some important differences and how they affect implementation. A key requirement is for correctness. Another key feature is that the user defineshis own terminology. We then discuss work in progress, namely the issue of semantic wellformedness in mathematical descriptions, and a prototype being developed to experiment with aspects of the project. 1 Introduction: Defining a Mathematical Vernacular The long term aim of this project is to develop theory and tec...