• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Solving Higher-Order Equations: From Logic to Programming (1995)

by C Prehofer
Add To MetaCart

Tools

Sorted by:
Results 11 - 20 of 27
Next 10 →

Higher-Order Narrowing with Convergent Systems

by Christian Prehofer - In 4th Int. Conf. Algebraic Methodology and Software Technology, AMAST '95. Springer LNCS 936 , 1995
"... . Higher-order narrowing is a general method for higher-order equational reasoning and serves for instance as the foundation for the integration of functional and logic programming. We present several refinements of higher-order lazy narrowing for convergent (terminating and confluent) term rewr ..."
Abstract - Cited by 7 (7 self) - Add to MetaCart
. Higher-order narrowing is a general method for higher-order equational reasoning and serves for instance as the foundation for the integration of functional and logic programming. We present several refinements of higher-order lazy narrowing for convergent (terminating and confluent) term rewrite systems and their application to program transformation. The improvements of narrowing include a restriction of narrowing at variables, generalizing the first-order case. Furthermore, functional evaluation via normalization is shown to be complete and a partial answer to the eager variable elimination problem is presented. 1 Introduction and Overview Higher-order narrowing is a method for solving higher-order equations modulo a set of rewrite rules. It forms the basis of functional-logic programming and has been extensively studied in the first-order case, for a survey see [10]. Motivated by functional programming, there exist several higher-order extensions for such languages [7, ...

A Structured Set of Higher-Order Problems

by Christoph E. Benzmüller, Chad E. Brown - Theorem Proving in Higher Order Logics: TPHOLs 2005, LNCS 3603 , 2005
"... Abstract. We present a set of problems that may support the development of calculi and theorem provers for classical higher-order logic. We propose to employ these test problems as quick and easy criteria preceding the formal soundness and completeness analysis of proof systems under development. Ou ..."
Abstract - Cited by 6 (3 self) - Add to MetaCart
Abstract. We present a set of problems that may support the development of calculi and theorem provers for classical higher-order logic. We propose to employ these test problems as quick and easy criteria preceding the formal soundness and completeness analysis of proof systems under development. Our set of problems is structured according to different technical issues and along different notions of semantics (including Henkin semantics) for higher-order logic. Many examples are either theorems or non-theorems depending on the choice of semantics. The examples can thus indicate the deductive strength of a proof system. 1 Motivation: Test Problems for Higher-Order Reasoning Systems Test problems are important for the practical implementation of theorem provers as well as for the preceding theoretical development of calculi, strategies and heuristics. If the test theorems can be proven (resp. the non-theorems cannot) then they ideally provide a strong indication for completeness (resp. soundness). Examples for early publications providing first-order test problems are [21,29,23]. For more than decade now the TPTP library [28] has been developed as a systematically structured electronic repository of

Development Closed Critical Pairs

by Vincent van Oostrom , 1996
"... . The class of orthogonal rewriting systems (rewriting systems where rewrite steps cannot depend on one another) is the main class of not-necessarily-terminating rewriting systems for which confluence is known to hold. Huet and Toyama have shown that for left-linear firstorder term rewriting sys ..."
Abstract - Cited by 5 (1 self) - Add to MetaCart
. The class of orthogonal rewriting systems (rewriting systems where rewrite steps cannot depend on one another) is the main class of not-necessarily-terminating rewriting systems for which confluence is known to hold. Huet and Toyama have shown that for left-linear firstorder term rewriting systems (TRSs) the orthogonality restriction can be relaxed somewhat by allowing critical pairs (arising from maximally general ways of dependence between steps), but requiring them to be parallel closed. We extend these results by replacing the parallel closed condition by a development closed condition. This also permits to generalise them to higher-order term rewriting, yielding a confluence criterion for Klop's combinatory reduction systems (CRSs), Khasidashvili's expression reduction systems (ERSs), and Nipkow's higher-order pattern rewriting systems (PRSs). 1 Introduction This paper is concerned with a method to prove confluence of rewriting systems. It's an extension of some co...

Observations About Using Logic as a Specification Language

by Dale Miller , 1995
"... This extended abstract contains some non-technical observations about the roles that logic can play in the specification of computational systems. In particular, computation-as-deduction, meta-programming, and higher-order abstract syntax are briefly discussed. 1 Two approaches to specifications In ..."
Abstract - Cited by 2 (0 self) - Add to MetaCart
This extended abstract contains some non-technical observations about the roles that logic can play in the specification of computational systems. In particular, computation-as-deduction, meta-programming, and higher-order abstract syntax are briefly discussed. 1 Two approaches to specifications In the specification of computational systems, logics are generally used in one of two approaches. In one approach, computations are mathematical structures, containing such items as nodes, transitions, and state, and logic is used in an external sense to make statements about those structures. That is, computations are used as models for logical expressions. Intensional operators, such as the modals of temporal and dynamic logics or the triples of Hoare logic, are often employed to express propositions about the change in state. For example, next-time modal operators are used to describe the possible evolution of state; expressions in the Hennessey-Milner are evaluated against the transitions...

Higher-order Lazy Narrowing Calculus: a Solver for Higher-Order Equations

by Tetsuo Ida, Mircea Marin, Taro Suzuki - in Proc. 8th Int’l Conf. Computer Aided Systems (EuroCAST 2001), LNCS , 2001
"... This paper introduces a higher-order lazy narrowing calculus (HOLN for short) that solves higher-order equations over the domain of simply typed #-terms. HOLN is an extension and refinement of Prehofer's higher-order narrowing calculus LN using the techniques developed in the refinement of a fir ..."
Abstract - Cited by 1 (0 self) - Add to MetaCart
This paper introduces a higher-order lazy narrowing calculus (HOLN for short) that solves higher-order equations over the domain of simply typed #-terms. HOLN is an extension and refinement of Prehofer's higher-order narrowing calculus LN using the techniques developed in the refinement of a first-order lazy narrowing calculus LNC.

Refinements of lazy narrowing for left-linear fully extened pattern rewrite systems

by Mircea Marin, Taro Suzuki, Tetsuo Ida , 2001
"... Abstract. Lazy narrowing is a general E-unification procedure for equational theories presented by confluent term rewriting systems. It has been deeply studied in the first order case and various higher-order extensions have been proposed in an attempt to improve its expressive power. Such extension ..."
Abstract - Cited by 1 (1 self) - Add to MetaCart
Abstract. Lazy narrowing is a general E-unification procedure for equational theories presented by confluent term rewriting systems. It has been deeply studied in the first order case and various higher-order extensions have been proposed in an attempt to improve its expressive power. Such extensions suffer from huge search space in guessing the solutions of variables of functional type. For practical purposes, the need to reduce the search space of solutions is of paramount importance. In this paper we introduce HOLN, a higher-order lazy narrowing calculus for E-unification in theories presented by pattern rewrite systems. The calculus is designed to deal with both oriented and unoriented equations, and keeps track of the variables which are to be bound to normalized solutions. We discuss the operating principle of HOLN, its main properties, and propose refinements to reduce its search space for solutions. Our refinements are defined for classes of left-linear fully-extended pattern rewrite systems which are widely used in higher-order functional logic programming. 1

Refinements of Lazy Narrowing for Left-Linear Fully-Extended Pattern Rewrite Systems Mircea Marin

by Mircea Marin, Taro Suzuki, Tetsuo Ida , 2001
"... Lazy narrowing is a general E-unification procedure for equational theories presented by confluent term rewriting systems. It has been deeply studied in the first order case and various higher-order extensions have been proposed in an attempt to improve its expressive power. Such extensions suffer f ..."
Abstract - Cited by 1 (1 self) - Add to MetaCart
Lazy narrowing is a general E-unification procedure for equational theories presented by confluent term rewriting systems. It has been deeply studied in the first order case and various higher-order extensions have been proposed in an attempt to improve its expressive power. Such extensions suffer from huge search space in guessing the solutions of variables of functional type. For practical purposes, the need to reduce the search space of solutions is of paramount importance. In this paper we introduce HOLN, a higher-order lazy narrowing calculus for E-unification in theories presented by pattern rewrite systems. The calculus is designed to deal with both oriented and unoriented equations, and keeps track of the variables which are to be bound to normalized solutions. We discuss the operating principle of HOLN, its main properties, and propose refinements to reduce its search space for solutions. Our refinements are defined for classes of left-linear fully-extended pattern rewrite systems which are widely used in higher-order functional logic programming.

A Distributed System for Solving Equational Constraints Based on Lazy Narrowing Calculi

by Mircea Marin, Tetsuo Ida, Wolfgang Schreiner , 1999
"... In this paper we describe the architecture and implementation of a system that aims at extending in a consistent way a functional logic programming language with solving techniques of various constraint solving systems. The system is called CFLP (Constrained Functional Logic Programming language), a ..."
Abstract - Cited by 1 (0 self) - Add to MetaCart
In this paper we describe the architecture and implementation of a system that aims at extending in a consistent way a functional logic programming language with solving techniques of various constraint solving systems. The system is called CFLP (Constrained Functional Logic Programming language), and consists of a lazy functional logic interpreter extended in two directions: the possibility to specify constraints, and the possibility to specify AND- and OR-parallelism. For solving the constraints, a distributed constraint solving system was implemented.

Some Applications of Functional-Logic Programming

by Christian Prehofer , 1996
"... We show examples for higher-order functional logic programming in which both programming concepts nicely complement each other. These include modeling distributed systems, parsing and hardware synthesis. ..."
Abstract - Cited by 1 (0 self) - Add to MetaCart
We show examples for higher-order functional logic programming in which both programming concepts nicely complement each other. These include modeling distributed systems, parsing and hardware synthesis.

Higher-Order Functional-Logic Programming: A Systematic Development

by Christian Prehofer - In Proc. of the Second Fuji International Workshop on Functional and Logic Programming. World Scientific , 1997
"... We develop an effective model for higher-order functional-logic programming by refining higher-order narrowing calculi. The refinements reduce the high degree of non-determinism in narrowing calculi, utilizing properties of functional(-logic) programs. These include convergent and left-linear rewrit ..."
Abstract - Cited by 1 (1 self) - Add to MetaCart
We develop an effective model for higher-order functional-logic programming by refining higher-order narrowing calculi. The refinements reduce the high degree of non-determinism in narrowing calculi, utilizing properties of functional(-logic) programs. These include convergent and left-linear rewrite rules. All refinements can be combined to a narrowing strategy which generalizes call-by-need as in functional programming. Furthermore, we consider conditional rewrite rules which are often convenient for programming applications. 1. Introduction We present a systematic development of a calculus which integrates higher-order functional and logic programming, based on narrowing. Narrowing is a general method for solving equations modulo a set of rewrite rules. Functional-logic languages with a sound and complete operational semantics are mainly based on narrowing. For a survey on the topic we refer to [9]. In our higher-order equational logic we use a rewrite relation due to Nipkow [18],...
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University