Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Kohei Honda 0001

dblp:38/906-1 · DBLP profile ↗
← Back
53ranked-venue papers
25as first author
0since 2021 · last 2017
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 32 · 12 first-authorSoftware engineering, systems software and programming languages · 22 · 11 first-authorApplied, interdisciplinary, general and emerging computing · 2 · 2 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
15 papers
Programming languages and type systems · 64% Concurrent programming · 27% Program verification · 6%
Theoretical computer science
8 papers
Logic in computer science · 82% Distributed computing theory · 18%

Topics — the 30 heaviest of 36, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems › type systems › behavioral type systems
session types
0.642016
Multiparty Asynchronous Session Types · J. ACM 2016
Structured Communication-Centered Programming for Web Services · ACM Trans. Program. Lang. Syst. 2012
Session Types and Distributed Computing · ICALP (2) 2012
Concurrent programming › concurrency theory
process calculi
0.472016
Structured Communication-Centered Programming for Web Services · ACM Trans. Program. Lang. Syst. 2012
Multiparty asynchronous session types · POPL 2008
Completeness and Logical Full Abstraction in Modal Logics for Typed Mobile Processes · ICALP (2) 2008
Programming languages and type systems › type systems › behavioral type systems
multiparty session types
0.322016
Multiparty Asynchronous Session Types · J. ACM 2016
Multiparty asynchronous session types · POPL 2008
Concurrent programming › concurrency theory › process calculi
mobile processes
0.342016
Multiparty asynchronous session types · POPL 2008
Completeness and Logical Full Abstraction in Modal Logics for Typed Mobile Processes · ICALP (2) 2008
Multiparty Asynchronous Session Types · J. ACM 2016
Programming languages and type systems › type systems › behavioral type systems
asynchronous session types
0.212016
Multiparty Asynchronous Session Types · J. ACM 2016
Programming languages and type systems
type checking
0.212016
Multiparty Asynchronous Session Types · J. ACM 2016
Programming languages and type systems
type systems
0.242008
Multiparty asynchronous session types · POPL 2008
A uniform type structure for secure information flow · ACM Trans. Program. Lang. Syst. 2007
A uniform type structure for secure information flow · POPL 2002
Programming languages and type systems › concurrent programming languages
typed pi-calculus
0.222012
Structured Communication-Centered Programming for Web Services · ACM Trans. Program. Lang. Syst. 2012
Strong Normalisation in the pi-Calculus · LICS 2001
Logic in computer science
completeness
0.122008
Completeness and Logical Full Abstraction in Modal Logics for Typed Mobile Processes · ICALP (2) 2008
Descriptive and Relative Completeness of Logics for Higher-Order Functions · ICALP (2) 2006
Concurrent programming › concurrency theory
endpoint projection
0.112012
Structured Communication-Centered Programming for Web Services · ACM Trans. Program. Lang. Syst. 2012
Distributed computing theory
distributed algorithms
0.112012
Session Types and Distributed Computing · ICALP (2) 2012
Concurrent programming › concurrency theory › process calculi
pi-calculus
0.132007
A uniform type structure for secure information flow · ACM Trans. Program. Lang. Syst. 2007
Strong Normalisation in the pi-Calculus · LICS 2001
Recursive Types in Games: Axiomatics and Process Representation · LICS 1998
Logic in computer science › semantics › denotational semantics
full abstraction
0.132008
Completeness and Logical Full Abstraction in Modal Logics for Typed Mobile Processes · ICALP (2) 2008
Recursive Types in Games: Axiomatics and Process Representation · LICS 1998
A Fully Abstract Game Semantics for General References · LICS 1998
Program verification
information flow security
0.122007
A uniform type structure for secure information flow · ACM Trans. Program. Lang. Syst. 2007
A uniform type structure for secure information flow · POPL 2002
Programming languages and type systems › information flow control
noninterference
0.122007
A uniform type structure for secure information flow · ACM Trans. Program. Lang. Syst. 2007
A uniform type structure for secure information flow · POPL 2002
Logic in computer science
modal logic
0.112008
Completeness and Logical Full Abstraction in Modal Logics for Typed Mobile Processes · ICALP (2) 2008
Logic in computer science
semantics
0.112008
Completeness and Logical Full Abstraction in Modal Logics for Typed Mobile Processes · ICALP (2) 2008
Program analysis
type-based analysis
0.112007
A uniform type structure for secure information flow · ACM Trans. Program. Lang. Syst. 2007
Programming languages and type systems › functional programming
higher-order functions
0.112006
Descriptive and Relative Completeness of Logics for Higher-Order Functions · ICALP (2) 2006
Logic in computer science
higher-order logic
0.112006
Descriptive and Relative Completeness of Logics for Higher-Order Functions · ICALP (2) 2006
Logic in computer science › semantics
game semantics
0.131998
Recursive Types in Games: Axiomatics and Process Representation · LICS 1998
A Fully Abstract Game Semantics for General References · LICS 1998
Game Theoretic Analysis of Call-by-Value Computation · ICALP 1997
Programming languages and type systems › program equivalence
contextual equivalence
0.112005
An Observationally Complete Program Logic for Imperative Higher-Order Frame Rules · LICS 2005
Programming languages and type systems
higher-order frame rules
0.112005
An Observationally Complete Program Logic for Imperative Higher-Order Frame Rules · LICS 2005
Program verification › program logic
hoare logic
0.112005
An Observationally Complete Program Logic for Imperative Higher-Order Frame Rules · LICS 2005
Programming languages and type systems › program equivalence › contextual equivalence
observational congruence
0.112005
An Observationally Complete Program Logic for Imperative Higher-Order Frame Rules · LICS 2005
Program verification
program logic
0.112005
An Observationally Complete Program Logic for Imperative Higher-Order Frame Rules · LICS 2005
Logic in computer science › process algebra
pi-calculus
0.012004
Strong normalisation in the pi -calculus · Inf. Comput. 2004
Logic in computer science
process algebra
0.012004
Strong normalisation in the pi -calculus · Inf. Comput. 2004
Services computing and microservices
web services
0.012012
Structured Communication-Centered Programming for Web Services · ACM Trans. Program. Lang. Syst. 2012
Systems and software security
information flow control
0.012007
A uniform type structure for secure information flow · ACM Trans. Program. Lang. Syst. 2007

