Automatic Verification of Erlang-Style Concurrency

dc.contributor.authorD'Osualdo, Emanuele
dc.contributor.authorKochems, Jonathan
dc.contributor.authorOng, C. -H. Luke
dc.date.accessioned2024-10-18T07:10:36Z
dc.date.available2024-10-18T07:10:36Z
dc.date.issued2013
dc.description.abstractThis paper presents an approach to verify safety properties of Erlang-style, higher-order concurrent programs automatically. Inspired by Core Erlang, we introduce λ Actor, a prototypical functional language with pattern-matching algebraic data types, augmented with process creation and asynchronous message-passing primitives. We formalise an abstract model of λ Actor programs called Actor Communicating System (ACS) which has a natural interpretation as a vector addition system, for which some verification problems are decidable. We give a parametric abstract interpretation framework for λ Actor and use it to build a polytime computable, flow-based, abstract semantics of λ Actor programs, which we then use to bootstrap the ACS construction, thus deriving a more accurate abstract model of the input program. We evaluate the method which we implemented in the prototype Soter. We find that in practice our abstraction technique is accurate enough to verify an interesting range of safety properties. Though the ACS coverability problem is Expspace-complete, Soter can analyse non-trivial programs in a matter of seconds.
dc.description.versionpublisheddeu
dc.identifier.doi10.1007/978-3-642-38856-9_24
dc.identifier.urihttps://kops.uni-konstanz.de/handle/123456789/71001
dc.language.isoeng
dc.subjectErlang
dc.subjectInfinite-state Systems Verification
dc.subjectPetri Nets
dc.subject.ddc004
dc.titleAutomatic Verification of Erlang-Style Concurrencyeng
dc.typeINPROCEEDINGS
dspace.entity.typePublication
kops.citation.bibtex
@inproceedings{DOsualdo2013Autom-71001,
  year={2013},
  doi={10.1007/978-3-642-38856-9_24},
  title={Automatic Verification of Erlang-Style Concurrency},
  number={7935},
  isbn={978-3-642-38855-2},
  issn={0302-9743},
  publisher={Springer},
  address={Berlin},
  series={Lecture Notes in Computer Science (LNCS)},
  booktitle={Static Analysis : 20th International Symposium, SAS 2013, Proceedings},
  pages={454--476},
  editor={Logozzo, Francesco and Fähndrich, Manuel},
  author={D'Osualdo, Emanuele and Kochems, Jonathan and Ong, C. -H. Luke}
}
kops.citation.iso690D'OSUALDO, Emanuele, Jonathan KOCHEMS, C. -H. Luke ONG, 2013. Automatic Verification of Erlang-Style Concurrency. Static Analysis : 20th International Symposium, SAS 2013. Seattle, WA, USA, 20. Juni 2013 - 22. Juni 2013. In: LOGOZZO, Francesco, Hrsg., Manuel FÄHNDRICH, Hrsg.. Static Analysis : 20th International Symposium, SAS 2013, Proceedings. Berlin: Springer, 2013, S. 454-476. Lecture Notes in Computer Science (LNCS). 7935. ISSN 0302-9743. eISSN 1611-3349. ISBN 978-3-642-38855-2. Verfügbar unter: doi: 10.1007/978-3-642-38856-9_24deu
kops.citation.iso690D'OSUALDO, Emanuele, Jonathan KOCHEMS, C. -H. Luke ONG, 2013. Automatic Verification of Erlang-Style Concurrency. Static Analysis : 20th International Symposium, SAS 2013. Seattle, WA, USA, Jun 20, 2013 - Jun 22, 2013. In: LOGOZZO, Francesco, ed., Manuel FÄHNDRICH, ed.. Static Analysis : 20th International Symposium, SAS 2013, Proceedings. Berlin: Springer, 2013, pp. 454-476. Lecture Notes in Computer Science (LNCS). 7935. ISSN 0302-9743. eISSN 1611-3349. ISBN 978-3-642-38855-2. Available under: doi: 10.1007/978-3-642-38856-9_24eng
kops.citation.rdf
<rdf:RDF
    xmlns:dcterms="http://purl.org/dc/terms/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:bibo="http://purl.org/ontology/bibo/"
    xmlns:dspace="http://digital-repositories.org/ontologies/dspace/0.1.0#"
    xmlns:foaf="http://xmlns.com/foaf/0.1/"
    xmlns:void="http://rdfs.org/ns/void#"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema#" > 
  <rdf:Description rdf:about="https://kops.uni-konstanz.de/server/rdf/resource/123456789/71001">
    <dc:contributor>D'Osualdo, Emanuele</dc:contributor>
    <dc:creator>Ong, C. -H. Luke</dc:creator>
    <foaf:homepage rdf:resource="http://localhost:8080/"/>
    <dcterms:abstract>This paper presents an approach to verify safety properties of Erlang-style, higher-order concurrent programs automatically. Inspired by Core Erlang, we introduce λ Actor, a prototypical functional language with pattern-matching algebraic data types, augmented with process creation and asynchronous message-passing primitives. We formalise an abstract model of λ Actor programs called Actor Communicating System (ACS) which has a natural interpretation as a vector addition system, for which some verification problems are decidable. We give a parametric abstract interpretation framework for λ Actor and use it to build a polytime computable, flow-based, abstract semantics of λ Actor programs, which we then use to bootstrap the ACS construction, thus deriving a more accurate abstract model of the input program.

We evaluate the method which we implemented in the prototype Soter. We find that in practice our abstraction technique is accurate enough to verify an interesting range of safety properties. Though the ACS coverability problem is Expspace-complete, Soter can analyse non-trivial programs in a matter of seconds.</dcterms:abstract>
    <dc:creator>Kochems, Jonathan</dc:creator>
    <dc:contributor>Kochems, Jonathan</dc:contributor>
    <dcterms:available rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2024-10-18T07:10:36Z</dcterms:available>
    <dc:date rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2024-10-18T07:10:36Z</dc:date>
    <dc:creator>D'Osualdo, Emanuele</dc:creator>
    <dc:language>eng</dc:language>
    <bibo:uri rdf:resource="https://kops.uni-konstanz.de/handle/123456789/71001"/>
    <dcterms:issued>2013</dcterms:issued>
    <void:sparqlEndpoint rdf:resource="http://localhost/fuseki/dspace/sparql"/>
    <dcterms:title>Automatic Verification of Erlang-Style Concurrency</dcterms:title>
    <dcterms:isPartOf rdf:resource="https://kops.uni-konstanz.de/server/rdf/resource/123456789/36"/>
    <dspace:isPartOfCollection rdf:resource="https://kops.uni-konstanz.de/server/rdf/resource/123456789/36"/>
    <dc:contributor>Ong, C. -H. Luke</dc:contributor>
  </rdf:Description>
</rdf:RDF>
kops.conferencefieldStatic Analysis : 20th International Symposium, SAS 2013, 20. Juni 2013 - 22. Juni 2013, Seattle, WA, USAdeu
kops.date.conferenceEnd2013-06-22
kops.date.conferenceStart2013-06-20
kops.flag.knbibliographyfalse
kops.location.conferenceSeattle, WA, USA
kops.sourcefieldLOGOZZO, Francesco, Hrsg., Manuel FÄHNDRICH, Hrsg.. <i>Static Analysis : 20th International Symposium, SAS 2013, Proceedings</i>. Berlin: Springer, 2013, S. 454-476. Lecture Notes in Computer Science (LNCS). 7935. ISSN 0302-9743. eISSN 1611-3349. ISBN 978-3-642-38855-2. Verfügbar unter: doi: 10.1007/978-3-642-38856-9_24deu
kops.sourcefield.plainLOGOZZO, Francesco, Hrsg., Manuel FÄHNDRICH, Hrsg.. Static Analysis : 20th International Symposium, SAS 2013, Proceedings. Berlin: Springer, 2013, S. 454-476. Lecture Notes in Computer Science (LNCS). 7935. ISSN 0302-9743. eISSN 1611-3349. ISBN 978-3-642-38855-2. Verfügbar unter: doi: 10.1007/978-3-642-38856-9_24deu
kops.sourcefield.plainLOGOZZO, Francesco, ed., Manuel FÄHNDRICH, ed.. Static Analysis : 20th International Symposium, SAS 2013, Proceedings. Berlin: Springer, 2013, pp. 454-476. Lecture Notes in Computer Science (LNCS). 7935. ISSN 0302-9743. eISSN 1611-3349. ISBN 978-3-642-38855-2. Available under: doi: 10.1007/978-3-642-38856-9_24eng
kops.title.conferenceStatic Analysis : 20th International Symposium, SAS 2013
relation.isAuthorOfPublicationa922a71d-ac65-4324-bb6c-dee45cfd627e
relation.isAuthorOfPublication.latestForDiscoverya922a71d-ac65-4324-bb6c-dee45cfd627e
source.bibliographicInfo.fromPage454
source.bibliographicInfo.seriesNumber7935
source.bibliographicInfo.toPage476
source.contributor.editorLogozzo, Francesco
source.contributor.editorFähndrich, Manuel
source.identifier.eissn1611-3349
source.identifier.isbn978-3-642-38855-2
source.identifier.issn0302-9743
source.publisherSpringer
source.publisher.locationBerlin
source.relation.ispartofseriesLecture Notes in Computer Science (LNCS)
source.titleStatic Analysis : 20th International Symposium, SAS 2013, Proceedings

Dateien