| Martin-Lof, P. (1980). Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holland. |
....program development system [CAB 86] in Prolog. Clam is a higher order version of Clam written in Prolog. The original idea for rippling was presented in [Bun88b] as automatic search control for the NuPRL program synthesis system. NuPRL is based on Martin L of Intuitionistic Type theory [ML79] This provides the constructive logic framework which is necessary for the program synthesis(see section 2.2.1) that NuPRL was designed for. The proof plans are represented by LCF style tactics. Oyster is reimplementation of NuPRL implemented in the logic programming language Prolog. Oyster is ....
Per Martin-Lof. Constructive mathematics and computer programming. In 6th International Congress for Logic, Methodology and Philosophy of Science, pages 153-175, Hanover, August 1979. Published by North Holland, Amsterdam. 1982.
....argument. For example, append would have a spec list(int) list(int) list(int) Every program is associated with a corresponding specification and synthesis proof. Our proofs are written in the proof editor Oyster [8] which is based on a constructive logic known as Martin Lof s Type Theory [12]. The synthesis proof essentially guarantees the correctness of the program extracted from it (with respect to the specification) The more detailed the specification, the more we can guarantee about the program. Our simple specifications prove that C NTHIA programs are syntactically correct, ....
Per Martin-Lof. Constructive mathematics and computer programming. In 6th International Congress for Logic, Methodology and Philosophy of Science, pages 153--175, Hanover, August 1979. Published by North Holland, Amsterdam. 1982.
....opposing views on how to eliminate this annoying two tiered notion of truth. Gordon s Higher Order Logic [15] treats arbitrary propositions as truth values. Boyer and Moore [2] allow only computable expressions as formulas, a constructive approach that goes far beyond the demands of intuitionists [18]. The conditional t t 2 , where t has type tr , satisfies PPLAMBDA allows reasoning about denotational semantics, higher order functions, infinite data structures, and partial functions. Functional programs can be stated as equations involving lambda expressions. ....
....MW s aim is deductive synthesis deriving a program from a proof that its specification can be satisfied. My proof does not synthesize a program; I state the unification algorithm and then prove it. Conducting MW s proof in a logic of constructive type theory would synthesize a correct program [18]. 7 4.1 Logical framework MW s proof is presented in an ordinary first order logic, with several fundamental di#erences from PPLAMBDA: variables range over sets, not domains; all functions are total, while PPLAMBDA allows partial functions and functionals; there are no types, while ....
[Article contains additional citation context not shown here]
P. Martin-Lof, Constructive mathematics and computer programming, in: L. J. Cohen, J. Los, H. Pfei#er and K.-P. Podewski, editors, Logic, Methodology, and Science VI (North-Holland, 1982) 153--175.
....the Axiom of Reducibility, squashing the orders down to one. Simple type theory remains when the vicious circle principle is abandoned. Although sets must be introduced in a strict hierarchy, propositions need not be. The idea of orders appears today in the universes of Martin Lof s Type Theory [22], where propositions are represented by types. The terminology persists: simple type theory is called higher order logic because it permits unrestricted quantification over propositions of all orders. The main achievement of Church [5] is a precise formulation of the syntax. Godel calls the ....
....model, for each a. Of course, there are alternative semantics. Fourman and Scott [11, 33] can reason about whether a b exists, but their existence predicate involves some complexity. Their logic has a topos semantics, which is a categorical generalization of set theory. Martin Lof s Type Theory [22] has a constructive, operational semantics. An ambitious type theory can even be based on classical sets: Borzyszkowski et al. formalize general products, some domain theory, and types of types [10] If the present logic seems pedestrian compared with these, remember that it claims to express the ....
[Article contains additional citation context not shown here]
Per Martin-Lof. Constructive mathematics and computer programming. In C. A. R. Hoare and J. C. Shepherdson, editors, Mathematical Logic and Programming Languages, pages 167--184. Prentice-Hall, 1985.
..... 36 16.2 Does induction entail recursion . 37 2 1 Introduction Per Martin Lof originally developed his Intuitionistic Type Theory [15] as a formal notation for constructive mathematics, but it may also be regarded as a programming language [14]. It supports the principle of propositions as types: there is a type forming operator for each logical connective and quantifier, with typing rules that correspond to the intuitionistic rules of natural deduction. This type structure is rich enough to completely specify computational problems: ....
....nearly all the w.f. relations I have encountered in the literature. 2) The set includes order types well beyond # 0 , indeed any ordinal that a proof of program termination could reasonably require. The paper assumes a basic knowledge with Type Theory. Good introductions include Martin Lof [14, 15] and Nordstrom and Smith [17] Jan Smith [25] presents the inference rules and gives a formal interpretation of the semantics. Each section begins with an easy introduction, then becomes increasingly formal. At any point you may skip to the next section. The remaining sections . describe a ....
[Article contains additional citation context not shown here]
P. Martin-Lof, Constructive mathematics and computer programming, in: L. J. Cohen, J. Los, H. Pfei#er and K.-P. Podewski, editors, Logic, Methodology, and Science VI (North-Holland, 1982.
....provide some insight into programming languages with similar typing features. For example, the Girard Reynolds second order calculus seems useful for analyzing languages with polymorphic functions or abstract data type declarations [15, 53, 47] The richer type systems proposed by Martin LSf [32], Constable [10] and Huet and Coquand [12] also provide formal logics for reasoning about programs. This general line of research has a different flavor from the original Scott Strachey approach to programming language semantics, since the metalanguage of type theory reflects the type ....
....inference model, as described in Milner [37] and the ideal model of MacQueen et al..o [30] may be viewed as models of our explicitly typed core calculus. An important feature of the analysis is that our type system is stratified into levels, or universes, in the style of Martin LSf s type theory. [32], and in keeping with the suggestions of MacQueen [28] As in Martin Lo s theory, our universes result in a predicative language, which means that the types may be ranked in such a way that every value occurs with higher rank than any values on which its existence or behavior is predicated. For ....
[Article contains additional citation context not shown here]
MARTIN-LOF, P. Constructive mathematics and computer programming In S;xth I, ternational Congress for Logic, Methodology, and Philosophy of Science North-Holland, Amsterdam, 1982, 153 175
....fully compatible with separate compilation. However, for the purposes of modular programming, existentials are often too good at hiding implementation types because they do not allow adequate propagation of type infor mation between packages [16] Dependent types (transparent, or strong sums) [18, 16, 21]. A module of type P,c. Coraplex c is represented by a pair r, M) containing the type r used to represent complex numbers and an implementation M of type Complex r for the complex number operators. The ability to include type components in modules makes this approach very powerful too powerful ....
....pairs 05 M containing both a type compo nent r and a term M whose type may depend ou the choice of r. Structures of this form can be viewed as elements of dependent sum type, described informally by: Et.f(t) r, M) M has type f(r) The typing rules for dependent sums are standard (see [18], for example) nd cn be written in the form: F M: r t]r r M: Et.f(t) F r , M) Et.r) r sn M: f(Jkt M) The introduction rule on the left is very similar to the corresponding rule for existentials except that the implemen tation type, r , is captured in the structure r , M) in the ....
Per Martin-LSf. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science, VI. North Holland, Amsterdam, 1982.
....of the module system foc used on the transparency of SML style structures through the use of strong sum or dependent product types. These are types of the form Ex:A. B(x) whose elements are pairs (M,M2) that are accessed via projections r(M) and r2(M) The crucial properties of strong sums [29] are that if M : Ex:A.B(x) then r(M) B(h(M) and that rq( M1, M) M. Together, these properties ensure that type information is propagated in rough accord with the SML static semantics. See [27, 33, 20, 19] for further discussion. Substitution based methods are problematic in the presence ....
....two interpretations of constructor abstractions and why this choice seems to be preferable. 126 have placed field names in bold in order to help emphasize that they are names, not variables. The complete typing rules appear in appendix A. Our handling of dependent functions ( x:A. M) is standard [29] except that our elimination rule only allows for the application of functions having arrow types 5 (non dependent function types) The normal elimina tion rule for dependent functions does not have this restriction, requiring functions only to have a H type. We make this restriction because we ....
[Article contains additional citation context not shown here]
Per Martin-LSf. Constructive mathematics and com- puter programming. In Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153-175. North-Holland, 1982.
....in its treatment of equality. In Coq s Calculus of Constructions, for example, there is a single global equality relation which is not the desired one for many types (e.g. function types) The desired equalities have to be handled explicitly, which is quite burdensome. As in Martin L6f type theory [20] (of which NuPRL type theory is an extension) in NuPRL each type comes with its own equality relation (the extensional one in the case of functions) and the typing rules guar antee that well typed terms respect these equalities. Semantically, a quotient in NuPRL is trivial to define: it is ....
Per Martin-Lif. Constructive mathematics and computer programming. In Proceedings of the Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153 175, Amsterdam, 1982. North Holland.
....using the same operators that we have discussed for combining modules; however, this is not supported in Release 2 of OBJ3. 45 4. 7 Higher Order Programming without Higher Order Functions Higher order logic seems useful in many areas, including the foundations of mathematics (e.g. type theory [111]) extracting programs from correctness proofs of algorithms, describing proof strategies (as in LCF tactics [89] modeling traditional programming languages (as in Scott Strachey semantics [139] and studying the foundations of the programming process. One important advantage of higher order ....
Per Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holand, 1982.
....system focused on the transparency of SML style structures through the use of strong sum or dependent product types. These are types of the form #x:A. B(x) whose elements are pairs #M 1 ,M 2 that are accessed via projections # 1 (M) and # 2 (M ) The crucial properties of strong sums [29] are that if M :#x:A.B(x) then # 2 (M) B(# 1 (M ) and that # 1 (#M 1 ,M 2 #) M 1 . Together, these properties ensure that type information is propagated in rough accord with the SML static semantics. See [27, 33, 20, 19] for further discussion. Substitution based methods are problematic in ....
....two interpretations of constructor abstractions and why this choice seems to be preferable. have placed field names in bold in order to help emphasize that they are names, not variables. The complete typing rules appear in appendix A. Our handling of dependent functions (#x:A. M)is standard [29] except that our elimination rule only allows for the application of functions having arrow types (non dependent function types) The normal elimination rule for dependent functions does not have this restriction, requiring functions only to have a # type. We make this restriction because we ....
Per Martin-Lof. Constructive mathematics and computer programming. In Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153--175. North-Holland, 1982.
....by, or generated by, implementations of the Veritas 90 dialect of the logic. A companion paper [HD92B] describes a user s view of an implementation of the logic. 2 Overview of Veritas Veritas is a higher order logic with dependent types (motivated by Martin Lof s intuitionistic type theory [ML84]) its inferential component is a sequent calculus with classical (not intuitionistic) rules of inference. To establish the context for later parts of this paper, we provide an overview of some typical constructions; for brevity, we mainly address the language aspects of the logic the ....
....: nat 1 2 1 : fn: nat j n 2g N n = fm: nat j m ng 1: N 2 bit = N 2 1: bit Figure 1: Pattern of inferences used in type checking the term 1: bit 2.6 Inference rules The Veritas logic has classical, not intuitionistic, rules of inference. Whilst intuitionistic logics (such as itt [ML84] and its computational implementation NuPRL [C86] are undoubtedly elegant and safe vehicles for exploring the foundations of mathematics, the authors have yet to be persuaded of any dangers in adopting the stronger rules of classical logic (such as the principle of the excluded middle, ....
P. Martin-Lof, Constructive Mathematics and Computer Programming, Phil. Trans. Royal Soc. London. vol A 312, pp. 501-518, 1984
....some theories within the logic. This account is, of necessity, highly abbreviated; a fuller account of the logic may be found in [HDL89] and of its principles of implementation in [HD88] veritas is a hybrid of a conventional higher order logic and Martin Lof s intuitionistic type theory (itt) [ML84]. The main features of the veritas logicy are: ffl It is an extension of a classical (ie, non constructive) typed higher order logic. Unlike ordinary typed logics, however, it allows the types to be manipulated in the same way as ordinary terms. ffl Theories in veritas are defined by ....
....this regard. Availability It is our intention to make the formal synthesis system described here (together with the veritas logic and interactive proof editor) available to interested parties in the near future. Acknowledgments Our interest in type theory derives mainly from MartinL of s itt [ML84] and from Constable s Nuprl language [C86] Our original interest in synthesis was motivated by the LTS system developed by Robert Milne and colleagues [M86] Work on veritas and the formal synthesis project is funded by the UK Science and Engineering Research Council under grant GR D84733. ....
Martin-Lof, P. "Constructive mathematics and computer programming", pp501-518, Phil Trans R. Soc. London, A 312, 1984.
....but synthetic: we need to look outside the judgment itself for evidence, typically by searching for a proof of A. Proofs are essential in our use of logic in computer science, since they contain constructions and algorithms with computational contents. Therefore Martin Lof bases his type theory [ML80] on several analytical judgments. Again, we simplify and consider M is a proof term for A (written M : A) It is important that M contain enough information to reconstruct the evidence for A true in the sense we have discussed so far. Consequently, the notions of Martin Lof wrote M : ....
....and elimination, respectively. Gamma; x:A M : B Gamma x:A: M : A oe B Gamma M : A oe B Gamma N : A Gamma M N : B 12 The local reductions and expansions are just the familiar fi reduction and j expansion. M : A oe B = E x:A: M x where x not free in M As in type theory [ML80], the reduction rules have computational content, while the expansion rules implement an extensionality principle. To complete the proof term assignment, we need to label hypotheses of the form A valid. We write u: A to express that the variable u labels the hypothesis that A is valid. We ....
Per Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holland, 1980.
No context found.
Martin-Lof, P. (1980). Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holland.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science, VI, 1979.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holland, 1980.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holland, 1980.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holland, 1980.
No context found.
Martin-Lof, P. "Constructive Mathematics and Computer Programming." In L.J. Cohen et al. (Eds.), Proceedings of 6th International Congress for Logic, Methodology, and Philosophy of Science, pp. 153-175. North-Holland, Amsterdam. 1982.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North Holland, 1982.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North Holland, 1982.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North Holland, 1982.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holland, 1980.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Proceedings of the Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153--175, Amsterdam, 1982. North Holland.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science, VI, 1979.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Proceedings of the Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153-175, Amsterdam, 1982. North Holland.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science, VI, 1979.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Proceedings of the Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153--175, Amsterdam, 1982. North Holland.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Cohen, Los, Pfei#er, and Podewski, editors, Logic, Methodology and Philosophy of Science, VI, 1979.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Proc. of 6th international congress for logic, methodology and pholosophy of science, North Holland, 1982.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Proceedings of the Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153-175, Amsterdam, 1982. North Holland.
No context found.
Per Martin-L of. Constructive mathematics and computer programming. In Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153--175, 1982.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science, VI, 1979.
No context found.
Per Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153-175. North-Holland, 1980.
No context found.
P. Martin-Lof. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science, VI, 1979, pages 153--175. North-Holland, 1982.
No context found.
Per Martin-L of. Constructive mathematics and computer programming. In Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153-175, 1982.
No context found.
Per Martin-Lof: Constructive Mathematics and Computer Programming. In Logic, Methodology and Philosophy of Science, VI, 1979, pages 153-175. North-Holland, 1982.
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