| Y. Takayama. Extraction of redundancy-free programs from constructive natural deduction proofs. Journal of Symbolic Computation, 12:29--69, 1991. |
....to the final result of the computation are detected and deleted. Dead code can arise during the compilation process due to program transformations and during the evolution of programs. Program extracts from proofs also tend to contain a lot of code irrelevant to the result of the computation [2, 7, 3, 4, 17, 20]. In this paper, we investigate dependence analysis in the context of dead code elimination, bearing in mind it is readily applicable to the problems mentioned above. We give a method for dead code elimination for typed # calculus based languages, such as ML and typed intermediate languages for ....
Y. Takayama. Extraction of redundancy-free programs from constructive natural deduction proofs. Journal of Symbolic Computation, 12:29--69, 1991.
....by the soundness metatheorem for the formal system with respect to the interpretation. In other words, programmers simultaneously construct and verify the computer programs in this paradigm. In the last decade, many works have been intensively done both in practical and in theoretical approaches [5, 6, 12, 13, 19, 26, 35, 36], in which the most of their attention has been concentrated on the area that can be regarded as an application of the standard constructive logic, because we had already have rich results on the constructive logic itself, and the conventional constructive logics really have enough strength with ....
Y. Takayama, Extraction of Redundancy-free Programs from Constructive Natural Deduction Proofs, Journal of Symbolic Computation, Vol. 12, pp. 29-69, 1991.
....and simplify the types accordingly. This process could be made precise by using a suitable formalism for removing redundant information such as checked quantifiers or subsets. It would also be interesting to investigate automatic removal of redundant information along the lines of Takayama [26]. Berger [4] has provided a related analysis for a strong normalization proof of the typed calculus, and shown that one gets the normalization algorithm of Berger and Schwichtenberg [5] He uses an alternative framework and explains program extraction in terms of modified realizability. Only the ....
Y. Takayama. Extraction of redundancy-free programs from constructive natural deduction proofs. Submitted for publication in Journal of Symbolic Computation.
....way. The last step is to erase them in order to get an efficient program. The second approach consists in looking at the proof tree, and, by an appropriate study, to locate subtrees without computational meaning. This point of view has been initiated by Goad in [7] and enriched by Takayama in [11]. The last developments of this approach have been done by Berardi and Boerio in [1] and [2] The basic idea is that the proof contains a lot of information regarding the corresponding program. These techniques propose to use these informations in order to simplify the program obtained.When the ....
Y. Takayama, Extraction of Redundancy-free Programs from Constructive Natural Deduction Proofs, Journal of Symbolic Computation, 1991, 12, 29-69. 33
....see [19] or via lazy (implicit) types, see [15] In this paper we pursue the first approach, reducing the annotated type inference problem to the solution of a system of inequalities between annotations on types. Type analysis is also used in the area of program extraction from formal proof, see [7, 6, 23, 3, 5, 21]. The programs extracted from proofs are usually very inefficient, as they contain parts that are useless for the computation of the final result; they therefore require some sort of simplification. One of the more effective simplification techniques is the pruning , and has been developed by ....
Y. Takayama. Extraction of Redundancy-free Programs from Constructive Natural Deduction Proofs. Journal of Symbolic Computation, 12:29--69, 1991.
.... Hei95] have used annotated type system to perform many analyses like control flow, binding time, strictness, in [Pro95] dead code analysis is treated using marks (not only limited to type) The idea of using types for the analysis of typed terms was already present in [Pau89, Ber93, Boe94, Tak91] A similar technique is used in [DG97] the refinement types are used for strictness analysis. This latter version enlightens well a key point of annotated based system. It is the coexistence of two attributes linked to a term: its type, considered in the usual way, and its property. Now, the ....
Y. Takayama. Extraction of redundancy-free programs from constructive natural deduction proofs. Journal of Symbolic Computation, 1(12):29--69, 1991. 16
....to parameters. Because of the suitable restriction of second order formulas, most part of the instantiation procedure can be easily performed automatically. Also, QPC 2 together with the various optimization techniques for rst order constructive calculus such as the extended projection method [19] can synthesize natural programs. 1 Introduction It is well known that formal development of functional programs can be carried out in constructive logics, and there are basically two kinds of formalism of the logics. One is the formalism of constructive type theories such as Martin L of s ....
....of Martin L of s ITT with universes U 1 and U 2 , but it allows quanti cation over predicates which improves the expressive power of the calculus in describing the parameterized speci cations. To remove the redundancy in the extracted programs, we use the extended projection method (EPM) [18, 19]. EPM works well in the rst order calculi in type free formalism allowing more ne grained semi automatic analysis of redundancy than the subset types and the informative noninformative type system. Thus, we formalize QPC 2 as a type free system. Unlike ITT, QPC 2 does not have the second order ....
[Article contains additional citation context not shown here]
Y. Takayama. Extraction of Redundancy-free Programs from Constructive Natural Deduction Proofs. Journal of Symbolic Computation, 12(1), 1991.
....presents the rest of the formalization of our system brie y. 5.1 Non deterministic calculus The non deterministic calculus is a typed concurrent calculus based on parallel reduction and this is used as the underlying programming language. The core part is almost the same as that given in [Tak91] It has natural numbers, booleans (T and F ) L and R as constants. Individual variables, lambda abstractions, application, sequences of terms ( M 1 ; M n ) where M i are terms) if then else, and a xed point operator ( are used as terms and program constructs. The reduction rules for ....
....procedure whose execution may not always be explained by the reduction mechanism. ffl is regarded as an element of 2 , a super type of 2. The elements of 2 have been used to describe the decision procedure of if then else programs in the program extraction from constructive proofs in [Tak91] as if T = L then M else N . Nondeterminacy arises when T is replaced by ffl. The intentional semantics of ffl is undefined . 2 enjoys the following typing rules: L : 2 R : 2 ffl : 2 5.2 Rules of Inference (1) Logical Rules The rules for logical connectives and quanti ers are ....
[Article contains additional citation context not shown here]
Y. Takayama. Extraction of Redundancy-free Programs from Constructive Natural Deduction Proofs. Journal of Symbolic Computation, 12(1), 1991.
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