Vi formaliserar pi-calculus med hjälp av det nominella datatyppaketet, baserat på idéer från den nominella logiken av Pitts et al., och demonstrerar ett genomförande i Isabelle/HOL. Syftet är att härleda kraftfulla induktionsregler för semantik för att utföra maskinkontrollerbara bevis, nära följa de intuitiva argument som finns i manuella bevis. På så sätt har vi täckt många av standardteorierna för likvärdighet och kongruens i bisimulation, både sent och tidigt, och både starkt och svagt på ett enhetligt sätt. Vi tillhandahåller alltså en av de mest omfattande formaliseringarna av en processkalkyl som någonsin gjorts i ett teoremprov. En betydande vinst i vår formulering är att agenser identifieras upp till alfaekvivalens, vilket i hög grad minskar argumenten om bundna namn. Detta är en normal strategi för manuella bevis om pi-calculus, men den typen av hand vifta har tidigare varit svårt att införliva smidigt i en interaktiv teorem bevis. Vi visar hur den nominella logiken formalismen och dess stöd i Isabelle åstadkommer detta och därmed avsevärt minskar tonen av att genomföra helt formella bevis. Detta förbättrar tidigare arbete med hjälp av svag abstrakt syntax med högre ordning eftersom vi inte behöver några extra antaganden för att filtrera bort exotiska termer och kan hålla alla argument inom en välbekant första ordningens logik. 1998 ACM Ämnesklassificering: F.4.1. CC Creative Commons 2 J. BENTSON OCH J. PARROW strukturer för induktiva bevis strategier etc. Detta grundarbete måste naturligtvis vara korrekt utom allt tvivel (om det finns ett fel i det då alla bevis som utförs i att kalkylen kommer att vara felaktig). Tanken att använda en formell kontroll av själva grundarbetet är därför naturlig. I detta dokument kommer vi att presentera en förbättrad metod för att åstadkomma detta. Denna förordning träder i kraft den tjugonde dagen efter det att den har offentliggjorts i Europeiska unionens officiella tidning. Teoremprovare. Det finns idag flera bevisassistenter, alias teoremprovare: Coq [11], Isabelle [32], Agda [1], PVS [34], Nuprl [16] och HOL [23], bara för att nämna några. Dessa teorem bevis är interaktiva. De har många automatiserade taktik, och användaren kan ge ytterligare bevis strategier. Många blir också bättre och lättare att använda, så konceptet med att ha fullt maskinkontrollerade bevis har nyligen blivit mycket mer realistiskt. Som en indikation på detta har flera viktiga resultat bevisats under de senaste åren, inklusive de fyra och fem färgteoren [7, 22], Keplers gissning [33] och Gödels ofullständighet teorem [41]. Betydande framsteg i tillämpningar relaterade till programvara sammanfattas i POPLmark Challenge [6], en uppsättning riktmärken avsedda både för att mäta framsteg och för att stimulera diskussion och samarbete vid mekanisering av programplaneringsspråkens metateori. Det finns till exempel resultat på analys av maskinskrivning i system F och lätta versioner av Java. Theorem bevis Isabelle används för närvarande också för att verifiera programvara i Verisoft-projektet [3]. Vi vill betona att dessa typer av verktyg nu överförs till industrin. I [12], en grupp på Microsoft Research i Cambridge sammanställer en delmängd av F  på (en Microsoft produkt) kod till pi-kalculus och säkerhetsegenskaper kontrolleras med ProVerif [13]. Detta arbete utökades senare [9] där en kryptografisk typkontroll konstruerades för F  på ett sätt som hanterar en större uppsättning problem. Idéerna från dessa överförs nu till andra Microsoft-produkter. Dessutom är Spec på [2] programmeringssystemet integrerat i Microsoft Visual Studio-miljön för.NET-plattformen och innehåller en automatisk teoremprovare. Detta anslag är avsett att täcka åtaganden som återstår att reglera i enlighet med artikel 21 i förordning (EU) nr 1303/2013. De π-kalculus. Som den grundläggande underliggande modellen har vi valt π-calculus, som sedan dess koncept i slutet av 1980-talet av Milner, Parrow och Walker [30] har haft en betydande inverkan på hur formella metoder hanterar mobila system. Mekanismen för namnpassage, i kombination med paradigmet för statisk bindning, där namnens omfattning kan utvidgas dynamiskt med hjälp av kommunikation till att omfatta mottagaren, har visat sig vara förvånansvärt uttrycksfull för en mängd olika programmeringsidom: abstrakta datatyper, lambda-calculus, d.v.s. funktionell programmering, objektorienterad programmering, nödvändig programmering, logik och samtidig begränsande programmering, och primitiver för kryptering/dekryptering. Den π-calculus har påverkat utvecklingen av många hög nivå programmeringsspråk och det har utlöst en hel familj av relaterade kalkyler. t.ex. spi [5], gå [17], fusion [36], blå [14], tillämpad π-kalculus [4] och omgivningen [15]. I huvudsak har π-kalculus nu vuxit ut ur en enda formalism till ett allmänt område där komponenter av formalismer, såsom operatörer, semantik och bevismetoder, kan kombineras mer fritt. Detta anslag är avsett att täcka utgifter för tjänstemän och tillfälligt anställda som arbetar inom politikområdet Migration och inrikes frågor samt administrativa utgifter för tjänstemän och tillfälligt anställda som arbetar inom politikområdet Migration och inrikes frågor. Närma er. Målet med vårt projekt är att tillhandahålla ett bibliotek i en automatiserad teoremprovare, Isabelle/HOL [32], som gör det möjligt för användare att göra maskinkontrollerade bevis på grunden för processkalkyl. Den vägledande principen är att bevisen bör överensstämma mycket nära med de traditionella manuella bevis som finns i litteraturen. Detta innebär att för en person som har slutfört dessa bevis manuellt mycket lite extra ansträngning bör krävas FORMALISERING π-CALCULUS använda NOMINAL LOGIC 3
En Isabelle-implementering av den nominella logiken användes i REF för att formalisera och bevisa några av metateorin för π-calculus.
Formalising the π-calculus using nominal logic