27411446
A Purely Functional Language with Encapsulated Assignment
We introduce a new functional programming language with assignment. The language, which we call Λ, is a conservative extension of the λβ-calculus, and as such it it a higher order functional language in which we can manipulate functions as first class objects. Λ has a lazy evaluation semantics and Λ programs can be evaluated in parallel. Λ also supports imperative programming in terms of assignments. All the assingments in Λ are encapsulated within suitable scope of the let constructs. The language is therefore side-effect free and referentially transparent. We show by an example that we can smoothly reason about Λ programs.
1580777
Classical Brouwer-Heyting-Kolmogorov Interpretation
The Brouwer-Heyting-Kolmogorov interpretation explains the meaning of logical operations as operators that construct proofs from proofs of the operands. The BHK interpretation is usually understood as giving intuitionistic interpretation for the logical operators, but, as pointed out by Troelstra and van Dalen [12], it is possible to understand the BHK interpretation classically. We elaborate this idea and develop a classical theory of proofs as abstract mathematical entities where the truth of a proposition becomes equivalent to the existence of proofs of the proposition.
8686702
Theory of Judgments and Derivations
We propose a computational and logical framework NF (Natural Framework) which is suitable for presenting mathematics formally. Our framework is an extendable framework since it is open-ended both computationally and logically in the sense of Martin-Lof's theory or types. NF is developed in three steps. Firstly, we introduce a theory of expressions and schemata which is used to provide a universe for representing mathematical objects, in particular, judgments and derivations as well as other usual mathematical objects. Secondly, we develop a theory of judgments within the syntactic universe of expressions. Finally, we introduce the notions of derivation and derivation game and will show that we can develop mathematics as derivation games by regarding mathematics as an open-ended process of defining new concepts and deriving new judgments. Our theory is inspired by Martin-Lof's theory of expressions and Edinburgh LF, but conceptually much simpler. Our theory is also influenced by Gentzen's natural deduction systems.
32331384
Intuitionistic and Classical Natural Deduction Systems with the Catch and the Throw Rules
10509424
A Simply Typed Context Calculus with First-class Environments
We introduce a simply typed λ-calculus λϰƐ" which has both contexts and environments as first-class values. In λϰƐ", holes in contexts are represented by ordinary variables of appropriate types and hole filling is represented by the functional application together with a new abstraction mechanism which takes care of packing and unpacking of the term which is used to fill in the holes of the context. λϰƐ" is a conservative extension of the simply typed λβ-calculus, enjoys subject reduction property, is confluent and strongly normalizing. 
 
The traditional method of defining substitution does not work for our calculus. So, we also introduce a new method of defining substitution. Although we introduce the new definition of substitution out of necessity, the new definition turns out to be conceptually simpler than the traditional definition of substitution.
46610662
CAL: A Computer Assisted Learning System for Computation and Logic
In this paper, we describe a computer system CAL which assists students' understanding of a lecture course in logic and computation. We introduce a new foundational theory of expressions, which is inspired by the theory of expressions due to Martin-Lof [6], and use the expressions determined by the theory to implement various syntactic objects in CAL. We also introduce the concept of derivation game, and show that various logical and computational systems given in the lecture course can be defined uniformly by derivation games.
7463356
Integrating Computing Resources on Multiple Grid-enabled Job Scheduling Systems Through a Grid RPC System
We present a framework for a parallel programming model by remote procedure calls bridging between largescale computing resource pools managed by multiple gridenabled job scheduling systems. With this system, the user can exploit not only each remote servers and clusters, but also computing resources provided with grid-enabled job scheduling systems located on different sites. This framework requires a Grid RPC system to decouple the computation in a remote node from the Grid RPC mechanism and uses document-based communication rather than connection-based communication. We implemented the proposed framework as an extension of the OmniRPC system, which is a Grid RPC system for parallel programming in a grid environment. We designed a general interface to adapt the OmniRPC system to various grid-enabled job scheduling systems easily and applied the proposed system to several grid-enabled job scheduling systems, including XtremWeb, CyberGRIP, Condor and Grid Engine. we show the preliminary performance of these implementations using a phylogenetic application. We found that the proposed system can achieve approximately the same performance as using OmniRPC and can handle interruptions in worker programs on remote nodes.
43068454
EM-C: Programming with Explicit Parallelism and Locality for EM-4 Multiprocessor
EM-C is a parallel extension of the C programming language designed for efficient parallel programming in the EM-4 multiprocessor.
6990232
OmniRPC: A Grid RPC Facility for Cluster and Global Computing in OpenMP
Omni remote procedure call facility, OmniRPC, is a thread-safe grid RPC facility for cluster and global computing environments. The remote libraries are implemented as executable programs in each remote computer, and OmniRPC automatically allocates remote library calls dynamically on appropriate remote computers to facilitate location transparency. We propose to use OpenMP as an easy-to-use and simple programming environment for the multi-threaded client of OmniRPC. We use the POSIX thread implementation of the Omni OpenMP compiler which allows multi-threaded execution of OpenMP programs by POSIX threads even in a single processor. Multiple outstanding requests of OmniRPC calls in OpenMP work-sharing construct are dispatched to different remote computers to exploit network-wide parallelism.
33370062
OpenGR: A Directive-Based Grid Programming Environment
In order to provide a grid programming environment for RPC-based master-worker type task parallelization of existing sequential application programs, we have designed a set of compiler directives called OpenGR, and been implementing this compiler system based on the Omni OpenMP compiler system and a grid-enabled RPC system, Ninf-G, as a parallel execution mechanism. With OpenGR directives, some existing sequential applications can easily be adapted to the grid environment as master-worker type parallel programs using RPC. Furthermore, using both OpenGR directives and the OpenMP directives enables Hybrid parallelization of the sequential programs.
206591385
A Parallel Method for Large Sparse Generalized Eigenvalue Problems by OmniRPC in a Grid Environment
In this paper we present a parallel method for finding several eigenvalues and eigenvectors of a generalized eigenvalue problem Ax = λBx, where A and B are large sparse matrices. A moment-based method by which to find all of the eigenvalues that lie inside a given domain is used. In this method, a small matrix pencil that has only the desired eigenvalues is derived by solving large sparse systems of linear equations constructed from A and B. Since these equations can be solved independently, we solve them on remote hosts in parallel. This approach is suitable for master-worker programming models. We have implemented and tested the proposed method in a grid environment using a grid RPC (remote procedure call) system called OmniRPC. The performance of the method on PC clusters that were used over a wide-area network was evaluated.