Results 1  10
of
15
PsiCalculi in Isabelle
 In Proc of the 22nd Conference on Theorem Proving in Higher Order Logics (TPHOLs), volume 5674 of LNCS
"... Abstract. Psicalculi are extensions of the picalculus, accommodating arbitrary nominal datatypes to represent not only data but also communication channels, assertions and conditions, giving it an expressive power beyond the applied picalculus and the concurrent constraint picalculus. We have for ..."
Abstract

Cited by 15 (4 self)
 Add to MetaCart
(Show Context)
Abstract. Psicalculi are extensions of the picalculus, accommodating arbitrary nominal datatypes to represent not only data but also communication channels, assertions and conditions, giving it an expressive power beyond the applied picalculus and the concurrent constraint picalculus. We have formalised psicalculi in the interactive theorem prover Isabelle using its nominal datatype package. One distinctive feature is that the framework needs to treat binding sequences, as opposed to single binders, in an efficient way. While different methods for formalising single binder calculi have been proposed over the last decades, representations for such binding sequences are not very well explored. The main effort in the formalisation is to keep the machine checked proofs as close to their penandpaper counterparts as possible. We discuss two approaches to reasoning about binding sequences along with their strengths and weaknesses. We also cover custom induction rules to remove the bulk of manual alphaconversions. 1
Specifying Properties of Concurrent Computations in CLF
, 2004
"... CLF (the Concurrent Logical Framework) is a language for specifying and reasoning about concurrent systems. Its most significant feature is the firstclass representation of concurrent executions as monadic expressions. We illustrate the representation techniques available within CLF by applying the ..."
Abstract

Cited by 7 (5 self)
 Add to MetaCart
CLF (the Concurrent Logical Framework) is a language for specifying and reasoning about concurrent systems. Its most significant feature is the firstclass representation of concurrent executions as monadic expressions. We illustrate the representation techniques available within CLF by applying them to an asynchronous picalculus with correspondence assertions, including its dynamic semantics, safety criterion, and a type system with latent effects due to Gordon and Jeffrey.
A completeness proof for bisimulation in the picalculus using Isabelle. ENTCS
"... We use the interactive theorem prover Isabelle to prove that the algebraic axiomatization of bisimulation equivalence in the picalculus is sound and complete. This is the first proof of its kind to be wholly machine checked. Although the result has been known for some time the proof had parts which ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
(Show Context)
We use the interactive theorem prover Isabelle to prove that the algebraic axiomatization of bisimulation equivalence in the picalculus is sound and complete. This is the first proof of its kind to be wholly machine checked. Although the result has been known for some time the proof had parts which needed careful attention to detail to become completely formal. It is not that the result was ever in doubt; rather, our contribution lies in the methodology to prove completeness and get absolute certainty that the proof is correct, while at the same time following the intuitive lines of reasoning of the original proof. Completeness of axiomatizations is relevant for many variants of the calculus, so our method has applications beyond this single result. We build on our previous effort of implementing a framework for the picalculus in Isabelle using the nominal data type package, and strengthen our claim that this framework is well suited to represent the theory of the picalculus, especially in the smooth treatment of bound names.
Formalising the πcalculus using Nominal Logic
"... Abstract. We formalise the picalculus using the nominal datatype package, a package based on ideas from the nominal logic by Pitts et al., and demonstrate an implementation in Isabelle/HOL. The purpose is to derive powerful induction rules for the semantics in order to conduct machine checkable pro ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
(Show Context)
Abstract. We formalise the picalculus using the nominal datatype package, a package based on ideas from the nominal logic by Pitts et al., and demonstrate an implementation in Isabelle/HOL. The purpose is to derive powerful induction rules for the semantics in order to conduct machine checkable proofs, closely following the intuitive arguments found in manual proofs. In this way we have covered many of the standard theorems of bisimulation equivalence and congruence, both late and early, and both strong and weak in a unison manner. We thus provide one of the most extensive formalisations of a process calculus ever done inside a theorem prover. A significant gain in our formulation is that agents are identified up to alphaequivalence, thereby greatly reducing the arguments about bound names. This is a normal strategy for manual proofs about the picalculus, but that kind of hand waving has previously been difficult to incorporate smoothly in an interactive theorem prover. We show how the nominal logic formalism and its support in Isabelle accomplishes this and thus significantly reduces the tedium of conducting completely formal proofs. This improves on previous work using weak higher order abstract syntax since we do not need extra assumptions to filter out exotic terms and can keep all arguments within a familiar firstorder logic.
Bisimulations upto: beyond firstorder transition systems
"... Abstract. The bisimulation proof method can be enhanced by employing ‘bisimulations upto ’ techniques. A comprehensive theory of such enhancements has been developed for firstorder (i.e., CCSlike) labelled transition systems (LTSs) and bisimilarity, based on the notion of compatible function for ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
Abstract. The bisimulation proof method can be enhanced by employing ‘bisimulations upto ’ techniques. A comprehensive theory of such enhancements has been developed for firstorder (i.e., CCSlike) labelled transition systems (LTSs) and bisimilarity, based on the notion of compatible function for fixedpoint theory. We transport this theory onto languages whose bisimilarity and LTS go beyond those of firstorder models. The approach consists in exhibiting fully abstract translations of the more sophisticated LTSs and bisimilarities onto the firstorder ones. This allows us to reuse directly the large corpus of upto techniques that are available on firstorder LTSs. The only ingredient that has to be manually supplied is the compatibility of basic upto techniques that are specific to the new languages. We investigate the method on the picalculus, the λcalculus, and a (callbyvalue) λcalculus with references. 1
Locally Nameless Permutation Types?
"... Abstract. We define “Locally Nameless Permutation Types”, which fuse permutation types as used in Nominal Isabelle with the locally nameless representation. We show that this combination is particularly useful when formalizing programming languages where bound names may become free during executio ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. We define “Locally Nameless Permutation Types”, which fuse permutation types as used in Nominal Isabelle with the locally nameless representation. We show that this combination is particularly useful when formalizing programming languages where bound names may become free during execution (“extrusion”), common in process calculi. It inherits the generic definition of permutations and support, and associated lemmas, from the Nominal approach, and the ability to stay close to pencilandpaper proofs from the locally nameless approach. We explain how to use cofinite quantification in this setting, show why reasoning about renaming is more important here than in languages without extrusion, and provide results about infinite support, necessary when reasoning about countable choice.
Declaration of Authorship
, 2015
"... Computer Science, hereby declare that this report and the work described in it are my own work, unaided except as may be specified below, and that the report does not contain material that has already been used to any substantial extent for a comparable purpose. Total word count: 13758 (excluding al ..."
Abstract
 Add to MetaCart
