{"id":"https://openalex.org/W2071017427","doi":"https://doi.org/10.2168/lmcs-11(1:2)2015","title":"Permission-Based Separation Logic for Multithreaded Java Programs","display_name":"Permission-Based Separation Logic for Multithreaded Java Programs","publication_year":2015,"publication_date":"2015-02-27","ids":{"openalex":"https://openalex.org/W2071017427","doi":"https://doi.org/10.2168/lmcs-11(1:2)2015","mag":"2071017427"},"language":"en","primary_location":{"id":"doi:10.2168/lmcs-11(1:2)2015","is_oa":true,"landing_page_url":"https://doi.org/10.2168/lmcs-11(1:2)2015","pdf_url":"https://lmcs.episciences.org/998/pdf","source":{"id":"https://openalex.org/S114379355","display_name":"Logical Methods in Computer Science","issn_l":"1860-5974","issn":["1860-5974"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310313916","host_organization_name":"Logical Methods in Computer Science e.V.","host_organization_lineage":["https://openalex.org/P4310313916"],"host_organization_lineage_names":["Logical Methods in Computer Science e.V."],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Logical Methods in Computer Science","raw_type":"journal-article"},"type":"article","indexed_in":["arxiv","crossref","doaj"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://lmcs.episciences.org/998/pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Christian Haack","orcid":null},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Christian Haack","raw_affiliation_strings":[],"affiliations":[]},{"author_position":"middle","author":{"id":null,"display_name":"Marieke Huisman","orcid":"https://orcid.org/0000-0003-4467-072X"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Marieke Huisman","raw_affiliation_strings":[],"affiliations":[]},{"author_position":"middle","author":{"id":null,"display_name":"Cl\u00e9ment Hurlin","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Cl\u00e9ment Hurlin","raw_affiliation_strings":[],"affiliations":[]},{"author_position":"last","author":{"id":null,"display_name":"Afshin Amighi","orcid":null},"institutions":[{"id":"https://openalex.org/I4210139755","display_name":"Aicas (Germany)","ror":"https://ror.org/046yjek33","country_code":"DE","type":"company","lineage":["https://openalex.org/I4210139755"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Afshin Amighi","raw_affiliation_strings":["aicas GmbH, Karslruhe, Germany"],"affiliations":[{"raw_affiliation_string":"aicas GmbH, Karslruhe, Germany","institution_ids":["https://openalex.org/I4210139755"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":4.8961,"has_fulltext":true,"cited_by_count":31,"citation_normalized_percentile":{"value":0.95354492,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":98},"biblio":{"volume":"Volume 11, Issue 1","issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.5587999820709229,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.5587999820709229,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.13729999959468842,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10933","display_name":"Real-Time Systems Scheduling","score":0.08980000019073486,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/separation-logic","display_name":"Separation logic","score":0.8827000260353088},{"id":"https://openalex.org/keywords/thread","display_name":"Thread (computing)","score":0.7878999710083008},{"id":"https://openalex.org/keywords/heap","display_name":"Heap (data structure)","score":0.6395999789237976},{"id":"https://openalex.org/keywords/soundness","display_name":"Soundness","score":0.4693000018596649},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.4009999930858612},{"id":"https://openalex.org/keywords/permission","display_name":"Permission","score":0.38659998774528503},{"id":"https://openalex.org/keywords/subtyping","display_name":"Subtyping","score":0.37290000915527344},{"id":"https://openalex.org/keywords/concurrency","display_name":"Concurrency","score":0.30730000138282776}],"concepts":[{"id":"https://openalex.org/C173856430","wikidata":"https://www.wikidata.org/wiki/Q3257964","display_name":"Separation logic","level":2,"score":0.8827000260353088},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8353000283241272},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.7878999710083008},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7092999815940857},{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.6395999789237976},{"id":"https://openalex.org/C39920170","wikidata":"https://www.wikidata.org/wiki/Q693083","display_name":"Soundness","level":2,"score":0.4693000018596649},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.4009999930858612},{"id":"https://openalex.org/C2779089604","wikidata":"https://www.wikidata.org/wiki/Q7169333","display_name":"Permission","level":2,"score":0.38659998774528503},{"id":"https://openalex.org/C83852419","wikidata":"https://www.wikidata.org/wiki/Q2713292","display_name":"Subtyping","level":2,"score":0.37290000915527344},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3569999933242798},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.30730000138282776},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3050999939441681},{"id":"https://openalex.org/C128838566","wikidata":"https://www.wikidata.org/wiki/Q275603","display_name":"Logic programming","level":2,"score":0.3019999861717224},{"id":"https://openalex.org/C159718280","wikidata":"https://www.wikidata.org/wiki/Q5526353","display_name":"Gas meter prover","level":3,"score":0.29789999127388},{"id":"https://openalex.org/C203222032","wikidata":"https://www.wikidata.org/wiki/Q5159104","display_name":"Concurrent data structure","level":3,"score":0.29660001397132874},{"id":"https://openalex.org/C56348326","wikidata":"https://www.wikidata.org/wiki/Q1047554","display_name":"Mutual exclusion","level":2,"score":0.29100000858306885},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.28529998660087585},{"id":"https://openalex.org/C201410400","wikidata":"https://www.wikidata.org/wiki/Q1064412","display_name":"Multithreading","level":3,"score":0.266400009393692},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.2529999911785126},{"id":"https://openalex.org/C181907185","wikidata":"https://www.wikidata.org/wiki/Q1100098","display_name":"Java concurrency","level":4,"score":0.2500999867916107}],"mesh":[],"locations_count":7,"locations":[{"id":"doi:10.2168/lmcs-11(1:2)2015","is_oa":true,"landing_page_url":"https://doi.org/10.2168/lmcs-11(1:2)2015","pdf_url":"https://lmcs.episciences.org/998/pdf","source":{"id":"https://openalex.org/S114379355","display_name":"Logical Methods in Computer Science","issn_l":"1860-5974","issn":["1860-5974"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310313916","host_organization_name":"Logical Methods in Computer Science e.V.","host_organization_lineage":["https://openalex.org/P4310313916"],"host_organization_lineage_names":["Logical Methods in Computer Science e.V."],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Logical Methods in Computer Science","raw_type":"journal-article"},{"id":"pmh:oai:ris.utwente.nl:openaire_cris_publications/dc336077-fa6e-4e39-acd2-42a53803f576","is_oa":true,"landing_page_url":"https://research.utwente.nl/en/publications/dc336077-fa6e-4e39-acd2-42a53803f576","pdf_url":null,"source":{"id":"https://openalex.org/S4406922991","display_name":"University of Twente Research Information","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Haack, C, Huisman, M, Hurlin, C & Amighi, A 2015, 'Permission-based separation logic for multi-threaded Java programs', Logical methods in computer science, vol. 11, no. 1, pp. 2. https://doi.org/10.2168/LMCS-11(1:2)2015","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:oai:arXiv.org:1411.0851","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1411.0851","pdf_url":"https://arxiv.org/pdf/1411.0851","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},{"id":"pmh:oai:doaj.org/article:bc439561d2404fcfb389bf04684962be","is_oa":true,"landing_page_url":"https://doaj.org/article/bc439561d2404fcfb389bf04684962be","pdf_url":null,"source":{"id":"https://openalex.org/S112646816","display_name":"SHILAP Revista de lepidopterolog\u00eda","issn_l":"0300-5267","issn":["0300-5267","2340-4078"],"is_oa":true,"is_in_doaj":true,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":"cc-by-sa","license_id":"https://openalex.org/licenses/cc-by-sa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Logical Methods in Computer Science, Vol Volume 11, Issue 1 (2015)","raw_type":"article"},{"id":"pmh:oai:ris.utwente.nl:openaire/a42c218c-b9a5-4b39-b760-9a428a740b7e","is_oa":true,"landing_page_url":"https://research.utwente.nl/en/publications/a42c218c-b9a5-4b39-b760-9a428a740b7e","pdf_url":null,"source":{"id":"https://openalex.org/S4406922991","display_name":"University of Twente Research Information","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Haack, C, Huisman, M & Hurlin, C 2011, 'Permission-Based Separation Logic for Multithreaded Java Programs', Nieuwsbrief van de Nederlandse Vereniging voor Theoretische Informatica, vol. 15, pp. 13-23.","raw_type":"info:eu-repo/semantics/article"},{"id":"pmh:oai:ris.utwente.nl:publications/dc336077-fa6e-4e39-acd2-42a53803f576","is_oa":true,"landing_page_url":"http://eprints.eemcs.utwente.nl/secure2/25324/01/LMCS-2012-1250.pdf","pdf_url":null,"source":{"id":"https://openalex.org/S4406922991","display_name":"University of Twente Research Information","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Haack, C, Huisman, M, Hurlin, C & Amighi, A 2015, 'Permission-based separation logic for multi-threaded Java programs', Logical methods in computer science, vol. 11, no. 1, pp. 2. https://doi.org/10.2168/LMCS-11(1:2)2015","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:ut:oai:ris.utwente.nl:publications/a42c218c-b9a5-4b39-b760-9a428a740b7e","is_oa":true,"landing_page_url":"https://research.utwente.nl/en/publications/permissionbased-separation-logic-for-multithreaded-java-programs(a42c218c-b9a5-4b39-b760-9a428a740b7e).html","pdf_url":null,"source":{"id":"https://openalex.org/S4306401843","display_name":"Data Archiving and Networked Services (DANS)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1322597698","host_organization_name":"Royal Netherlands Academy of Arts and Sciences","host_organization_lineage":["https://openalex.org/I1322597698"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Nieuwsbrief van de Nederlandse Vereniging voor Theoretische Informatica, 15, 13 - 23","raw_type":"info:eu-repo/semantics/article"}],"best_oa_location":{"id":"doi:10.2168/lmcs-11(1:2)2015","is_oa":true,"landing_page_url":"https://doi.org/10.2168/lmcs-11(1:2)2015","pdf_url":"https://lmcs.episciences.org/998/pdf","source":{"id":"https://openalex.org/S114379355","display_name":"Logical Methods in Computer Science","issn_l":"1860-5974","issn":["1860-5974"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310313916","host_organization_name":"Logical Methods in Computer Science e.V.","host_organization_lineage":["https://openalex.org/P4310313916"],"host_organization_lineage_names":["Logical Methods in Computer Science e.V."],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Logical Methods in Computer Science","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G2104192274","display_name":null,"funder_award_id":"258405","funder_id":"https://openalex.org/F4320320300","funder_display_name":"European Commission"}],"funders":[{"id":"https://openalex.org/F4320320300","display_name":"European Commission","ror":"https://ror.org/00k4n6c32"},{"id":"https://openalex.org/F4320321013","display_name":"Radboud Universiteit","ror":"https://ror.org/016xsfp80"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2071017427.pdf","grobid_xml":"https://content.openalex.org/works/W2071017427.grobid-xml"},"referenced_works_count":0,"referenced_works":[],"related_works":[],"abstract_inverted_index":{"This":[0],"paper":[1],"presents":[2],"a":[3,41,49,161,178],"program":[4,46,156,173],"logic":[5,23,39,47,157,174],"for":[6,132,137,160],"reasoning":[7],"about":[8],"multithreaded":[9,42],"Java-like":[10,43,165],"programs":[11],"with":[12,54,164],"dynamic":[13],"thread":[14,16,81,83,133,138],"creation,":[15],"joining":[17],"and":[18,62,88,100,115,135,167,177],"reentrant":[19],"object":[20,152],"monitors.":[21,112],"The":[22,45,155],"is":[24,31,158,175],"based":[25],"on":[26],"concurrent":[27,37],"separation":[28,38],"logic.":[29],"It":[30],"the":[32,169,172],"first":[33],"detailed":[34],"adaptation":[35],"of":[36,107,109,171,180],"to":[40,94,127,143],"language.":[44],"associates":[48],"unique":[50],"static":[51,151],"access":[52],"permission":[53],"each":[55],"heap":[56],"location,":[57],"ensuring":[58],"exclusive":[59],"write":[60],"accesses":[61],"ruling":[63],"out":[64],"data":[65],"races.":[66],"Concurrent":[67],"reads":[68],"are":[69,118,124,183],"supported":[70],"through":[71,120],"fractional":[72],"permissions.":[73],"Permissions":[74],"can":[75],"be":[76],"transferred":[77],"between":[78,96],"threads":[79],"upon":[80],"starting,":[82],"joining,":[84],"initial":[85,97],"monitor":[86,90,98,101,129],"entrancies":[87,99],"final":[89],"exits.":[91],"In":[92],"order":[93],"distinguish":[95],"reentrancies,":[102],"auxiliary":[103],"variables":[104],"keep":[105],"track":[106],"multisets":[108],"currently":[110],"held":[111],"Data":[113],"abstraction":[114],"behavioral":[116],"subtyping":[117],"facilitated":[119],"abstract":[121],"predicates,":[122],"which":[123],"also":[125],"used":[126],"represent":[128],"invariants,":[130,149],"preconditions":[131],"starting":[134],"postconditions":[136],"joining.":[139],"Value-parametrized":[140],"types":[141],"allow":[142],"conveniently":[144],"capture":[145],"common":[146],"strong":[147],"global":[148],"like":[150],"ownership":[153],"relations.":[154],"presented":[159],"model":[162],"language":[163],"classes":[166],"interfaces,":[168],"soundness":[170],"proven,":[176],"number":[179],"illustrative":[181],"examples":[182],"presented.":[184]},"counts_by_year":[{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":4},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":4},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":4},{"year":2015,"cited_by_count":1},{"year":2014,"cited_by_count":1}],"updated_date":"2026-04-09T08:11:56.329763","created_date":"2016-06-24T00:00:00"}
