| D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976. |
....Expressions and variables are untyped. There are practical algorithms for computing the most general unifier of two expressions, or reporting that no unifier exists. Higher order unification amounts to solving equations in the typed # calculus with respect to #, #, and possibly # conversion [17, 19]. It is semi decidable: if the expressions cannot be unified, the search for unifiers may diverge. Although a complete set of unifiers can be recursively enumerated, it may be infinite. Unifying the expression f(x) with the constant A gives the two unifiers = #y.A and = #y.y, x = A .IfA, B ....
....F ; imitation reduces the disagreement pair to the pairs #h 1 (t 1 , t p ) u 1 #, #h q (t 1 , t p ) u q . Sometimes both expressions begin with a free variable, the flex flex case. Unifying f(t 1 , t p ) with g(u 1 , u q ) yields an explosion of counterintuitive solutions [19]. Huet s algorithm reports success when only flex flex pairs remain: there is a trivial unifier = #x 1 . x p .h, g = #y 1 . y q .h . Since the trivial unifier throws away too much information, a theorem prover should store the flex flex pairs as constraints on future unifications. 6.2 ....
[Article contains additional citation context not shown here]
D. C. Jensen, T. Pietrzykowski, Mechanizing #-order type theory through unification, Theoretical Computer Science 3 (1976), pages 123--171.
....can either represent the emerging pre unifier using an environment, or perform instantiation in the tree itself. We adopt 10 the latter approach. Let be a fully developed reduction tree and l a flex rigid sequent for ff in . Definition 7 [Frontier] Let F ff ( denote the ff frontier of (cf. [19, 17]) i.e. the subtree of obtained by removing all sequents that appear above any flex rigid sequent for ff. Definition 8 [Transformation] Define T l , a transformation on reduction trees, by T l ( F ff ( P=ff] where P is the binding defined by the flex rigid sequent l. Substitution over ....
D. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3(1):123--171, 1976.
....Ind i j [n : Nat i ] P : Nat i Prop) P O i ) n : Nat i ) P n) P (S i n) P n) This principle expresses that any property is true for an integer, as soon as it is true on the set of codes of regular integers. No proof exists for (n : Nat i ) Ind i n) As noticed in [15, 17], we need the fact that (n Nat i O i S i ) equals n. But this property means precisely that every n : Nat i is actually the code for a regular integer. n being a variable, this is obviously impossible to know. However this equality holds for closed terms, as proved as meta result. 22 ....
....with Proofs. Theoretical Computer Science 94 (1992) p.335 356. 14] Parigot M. 1992) calculus: an algorithmic interpretation of classical natural deduction. In Proceedings International Conference on Logic Programming and Automated Deduction, St Petersburg. LNCS 624. Springer Verlag. 1992. [15] Paulin Mohring C. 1989) Extracting F programs from proofs in the Calculus of Constructions. In Proceedings of 16th ACM Symposium on Principles of Programming Languages. ACM, New York. 16] Paulin Mohring C. 1989) Inductive definitions in the Calculus of Constructions. draft) In The Calculus ....
[Article contains additional citation context not shown here]
D.C. Jensen and T. Pietrzykowski. Mechanizing !-order Type Theory Through Unification. Theoretical Computer Science, 3, 1976, pp. 123-171.
....input formulae. 1 Introduction The history of building automated theorem provers for higher order logic is almost as old as the field of deduction systems itself. The first successful attempts to mechanize and implement higherorder logic were those of Huet [Hue73] and Jensen and Pietrzykowski [JP76] They combine the resolution principle for higher order logic (first studied in [And71] with higher order unification. The unification problem in typed calculi is much more complex than that for first order terms, since it has to take the theory of fffij equality into account. In particular ....
D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
....them is a complete unification procedure. Higher order unification is undecidable [Hue73] even when restricted to second order terms [Gol81] The first complete enumeration methods for higher order unification are due to Pietrzykowski [Pie71] for second order logic and Jensen and Pietrzykowski [JP73] for full higher order logic. Huet s seminal work [Hue75] refined these methods, pointed out the importance of preunification, and gave a practical algorithm for the latter. A comparison of our work with Huet s method will be found at the end of Section 3. Complete sets of transformations for ....
D. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Report CS-73-16, Dept. of Applied Analysis and Computer Science, University of Waterloo, 1973.
....of the form (ly: M y) Long bh normal forms are terms of the form lx s 1 1 : lx s n n : M 1 : M k where k;n 0, is a constant or variable of type (t 1 : t k i) and M 1 ; M k are long bh normal forms. Any term is bh equivalent to a unique long bh normal form [Jensen and Pietrzykowski, 1976]. These terms are useful because the body has type i, making certain inductions simpler to perform. 2.2 Models We use the notion of environment models to give meaning to simply typed terms [Friedman, 1975, Meyer, 1982] Definition 2.1 A frame is a pair (fM s g;fap s;t g) where each M s is ....
Jensen, D. and Pietrzykowski, T. (1976). Mechanizing w-order type theory through unification. Theoretical Computer Sci., 3:123--171.
....the term c i , and y 0 i the j long form of the variable y i . The definition of the j long form of a variable is by induction over the structure of its type, and the definition of the j long form of a normal term is by induction over the structure of the term itself. The j long form appeared in [17] under the name of long reduced form and in [15] under the name of j normal form, and was further investigated in [16] under the name of extensional form. In systems with dependent types the corresponding definition is more complicated. First when t = x : U ]u we have to take also the j long ....
D.C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3 (1976) pp. 123-171.
....by the same structure (f11) that representation still requires fairly complex manipulations to represent the full range of desired operations on terms. A more high level approach to the manipulation of terms modulo ff and fi conversion has been the use of unification of simply typed terms [13, 20, 33, 34]. Huet and Lang [14] described how such an approach, when restricted to second order matching, can be used to analyze and manipulate simple functional and imperative programs. Their reliance on unification modulo ff, fi, and j conversion made their meta programs elegant, simple to write, and easy ....
T. Pietrzykowski and D. Jensen (1976). Mechanizing !-Order Type Theory Through Unification, Theoretical Computer Science 3, 123 -- 171.
....higher order logic, higher order theorem proving has led, quite recently, to 168 The ground breaking work was the automath family of languages [ Bruijn, 1980 ] designed as a medium for a computerized compendium of mathematics within a higher order logic. 169 See also e.g. Gould, 1976; Jensen and Pietrzykowski, 1976; Petersson, 1982 ] 170 An early presage of higher order theorem proving is [Robinson, 1969 ] Higher Order Logic 71 rapid advances in the development of user friendly and interactive software environments, based in higher order logic, for the fully formalized development of mathematics [ ....
D. C. Jensen and T. Pietrzykowski. Mechanizing ! order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
....a pre unifier, is returned. The achievability of algorithms a la Huet depend crucially on flex flex equations being always solvable. If this property does not hold, as in some sublanguages of S Gammaffi we will discuss shortly, these equations must be analyzed with techniques similar to [JP76] or [Mil89] The procedure we just described is not guaranteed to terminate for generic equation systems since flexrigid steps can produce arbitrarily complex new equations. However, although we have not completed a formal proof at this time, we expect it to be sound in the sense that if a unifier ....
D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
....input formulae. 1 Introduction The history of building automated theorem provers for higher order logic is almost as old as the field of deduction systems itself. The first successful attempts to mechanize and implement higher order logic were those of Huet [Hue73] and Jensen and Pietrzykowski [JP76] They combine the resolution principle for higher order logic (first studied in [And71] with higher order unification. The unification problem in typed calculi is much more complex than that for firstorder terms, since it has to take the theory of fffij equality into account. In particular the ....
D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
....This process requires the use of a unification procedure. The first sound and complete second order unification procedure was described by Pietrzykowski (1973) and subsequently a modified version of this algorithm was proposed to solve the unification problem for the simply typed calculus (Jensen and Pietrzykowski, 1976). Based on it, Huet (1975) proposed the computation of the so called independent pre unifiers using a pre unification procedure. This procedure does not try to solve the flexible flexible pairs of a unification problem for which there always exist a unifier, thus a pre unification procedure is ....
....this theorem is out of the scope of this article and it can be found in (Levy, 1996) Theorem 29 soundness and completeness. Substitution oe is a unifier of the unification problem S if, and only if, there exists a transformation sequence hS; Idi ) h; oei. Compared with the general procedure (Jensen and Pietrzykowski, 1976), we avoid the use of the prolific elimination and iteration rules. These rules always compromise the termination of Jensen and Pietrzykowski s procedure. On the contrary, our procedure always finishes for a very useful case: if no free variable occurs more than twice in a unification problem. ....
Jensen, D. C. and Pietrzykowski, T. (1976). Mechanizing !-order type theory through unification.
....general models. 1 Introduction The history of building automated theorem provers for higher order logic is almost as old as the field of deduction systems itself. The first successful attempts to mechanize and implement higher order logic were those of Huet [Hue72] and Jensen and Pietrzykowski [JP76]. They combine the resolution principle for higher order logic (first studied in [And71] with higher order unification. The unification problem in typed calculi is much more complex than that for firstorder terms, since it has to take the theory of equality into account. In particular the ....
D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
....the first who found a complete second order matching algorithm. Most of the results of second order and higherorder unification problems were proved during the seventies. Pietrzykowski [15] described a complete second order unification procedure, that was later extended to the higher order case [7], and Huet [6] defined preunification (lazy unification) and found a non redundant procedure for it. Most of the negative results were also discovered during this decade. Independently, Lucchesi [11] and Huet [5] showed that third order unification is not decidable, later Goldfarb [3] showed that ....
....Q 0 ; G 0 P 0 (z S P 0 ) where H 0 , fG 0 i g i2P 0 and fF 0 j g j2Q 0 are fresh free variables of the appropriate types. Notice that if R j = then F 0 j is a first order typed variable (resp. for S i and G 0 i ) Compared with the general second order unification procedure [7], we avoid the use of the prolific elimination and iteration rules, which always compromise the termination of their procedure. It does not mean that our procedure terminates, but it avoids many redundant states. Moreover, in contrast to Jensen and Pietrzykowski s procedure, our procedure only ....
D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
.... from the first order case, higher order unification in Church s simply typed calculus is undecidable and does not admit most general unifiers [Gol81] Nevertheless sound and complete (although possibly non terminating) procedures have been proposed in order to enumerate solutions [JP76]. In particular, Huet s pre unification algorithm [Hue75] computes unifiers in a non redundant manner as constraints and has therefore been adopted in the implementation of higher order logic programming languages [NM88] Fragments of of practical relevance for which unification is decidable ....
....is returned. The possibility of achieving an algorithm a la Huet depends crucially on flex flex equations being always solvable. If this property does not hold, as in some sublanguages of S Gammaffi we will discuss in this paper, these equations must be analyzed with techniques similar to [JP76] or [Mil91] We will now discuss a number of simple examples in order to gain familiarity with this algorithm. We will focus our attention on the flex rigid and rigid rigid cases. Example 1: In the signature Sigma 1 = c : a) and pool Phi 1 = F : a a) consider the following equation 1 , ....
D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
.... Differently from the first order case, higher order unification in Church s simply typed calculus is undecidable and does not admit most general unifiers [11] Nevertheless sound and complete (although possibly non terminating) procedures have been proposed in order to enumerate solutions [18]. In particular, Huet s pre unification algorithm [16] computes unifiers in a non redundant manner as constraints and has therefore been adopted in the implementation of higherorder logic programming languages [23] Fragments of of practical relevance for which unification is decidable and ....
....is returned. The possibility of achieving an algorithms a la Huet depend crucially on flex flex equations being always solvable. If this property does not hold, as in some sublanguages of S Gammaffi we will discuss shortly, these equations must be analyzed with techniques similar to [18] or [21] The procedure we just described is not guaranteed to terminate for generic equation systems since flexrigid steps can produce arbitrarily complex new equations. However, it is sound in the sense that if a unifier or pre unifier is returned the system is solvable (where free variables are ....
D. C. Jensen and T. Pietrzykowski. Mechanizing !- order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
No context found.
D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
No context found.
D. C. Jensen and T. Pietrzykowski. Mechanizing !- order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
No context found.
D. C. Jensen and T. Pietrzykowski. Mechanizing !-order type theory through unification. Theoretical Computer Science, 3:123--171, 1976.
No context found.
D.C. Jensen T. Pietrzykowski, Mechanizing !-order type theory through unification, Theoretical Computer Science, 3 (1976) pp. 123-171.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC