%Nr: DS-95-09 %Auteur: G.J. Veltink %Titel: Tools for PSF Samenvatting: Gedurende de laatste twee decennia zijn er verschillende voorstellen gedaan voor formalismen die in staat zijn het gedrag van parallelle systemen te beschrijven. Het materiaal in dit proefschrift is gebaseerd op een van deze formalismen genaamd: Algebra of Communicating Processes (ACP). De ontwikkeling van ACP begon in 1982 aan het Centrum voor Wiskunde en Informatica (CWI) te Amsterdam. Vijf jaar later, in 1987, werd de basis gelegd voor de implementatie van een verzameling tools door het ontwerp van de specificatietaal PSF (Process Specification Formalism). Dit proefschrift beschrijft de PSF Toolkit, een verzameling computer hulp middelen, die verder onder zoek op dit gebied heeft voortgebracht. Het proefschrift bestaat uit drie delen: talen, tools en case-studies. Het eerste gedeelte van het proefschrift introduceert de talen die een rol spelen bij de specificatie van parallelle systemen. De specificatietaal PSF, die voor de specificaties in het gehele proefschrift gebruikt is, wordt beschreven evenals de taal TIL (Tool Interface Language), die gebruikt wordt voor de communicatie tussen de verschillende tools in de PSF Toolkit onderling. Tenslotte wordt de vertaling van PSF naar TIL beschreven. Het tweede deel van het proefschrift concentreert zich op de tools in de PSF Toolkit: simulator, proof assistant, termherschrijver, compiler driver en library manager, initie:le-algebra-generator, transitiesysteem-generator \& equivalentie-tester. Twee programma's worden uitvoerig behandeld: de simulator en de proof assistant. De simulator is een tool dat het gedrag van een specificatie kan simuleren. De simulator is een interactief tool, hetgeen wil zeggen, dat de gebruiker het gedrag van het systeem kan beinvloeden door tijdens een sessie verschillende externe boodschappen (events) aan de simulator aan te bieden. De proof assistant is een tool dat het mogelijk maakt om bewijzen te construeren door stapsgewijze transformaties van proces-expressies. De belangrijkste eigenschap van dit tool is dat het in staat is de gebruiker een keuze te laten maken uit de, volgens de onderliggende semantiek voor proces-operatoren, mogelijke bewijsstappen. Het laatste deel van dit proefschrift behandelt twee case-studies die werden uitgevoerd met behulp van PSF en de PSF Toolkit. De eerste case-study is het resultaat van een courseware project in het kader van het college Software Engineering. Het doel van dit project was om een zogenaamd software-harnas aan te bieden aan de studenten die tijdens het practicum de opdracht kregen om een algebraische specificatie van een compiler voor een simpele programmeertaal te schrijven. De tweede case study geeft een specificatie van een gedeelte van de GKS (Graphics Kernel System) ISO standaard. Hierbij werd uitgegaan van een bestaande specificatie in CSP. Dit voorbeeld laat zien dat de beschikbaarheid van een verzameling tools van groot belang is voor het controleren van zowel de syntax als de correctheid van een specificatie.