Lecture Notes in Computer Science 6486 CommencedPublicationin1973 FoundingandFormerSeriesEditors: GerhardGoos,JurisHartmanis,andJanvanLeeuwen EditorialBoard DavidHutchison LancasterUniversity,UK TakeoKanade CarnegieMellonUniversity,Pittsburgh,PA,USA JosefKittler UniversityofSurrey,Guildford,UK JonM.Kleinberg CornellUniversity,Ithaca,NY,USA AlfredKobsa UniversityofCalifornia,Irvine,CA,USA FriedemannMattern ETHZurich,Switzerland JohnC.Mitchell StanfordUniversity,CA,USA MoniNaor WeizmannInstituteofScience,Rehovot,Israel OscarNierstrasz UniversityofBern,Switzerland C.PanduRangan IndianInstituteofTechnology,Madras,India BernhardSteffen TUDortmundUniversity,Germany MadhuSudan MicrosoftResearch,Cambridge,MA,USA DemetriTerzopoulos UniversityofCalifornia,LosAngeles,CA,USA DougTygar UniversityofCalifornia,Berkeley,CA,USA GerhardWeikum MaxPlanckInstituteforInformatics,Saarbruecken,Germany Michael Johnson Dusko Pavlovic (Eds.) Algebraic Methodology and Software Technology 13th International Conference, AMAST 2010 Lac-Beauport, QC, Canada, June 23-25, 2010 Revised Selected Papers 1 3 VolumeEditors MichaelJohnson MacquarieUniversity Sydney,Australia E-mail:[email protected] DuskoPavlovic UniversityofOxford Oxford,UK E-mail:[email protected] LibraryofCongressControlNumber:2010941005 CRSubjectClassification(1998):D.2,F.3,D.3,F.4.1,D.2.4,D.1 LNCSSublibrary:SL2–ProgrammingandSoftwareEngineering ISSN 0302-9743 ISBN-10 3-642-17795-6SpringerBerlinHeidelbergNewYork ISBN-13 978-3-642-17795-8SpringerBerlinHeidelbergNewYork Thisworkissubjecttocopyright.Allrightsarereserved,whetherthewholeorpartofthematerialis concerned,specificallytherightsoftranslation,reprinting,re-useofillustrations,recitation,broadcasting, reproductiononmicrofilmsorinanyotherway,andstorageindatabanks.Duplicationofthispublication orpartsthereofispermittedonlyundertheprovisionsoftheGermanCopyrightLawofSeptember9,1965, initscurrentversion,andpermissionforusemustalwaysbeobtainedfromSpringer.Violationsareliable toprosecutionundertheGermanCopyrightLaw. springer.com ©Springer-VerlagBerlinHeidelberg2011 PrintedinGermany Typesetting:Camera-readybyauthor,dataconversionbyScientificPublishingServices,Chennai,India Printedonacid-freepaper 06/3180 Preface This volume contains the papers presented at AMAST 2010: the 13th Inter- national conference on Algebraic Methodology and Software Technology. The major goal of the AMAST conferences is to promote research that may lead to the setting of software technology on a firm, mathematical basis. Toward this goal, the conference supports a broad cooperation between academia and in- dustry. The virtues of a software technologydeveloped on a mathematical basis include the provision of software that is: 1. Correct, and the correctness can be proved mathematically 2. Safe, so that it can be used in the implementation of critical systems 3. Portable,i.e.,independentofcomputingplatformsandlanguagegenerations 4. Evolutionary, i.e., it can be self-adaptable and evolves with the problem domain 5. Secure, so that its network and user interactions can be predicted and controlled The previous editions of the AMAST Conference were held at Iowa City (1989, 1991), Twente (1993), Montreal (1995), Munich (1996), Sydney (1997), Man- aus (1999), Iowa City (2000), Reunion Island (2002), Stirling (2004), Saaremaa (2006)andUrbana-Champaign(2008).Eachconferenceoverthelastfifteenyears was accompanied by a proceedings volume, published in the Springer Lecture Notes in Computer Science series. This 13th edition of AMAST took place during June 23–26, 2010 in Lac- Beauport, in Qu´ebec, Canada. It was was colocated with MPC 2010: the 10th InternationalConferenceonMathematicsofProgramConstruction,heldduring June 21–23, 2010. There were 33 submissions. Each submission was reviewed by at least three, and on the average 3.9, Program Committee members. The committee decided to acceptten full-length researchpresentationsandfour sys- temdemonstrations.Theprogramalsoincludedtwoinvitedtalks,givenbyJane Hillston (Edinburgh University), and Catuscia Palamidesi (INRIA). Jane Hill- ston also provided a paper for Part 1 of this volume. The contributed research papers are in Part 2 and Part 3 contains the system demonstrations. We aregratefulto the members ofthe ProgramCommittee andthe external refereesfortheircareanddiligenceinreviewingthesubmittedpapers,andtothe staff of Springer-Verlag.The review process and compilation of the proceedings were greatly helped by Andrei Voronkov’s EasyChair system. August 2010 Michael Johnson Dusko Pavlovic Conference Organization Program Chairs Michael Johnson Macquarie University, Australia Dusko Pavlovic KestrelInstitute,USAandUniversityofOxford,UK Program Committee Paolo Baldan Dipartimento di Matematica Pura e Applicata, Universita´ di Padova,Italy Gilles Barthe IMDEA Software, Spain Michel Bidoit INRIA Saclay, France Manfred Broy TUM, Germany Roberto Bruni University of Pisa, Italy Iliano Cervesato Carnegie Mellon University - Qatar Campus, Qatar Adriana Compagnoni Stevens Institute of Technology, USA Jos´e Luiz Fiadeiro University of Leicester, UK Kokichi FUTATSUGI JAIST, Japan Rob Goldblatt Victoria University of Wellington, New Zealand Ichiro Hasuo RIMS, Kyoto University, Japan Rolf Hennicker Ludwig-Maximilians-Universita¨tMu¨nchen, Germany H´el`ene Kirchner INRIA, France Barbara Ko¨nig Universita¨t Duisburg-Essen, Germany Narciso Marti Oliet Universidad Complutense de Madrid, Spain Michael Mislove Tulane University, USA Larry Moss Department of Mathematics, Indiana University, Bloomington, USA Till Mossakowski DFKI Lab Bremen, Germany Peter D. Mosses Swansea University, UK Andrzej Murawski University of Oxford, UK Uwe Nestmann Technische Universit¨at Berlin, Germany Fernando Orejas UPC, Spain Leila Ribeiro Universidade Federal do Rio Grande do Sul, Brazil Grigore Rosu University of Illinois at Urbana-Champaign, USA Jan Rutten CWI, The Netherlands VIII Conference Organization Lutz Schr¨oder DFKI Bremen and Universita¨t Bremen, Germany Wolfram Schulte Microsoft Research, USA Douglas Smith Kestrel Institute, USA Carolyn Talcott SRI International, USA Andrzej Tarlecki Institute of Informatics, Faculty of Mathematics, Informatics and Mechanics, Warsaw University, Poland Varmo Vene University of Tartu, Estonia E.P. de Vink Technische Universiteit Eindhoven, The Netherlands James Worrell University of Oxford, UK External Reviewers Ludwig Adam Dieter Hutter Sebastian Bauer Stefan Kiefer Laura Bocchi Ekaterina Komendantskaya Jewgenij Botaschanjan Dexter Kozen Marzia Buscemi C´esar Kunz Yuki Chiba Alberto Lluch Lafuente Mihai Codescu Masaki Nakamura Andrea Corradini Kazuhiro Ogata Silvia Crafa Catuscia Palamidessi Vijay D’silva Kirstin Peters Tobias Eibach Ricardo Pen˜a Cristian Ene Erik Poll Jean-Christophe Filliˆatre Bernhard Reus Reiner H¨ahnle Mehrnoosh Sadrzadeh Daniel Hedin Francesco Tapparo Torsten Hildebrandt David Trachtenherz Cl´ement Hurlin Virginie Wiels Local Organizers Claude Bolduc, Jules Desharnais, and B´echir Ktari (Universit´e Laval, Canada) Sponsoring Institutions – Universit´e Laval, Qu´ebec, Canada, http://www.ulaval.ca – Centre de recherches math´ematiques, Universit´e de Montr´eal, Montr´eal, Canada, http://www.crm.umontreal.ca Table of Contents Part 1. Invited Paper Structural Analysis for Stochastic Process Algebra Models (Invited Talk) ............................................ 1 Jie Ding and Jane Hillston Part 2. Contributed Research Papers Verification of Common Interprocedural Compiler Optimizations Using Visibly Pushdown Kleene Algebra.................................. 28 Claude Bolduc and B´echir Ktari On the Expressiveness of the π-Calculus and the Mobile Ambients ..... 44 Linda Brodo Integrating Maude into Hets....................................... 60 Mihai Codescu, Till Mossakowski, Adria´n Riesco, and Christian Maeder Model Refinement Using Bisimulation Quotients ..................... 76 Roland Glu¨ck, Bernhard Mo¨ller, and Michel Sintzoff Type Fusion..................................................... 92 Ralf Hinze Coalgebraic Semantics for Parallel Derivation Strategies in Logic Programming.................................................... 111 Ekaterina Komendantskaya, Guy McCusker, and John Power Learning in a Changing World, an Algebraic Modal Logical Approach ....................................................... 128 Prakash Panangaden and Mehrnoosh Sadrzadeh Matching Logic: An Alternative to Hoare/FloydLogic ................ 142 Grigore Ro¸su, Chucky Ellison, and Wolfram Schulte ProgramCalculation in Coq....................................... 163 Julien Tesson, Hideki Hashimoto, Zhenjiang Hu, Fr´ed´eric Loulergue, and Masato Takeichi Cooperation of Algebraic Constraint Domains in Higher-Order Functional and Logic Programming ................................ 180 Rafael del Vado V´ırseda X Table of Contents Part 3. System Demonstrations Proving Termination Properties with mu-term ...................... 201 Beatriz Alarc´on, Rau´l Guti´errez, Salvador Lucas, and Rafael Navarro-Marset BAL Tool in Flexible Manufacturing Systems........................ 209 Diego P´erez Lea´ndrez, M. Carmen Ruiz, J. Jose Pardo, and Diego Cazorla A Complete Declarative Debugger for Maude........................ 216 Adria´n Riesco, Alberto Verdejo, and Narciso Mart´ı-Oliet An Assume Guarantee Approach for Checking Quantified Array Assertions....................................................... 226 Mohamed Nassim Seghir Author Index.................................................. 237 Structural Analysis for Stochastic Process Algebra Models Jie Ding1 and Jane Hillston2 1 School of Information Engineering, Yangzhou University,Yangzhou, 225009, China [email protected] 2 LFCS, School of Informatics, Edinburgh University,UK [email protected] Abstract. Stochastic process algebra models have been successfully usedintheareaofperformancemodellingforthelasttwentyyears,and more recently have been adopted for modelling biochemical processes in systems biology. Most research on these modelling formalisms has been on quantitative analysis, particularly the derivation of quantified dynamicinformation about thesystem modelled intheface of thestate space explosion problem. In this paper we instead consider qualitative analysis,lookingathowrecentdevelopmentstotacklestatespaceexplo- sion in quantified analysis can be also harnessed to establish properties such as freedom from deadlock in an efficient manner. 1 Introduction Stochastic process algebras were introduced in the early 1990s as a formal modelling formalism for performance modelling which allowed continuous time Markovchains(CTMCs)tobespecifiedinarigorous,compositionalmanner(see for example [1, 10, 12]). Like all discrete state modelling formalisms the process algebra models suffered from problems of state space explosion when represent- ing large or complex systems, and subsequent work focussed on exploiting the compositionalityofthe processalgebrato decomposeorsimplify the underlying CTMC e.g. [2, 5, 11, 15, 19, 22]. More recently stochastic process algebras such as the stochastic π-calculus [16, 20] and PEPA [3, 4] have been used for modelling biochemical mechanisms withincells.Inthesecasesthestatespaceexplosionproblembecomesalmostin- surmountable.Consequentlyinmanycasesmodelsareanalysedbydiscreteevent simulationratherthan being able to abstractlyconsider allpossible behaviours. However an alternative approach has emerged which is suitable for models which are comprised of large numbers of repeated components, fluid approxi- mation [13]. In this approach an alternative state representation is chosen, and system dynamics are approximated by a continuous updating of state rather than the usual discrete steps which are represented in process algebra seman- tics. Whereas process algebra semantics usually capture the structure of the system in terms of interacting components and eachof their localstates, in this M.JohnsonandD.Pavlovic(Eds.):AMAST2010,LNCS6486,pp.1–27,2011. (cid:2)c Springer-VerlagBerlinHeidelberg2011 2 J. Dingand J. Hillston approachonlyaaggregationiscapturedwhichcountsthenumberofcomponents which currently exhibit a particular behaviour [25]. Whilst the focus of stochastic process algebras has understandably been pri- marily quantitative analysis, qualitative analysis can also provide valuable in- sight into the behaviour of a system. In contrast, in Petri net modelling there are well-established techniques of structural analysis [6, 9, 17, 23, 24]. In this paper we show how the new state representationschema for the stochastic pro- cessalgebraPEPA,developedto supportfluidapproximation,makesitpossible to readily adapt structural analysis techniques for Petri nets to PEPA. More- over, the compact representation form means that qualitative analysis can now be applied to systems of a size and complexity which could not previously be considered. The remainder of this paper is organised as follows. Section 2 introduces PEPA and the numerical representationschema used throughout this paper. In Section 3 we explainhow this representationmakes apparentthe P/Tstructure underlying every PEPA model and in Section 4 we show how this structure can be used to uncover invariants of a model. In Section 5 and 6 we discussed lin- earisedstatespaceandanewdeadlockcheckingalgorithmrespectively.Section7 presents some related work and we conclude in Section 8. 2 The PEPA Modelling Formalism This section will briefly introduce the PEPA language and its numerical repre- sentationscheme.ThenumericalrepresentationschemeforPEPAwasdeveloped by Ding in his thesis [7], and represents a model numerically rather than syn- tactically supporting the use of mathematical tools and methods to analyse the model. 2.1 Introduction to PEPA PEPA (PerformanceEvaluation Process Algebra) [12], developed by Hillston in the 1990s, is a high-level model specification language for low-level stochastic models, and describes a system as an interaction of the components which en- gageinactivities.Incontrasttoclassicalprocessalgebras,activitiesareassumed tohaveadurationwhichisarandomvariablegovernedbyanexponentialdistri- bution.ThuseachactivityinPEPAisapair(α,r)whereαistheactiontypeand ristheactivityrate.Thelanguagehasasmallnumberofcombinators,forwhich we provide a brief introduction below; the structured operationalsemantics can be found in [12]. The grammar is as follows: S ::=(α,r).S |S+S |CS (cid:2)(cid:3) P ::=P P |P/L|C L whereSdenotesasequentialcomponent andP denotesamodelcomponent which executes in parallel. C stands for a constant which denotes either a sequential component or a model component as introduced by a definition. CS stands for