(Show Context)
Computer Science, hereby declare that this report and the work described in it are my own work, unaided except as may be specified below, and that the report does not contain material that has already been used to any substantial extent for a comparable purpose. Total word count: 13758 (excluding all mathematical symbols) Signed: Date: All trademarks used in this dissertation are hereby acknowledged. ii The theory of nominal sets provide a mathematical analysis of names that is based upon symmetry. It formalizes the informal reasoning we employ while working with languages involving name binding operators. The central ideas of the theory are support, freshness and name abstraction, which respectively encapsulate the ideas of name dependence, name independence and alpha equivalence. This theory has been devel
and their Formal Proofs
, 2012
"... Psicalculi is a parametric framework for extensions of the picalculus, with arbitrary data structures and logical assertions for facts about data. This thesis presents broadcast psicalculi and higherorder psicalculi, two extensions of the psicalculi framework, allowing respectively onetomany ..."
Abstract
 Add to MetaCart
Psicalculi is a parametric framework for extensions of the picalculus, with arbitrary data structures and logical assertions for facts about data. This thesis presents broadcast psicalculi and higherorder psicalculi, two extensions of the psicalculi framework, allowing respectively onetomany communications and the use of higherorder process descriptions through conditions in the parameterised logic. Both extensions preserve the purity of the psicalculi semantics; the standard congruence and structural properties of bisimilarity are proved formally in Isabelle. The work going into the extensions show that depending on the specific extension, working out the formal proofs can be a workintensive process. We find that some of this work could be automated, and implementing such automation may facilitate the development of future extensions to the psicalculi framework. Acknowledgements I would like to thank my advisor, Joachim Parrow, and my coadvisor, Björn Victor for all their support, help, and advice. I would like to thank all the coauthors; Johannes Borgström, Shuqin Huang,
Departamento de Sistemas Informáticos y Programación,
, 2003
"... This paper describes in detail how to bridge the gap between theory and practice when implementing in Maude structural operational semantics described in rewriting logic, where transitions become rewrites and inference rules become conditional rewrite rules with rewrites in the conditions, as made ..."
Abstract
 Add to MetaCart
(Show Context)
This paper describes in detail how to bridge the gap between theory and practice when implementing in Maude structural operational semantics described in rewriting logic, where transitions become rewrites and inference rules become conditional rewrite rules with rewrites in the conditions, as made possible by the new features in Maude 2.0. We validate this technique using it in several case studies: a functional language Fpl (evaluation and computation semantics, including an abstract machine), imperative languages WhileL (evaluation and computation semantics) and GuardL with nondeterminism (computation semantics), Kahn’s functional language MiniML (evaluation or natural semantics), Milner’s CCS (with strong and weak transitions), and Full LOTOS (including ACT ONE data type specifications). In addition, on top of CCS we develop an implementation of the HennessyMilner modal logic for describing local capabilities of processes, and for LOTOS we build an entire tool where Full LOTOS specifications can be entered and executed (without user knowledge of the underlying implementation of the semantics). We also compare this method based on transitions as rewrites with another one based on transitions as judgements.