Methods — techniques the papers use, named apart from their topics

type theory · 0.2logical characterization · 0.2type discipline · 0.1session types · 0.1process calculi · 0.1embedding · 0.1dependency core calculus · 0.1linear logic · 0.1names and operations · 0.1finite canonical form · 0.1typed lambda calculus · 0.0process-theoretic reasoning · 0.0optimised strategies · 0.0factorization arguments · 0.0definability argument · 0.0axiomatic category theory · 0.0
YearPublicationVenuePosition
2017 Monitoring networks through multiparty session types
abstract
In large-scale distributed infrastructures, applications are realised through communications among distributed components. The need for methods for assuring safe interactions in such environments is recognised, however the existing frameworks, relying on centralised verification or restricted specification methods, have limited applicability. This paper proposes a new theory of monitored π -calculus with dynamic usage of multiparty session types (MPST), offering a rigorous foundation for safety assurance of distributed components which asynchronously communicate through multiparty sessions. Our theory establishes a framework for semantically precise decentralised run-time enforcement and provides reasoning principles over monitored distributed applications, which complement existing static analysis techniques. We introduce asynchrony through the means of explicit routers and global queues, and propose novel equivalences between networks, that capture the notion of interface equivalence, i.e. equating networks offering the same services to a user. We illustrate our static–dynamic analysis system with an ATM protocol as a running example and justify our theory with results: satisfaction equivalence, local/global safety and transparency, and session fidelity.
Laura Bocchi, Tzu-Chun Chen, Romain Demangeon, Kohei Honda 0001, Nobuko Yoshida
Theor. Comput. Sci.4
2016 Multiparty Asynchronous Session Types
abstract
Communication is a central elements in software development. As a potential typed foundation for structured communication-centered programming, session types have been studied over the past decade for a wide range of process calculi and programming languages, focusing on binary (two-party) sessions. This work extends the foregoing theories of binary session types to multiparty, asynchronous sessions, which often arise in practical communication-centered applications. Presented as a typed calculus for mobile processes, the theory introduces a new notion of types in which interactions involving multiple peers are directly abstracted as a global scenario. Global types retain the friendly type syntax of binary session types while specifying dependencies and capturing complex causal chains of multiparty asynchronous interactions. A global type plays the role of a shared agreement among communication peers and is used as a basis of efficient type-checking through its projection onto individual peers. The fundamental properties of the session type discipline, such as communication safety, progress, and session fidelity, are established for general n-party asynchronous interactions.
Kohei Honda 0001, Nobuko Yoshida, Marco Carbone
J. ACM1
2016 On asynchronous eventful session semantics
abstract
Event-driven programming is one of the major paradigms in concurrent and communication-based programming, where events are typically detected as the arrival of messages on asynchronous channels. Unfortunately, the flexibility and performance of traditional event-driven programming come at the cost of more complex programs: low-level APIs and the obfuscation of event-driven control flow make programs difficult to read, write and verify. This paper introduces a π-calculus with session types that modelsevent-driven session programming(called ESP) and studies its behavioural theory. The main characteristics of the ESP model are asynchronous, order-preserving message passing, non-blocking detection of event/message arrivals and dynamic inspection of session types. Session types offer formal safety guarantees, such as communication and event handling safety, and programmatic benefits that overcome problems with existing event-driven programming languages and techniques. The new typed bisimulation theory developed for the ESP model is distinct from standard synchronous or asynchronous bisimulation, capturing the semantic nature of eventful session-based processes. The bisimilarity coincides with reduction-closed barbed congruence. We demonstrate the features and benefits of ESP and the behavioural theory through two key use cases. First, we examine an encoding and the semantic behaviour of the event selector, a central component of general event-driven systems, providing core results for verifying type-safe event-driven applications. Second, we examine the Lauer–Needham duality, building on the selector encoding and bisimulation theory to prove that a systematic transformation from multithreaded to event-driven session processes is type- and semantics-preserving.
Dimitrios Kouzapas, Nobuko Yoshida, Raymond Hu, Kohei Honda 0001
Math. Struct. Comput. Sci.4
2015 Practical interruptible conversations: distributed dynamic verification with multiparty session types and Python
Romain Demangeon, Kohei Honda 0001, Raymond Hu, Rumyana Neykova, Nobuko Yoshida
Formal Methods Syst. Des.2
2014 An observationally complete program logic for imperative higher-order functions
Kohei Honda 0001, Nobuko Yoshida, Martin Berger 0001
Theor. Comput. Sci.1
2013 Practical Interruptible Conversations - Distributed Dynamic Verification with Session Types and Python
Raymond Hu, Rumyana Neykova, Nobuko Yoshida, Romain Demangeon, Kohei Honda 0001
RV5
2012 Specifying Stateful Asynchronous Properties for Distributed Programs
Tzu-Chun Chen, Kohei Honda 0001
CONCUR2
2012 Nested Protocols in Session Types
Romain Demangeon, Kohei Honda 0001
CONCUR2
2012 Intensional and Extensional Characterisation of Global Progress in the π-Calculus
Luca Fossati, Kohei Honda 0001, Nobuko Yoshida
CONCUR2
2012 Session Types and Distributed Computing
Kohei Honda 0001
ICALP (2)1
2012 Verification of MPI Programs Using Session Types
Kohei Honda 0001, Eduardo R. B. Marques, Francisco Martins, Nicholas Ng, Vasco Thudichum Vasconcelos, Nobuko Yoshida
EuroMPI1
2012 Structured Communication-Centered Programming for Web Services
abstract
This article relates two different paradigms of descriptions of communication behavior, one focusing on global message flows and another on end-point behaviors, using formal calculi based on session types. The global calculus, which originates from a Web service description language (W3C WS-CDL), describes an interaction scenario from a vantage viewpoint; the end-point calculus, an applied typed π -calculus, precisely identifies a local behavior of each participant. We explore a theory of end-point projection, by which we can map a global description to its end-point counterparts preserving types and dynamics. Three principles of well-structured description and the type structures play a fundamental role in the theory.
Marco Carbone, Kohei Honda 0001, Nobuko Yoshida
ACM Trans. Program. Lang. Syst.2
2011 Full Abstraction in a Subtyped pi-Calculus with Linear Types
Romain Demangeon, Kohei Honda 0001
CONCUR2
2011 A Unified Theory of Program Logics: An Approach based on the π-Calculus
abstract
Facing staggering diversity of software behaviours in modern and future computing, we argue for the need of a unified theory of program logics, which can capture a general class of software behaviours, as a foundation of software engineering. We propose Hennessy–Milner logic for typed π-calculi as a possible foundation of such a theory. The π-calculus is in a singular position among computational calculi through its ability to embed sequential and concurrent programs as name passing processes without losing semantic information, and through its connection to other basic semantic theories such as linear logic and game semantics. The embedding of programs in processes leads to the embedding of program logics in the process logic, where the observational content of a given program logic is made explicit, analysed and justified on a uniform basis. As a case study, we show embedding of Hoare logic for sequential programs and a rely-guarantee logic for shared variable concurrency, suggesting that the proposed framework can offer a unifying basis to capture fundamental notions in program logics such as partial/total correctness, sequentiality and different kinds of concurrent computing.
Kohei Honda 0001, Nobuko Yoshida
Comput. J.1
2010 A Theory of Design-by-Contract for Distributed Multiparty Interactions
Laura Bocchi, Kohei Honda 0001, Emilio Tuosto, Nobuko Yoshida
CONCUR2
2010 Type-Safe Eventful Sessions in Java
Raymond Hu, Dimitrios Kouzapas, Olivier Pernet, Nobuko Yoshida, Kohei Honda 0001
ECOOP5
2010 An exact correspondence between a typed pi-calculus and polarised proof-nets
Kohei Honda 0001, Olivier Laurent 0001
Theor. Comput. Sci.1
2009 Global Principal Typing in Partially Commutative Asynchronous Sessions
Dimitris Mostrous, Nobuko Yoshida, Kohei Honda 0001
ESOP3
2008 Structured Interactional Exceptions in Session Types
Marco Carbone, Kohei Honda 0001, Nobuko Yoshida
CONCUR2
2008 Session-Based Distributed Programming in Java
Raymond Hu, Nobuko Yoshida, Kohei Honda 0001
ECOOP3
2008 Completeness and Logical Full Abstraction in Modal Logics for Typed Mobile Processes
Martin Berger 0001, Kohei Honda 0001, Nobuko Yoshida
ICALP (2)2
2008 Multiparty asynchronous session types
abstract
Communication is becoming one of the central elements in software development. As a potential typed foundation for structured communication-centred programming, session types have been studied over the last decade for a wide range of process calculi and programming languages, focussing on binary (two-party) sessions. This work extends the foregoing theories of binary session types to multiparty, asynchronous sessions, which often arise in practical communication-centred applications. Presented as a typed calculus for mobile processes, the theory introduces a new notion of types in which interactions involving multiple peers are directly abstracted as a global scenario. Global types retain a friendly type syntax of binary session types while capturing complex causal chains of multiparty asynchronous interactions. A global type plays the role of a shared agreement among communication peers, and is used as a basis of efficient type checking through its projection onto individual peers. The fundamental properties of the session type discipline such as communication safety, progress and session fidelity are established for generaln-party asynchronous interactions.
Kohei Honda 0001, Nobuko Yoshida, Marco Carbone
POPL1
2008 Logical Reasoning for Higher-Order Functions with Local State
abstract
We introduce an extension of Hoare logic for call-by-value higher-order functions with ML-like local reference generation. Local references may be generated dynamically and exported outside their scope, may store higher-order functions and may be used to construct complex mutable data structures. This primitive is captured logically using a predicate asserting reachability of a reference name from a possibly higher-order datum and quantifiers over hidden references. We explore the logic's descriptive and reasoning power with non-trivial programming examples combining higher-order procedures and dynamically generated local state. Axioms for reachability and local invariant play a central role for reasoning about the examples.
Nobuko Yoshida, Kohei Honda 0001, Martin Berger 0001
Log. Methods Comput. Sci.2
2007 Structured Communication-Centred Programming for Web Services
Marco Carbone, Kohei Honda 0001, Nobuko Yoshida
ESOP2
2007 Logical Reasoning for Higher-Order Functions with Local State
Nobuko Yoshida, Kohei Honda 0001, Martin Berger 0001
FoSSaCS2
2007 A logical analysis of aliasing in imperative higher-order functions
abstract
Abstract We present a compositional programme logic for call-by-value imperative higher-order functions with general forms of aliasing, which can arise from the use of reference names as function parameters, return values, content of references and parts of data structures. The programme logic extends our earlier logic for alias-free imperative higher-order functions with new operators which serve as building blocks for clean structural reasoning about programms and data structures in the presence of aliasing. This has been an open issue since the pioneering work by Cartwright–Oppen and Morris twenty-five years ago. We illustrate usage of the logic for description and reasoning through concrete examples including a higher-order polymorphic Quicksort. The logical status of the new operators is clarified by translating them into (in)equalities of reference names.
Martin Berger 0001, Kohei Honda 0001, Nobuko Yoshida
J. Funct. Program.2
2007 A uniform type structure for secure information flow
abstract
The π-calculus, a calculus of mobile processes, can compositionally represent dynamics of major programming constructs by decomposing them into name passing. The present work reports our experience in using a linear/affine typed π-calculus for the analysis and development of type-based analyses for programming languages, focussing on secure information flow analysis. After presenting a basic typed calculus for secrecy, we demonstrate its usage by a sound embedding of the dependency core calculus (DCC) and the development of the call-by-value version of DCC. The secrecy analysis is then extended to stateful computation, for which we develop a novel type discipline for imperative programming language that extends a secure multi-threaded imperative language by Smith and Volpano with general references and higher-order procedures. In each analysis, the embedding gives a simple proof of noninterference.
Kohei Honda 0001, Nobuko Yoshida
ACM Trans. Program. Lang. Syst.1
2006 Descriptive and Relative Completeness of Logics for Higher-Order Functions
Kohei Honda 0001, Martin Berger 0001, Nobuko Yoshida
ICALP (2)1
2005 A logical analysis of aliasing in imperative higher-order functions
abstract
We present a compositional program logic for call-by-value imperative higher-order functions with general forms of aliasing, which can arise from the use of reference names as function parameters, return values, content of references and parts of data structures. The program logic extends our earlier logic for alias-free imperative higher-order functions with new modal operators which serve as building blocks for clean structural reasoning about programs and data structures in the presence of aliasing. This has been an open issue since the pioneering work by Cartwright-Oppen and Morris twenty-five years ago. We illustrate usage of the logic for description and reasoning through concrete examples including a higher-order polymorphic Quicksort. The logical status of the new operators is clarified by translating them into (in)equalities of reference names. The logic is observationally complete in the sense that two programs are observationally indistinguishable if they satisfy the same set of assertions.
Martin Berger 0001, Kohei Honda 0001, Nobuko Yoshida
ICFP2
2005 An Observationally Complete Program Logic for Imperative Higher-Order Frame Rules
abstract
We propose a simple compositional program logic for an imperative extension of call-by-value PCF, built on Hoare logic and our preceding work on program logics for pure higher-order functions. A systematic use of names and operations on them allows precise and general description of complex higher-order imperative behaviour. The logic offers a foundation for general treatment of aliasing and local state on its basis, with minimal extensions. After establishing soundness, we prove that valid assertions for programs completely characterise their behaviour up to observational congruence, which is proved using a variant of finite canonical forms. The use of the logic is illustrated through reasoning examples which are hard to assert and infer using existing program logics.
Kohei Honda 0001, Nobuko Yoshida, Martin Berger 0001
LICS1
2005 Genericity and the pi-calculus
Martin Berger 0001, Kohei Honda 0001, Nobuko Yoshida
Acta Informatica2
2005 Noninterference through flow analysis
abstract
This paper proposes new syntactic inference rules which can directly extract information flow in a given typed process in the π-calculus. In the flow analysis, a flow in a process is captured as a chain of possible interactions which transform differences in behaviours from one part of its interface to another part of its interface. Polarity in types plays a fundamental role in the analysis, which is elucidated via examples. We show that this inductive flow analysis can be used for giving simple proofs of noninterference in the secrecy analyses for the π-calculus with linear/affine typing, including its concurrent, stateful extensions.
Kohei Honda 0001, Nobuko Yoshida
J. Funct. Program.1
2004 From process logic to program logic
abstract
We present a process logic for the p -calculus with the linear/affine type discipline [6, 7, 31, 32, 33, 59, 60]. Built on the preceding studies on logics for programs and processes, simple systems of assertions are developed, capturing the classes of behaviours ranging from purely functional interactions to those with destructive update, local state and genericity. A central feature of the logic is representation of the behaviour of an environment as the dual of that of a process in an assertion, which is crucial for obtaining compositional proof systems. From the process logic we can derive compositional program logics for various higher-order programming languages, whose soundness is proved via their embeddings into the process logic. In this paper, the key technical framework of the process logic and its applications is presented focussing on pure functional behaviour and a prototypical call-by-value functional language, leaving the full technical development to [27, 26].
Kohei Honda 0001
ICFP1
2004 A compositional logic for polymorphic higher-order functions
abstract
This paper introduces a compositional program logic for higher-order polymorphic functions and standard data types. The logic enables us to reason about observable properties of polymorphic programs starting from those of their constituents. Just as types attached to programs offer information on their composability so as to guarantee basic safety of composite programs, formulae of the proposed logic attached to programs offer information on their composability so as to guarantee fine-grained behavioural properties of polymorphic programs. The central feature of the logic is a systematic usage of names and operations on them, whose origin is in the logics for typed π-calculi. The paper introduces the program logic and its proof rules and illustrates their usage by non-trivial reasoning examples, taking a prototypical call-by-value functional language with impredicative polymorphism and recursive types as a target language.
Kohei Honda 0001, Nobuko Yoshida
PPDP1
2004 Strong normalisation in the pi -calculus
Nobuko Yoshida, Martin Berger 0001, Kohei Honda 0001
Inf. Comput.3
2003 Genericity and the pi-Calculus
Martin Berger 0001, Kohei Honda 0001, Nobuko Yoshida
FoSSaCS2
2002 Linearity and Bisimulation
Nobuko Yoshida, Kohei Honda 0001, Martin Berger 0001
FoSSaCS2
2002 A uniform type structure for secure information flow
abstract
The π-calculus is a formalism of computing in which we can compositionally represent dynamics of major programming constructs by decomposing them into a single communication primitive, the name passing. This work reports our experience in using a linear/affine typed π-calculus for the analysis and development of type systems of programming languages, focussing on secure information flow analysis. After presenting a basic typed calculus for secrecy, we demonstrate its usage by a sound embedding of the dependency core calculus (DCC) and by the development of a novel type discipline for imperative programs which extends both a secure multi-threaded imperative language by Smith and Volpano and (a call-by-value version of) DCC. In each case, the embedding gives a simple proof of noninterference.
Kohei Honda 0001, Nobuko Yoshida
POPL1
2001 Strong Normalisation in the pi-Calculus
abstract
Introduces a typed /spl pi/-calculus where strong normalisation is ensured by typability. Strong normalisation is a useful property in many computational contexts, including distributed systems. In spite of its simplicity, our type discipline captures a wide class of converging name-passing interactive behaviours. The proof of strong normalisability combines methods from typed /spl lambda/-calculi and linear logic with process-theoretic reasoning. It is adaptable to systems involving state and other extensions. Strong normalisation is shown to have significant consequences, including finite axiomatisation of weak bisimilarity, a fully abstract embedding of the simply-typed /spl lambda/-calculus with products and sums and basic liveness in interaction. Strong normalisability has been extensively studied as a fundamental property in functional calculi, term rewriting and logical systems. This work is one of the first steps to extend theories and proof methods for strong normalisability to the context of name-passing processes.
Nobuko Yoshida, Martin Berger 0001, Kohei Honda 0001
LICS3
2000 Secure Information Flow as Typed Process Behaviour
Kohei Honda 0001, Vasco Thudichum Vasconcelos, Nobuko Yoshida
ESOP1
2000 Elementary structures in process theory (1): Sets with renaming
Kohei Honda 0001
Math. Struct. Comput. Sci.1
1999 Game-Theoretic Analysis of Call-by-Value Computation
Kohei Honda 0001, Nobuko Yoshida
Theor. Comput. Sci.1
1998 Language Primitives and Type Discipline for Structured Communication-Based Programming
Kohei Honda 0001, Vasco Thudichum Vasconcelos, Makoto Kubo
ESOP1
1998 A Fully Abstract Game Semantics for General References
abstract
A games model of a programming language with higher-order store in the style of ML-references is introduced. The category used for the model is obtained by relaxing certain behavioural conditions on a category of games previously used to provide fully abstract models of pure functional languages. The model is shown to be fully abstract by means of factorization arguments which reduce the question of definability for the language with higher-order store to that for its purely functional fragment.
Samson Abramsky, Kohei Honda 0001, Guy McCusker
LICS2
1998 Recursive Types in Games: Axiomatics and Process Representation
abstract
This paper presents two basic results on game-based semantics of FPC, a metalanguage with sums, products, exponentials and recursive types. First we give an axiomatic account of the category of games G, offering a fundamental structural analysis of the category as well as a transparent way to prove computational adequacy. As a consequence we obtain an intensional full-abstraction result through a standard definability argument. Next we extend the category G by introducing a category of games G/sub i/ with optimised strategies; we show that the denotational semantics in G/sub i/ gives a compilation of FPC terms into core Pict codes (the asynchronous polyadic /spl pi/-calculus without summation). The process representation follows a pioneering idea of Hyland and Ong (1995). However we advance their representation by introducing semantically well-founded optimisation techniques; we also extend the setting to encompass the rich type structure of FPC. The resulting code gives basic insight on the relationship between the abstract, categorical, types and their possible implementations.
Marcelo P. Fiore, Kohei Honda 0001
LICS2
1997 Game Theoretic Analysis of Call-by-Value Computation
Kohei Honda 0001, Nobuko Yoshida
ICALP1
1996 Composing Processes
abstract
We present a theory of types for concurrency based on a simple notion of typed algebras, and discuss its applications. The basic idea is to determine a partial algebra of processes by a partial algebra of types, thus controlling process composability, just as types in a typed applicative structure [25] determine composability of elements of the underlying applicative structure. A class of typed algebras with a simple operator for process composition are introduced, which are shown to encompass a wide range of type disciplines for processes, placing extant theories such as Milner's sorting [22] and Lafont's typed nets [20] on a uniform technical footing, suggesting generalisations, and offering a secure basis for integration. We also prove that the class of typable operations in the underlying partial algebras is completely characterised by a certain modularity principle in process composition, which gives us the basic understanding on the nature of the type disciplines representable in the proposed construction.
Kohei Honda 0001
POPL1
1995 On Reduction-Based Process Semantics
Kohei Honda 0001, Nobuko Yoshida
Theor. Comput. Sci.1
1994 Combinatory Representation of Mobile Processes
abstract
A theory of combinators in the setting of concurrent processes is formulated. The new combinators are derived from an analysis of the operation called asynchronous name passing, just as an analysis of logical substitution gave rise to the sequential combinators. A system with seven atoms and fixed interaction rules, but with no notion of prefixing, is introduced, and is shown to be capable of representing input and output prefixes over arbitrary terms in a behaviourally correct way, just as SK-combinators are closed under functional abstraction without having it as a proper syntactic construct. The basic equational correspondence between concurrent combinators and a system of asynchronous mobile processes, as well as the embedding of the finite part of π-calculus in concurrent combinators, is proved. These results will hopefully serve as a cornerstone for further investigation of the theoretical as well as pragmatic possibilities of the presented construction.
Kohei Honda 0001, Nobuko Yoshida
POPL1
1993 Types for Dyadic Interaction
Kohei Honda 0001
CONCUR1
1993 Principal Typing Schemes in a Polyadic pi-Calculus
Vasco Thudichum Vasconcelos, Kohei Honda 0001
CONCUR2
1993 On Reduction-Based Semantics
Kohei Honda 0001, Nobuko Yoshida
FSTTCS1
1991 An Object Calculus for Asynchronous Communication
Kohei Honda 0001, Mario Tokoro
ECOOP1