{"id":"https://openalex.org/W2407292968","doi":"https://doi.org/10.1145/2908080.2908083","title":"Rehearsal: a configuration verification tool for puppet","display_name":"Rehearsal: a configuration verification tool for puppet","publication_year":2016,"publication_date":"2016-06-02","ids":{"openalex":"https://openalex.org/W2407292968","doi":"https://doi.org/10.1145/2908080.2908083","mag":"2407292968"},"language":"en","primary_location":{"id":"doi:10.1145/2908080.2908083","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2908080.2908083","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5019573373","display_name":"Rian Shambaugh","orcid":null},"institutions":[{"id":"https://openalex.org/I24603500","display_name":"University of Massachusetts Amherst","ror":"https://ror.org/0072zz521","country_code":"US","type":"education","lineage":["https://openalex.org/I24603500"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Rian Shambaugh","raw_affiliation_strings":["University of Massachusetts at Amherst, USA"],"affiliations":[{"raw_affiliation_string":"University of Massachusetts at Amherst, USA","institution_ids":["https://openalex.org/I24603500"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5069255005","display_name":"Aaron Weiss","orcid":"https://orcid.org/0000-0002-3531-4144"},"institutions":[{"id":"https://openalex.org/I24603500","display_name":"University of Massachusetts Amherst","ror":"https://ror.org/0072zz521","country_code":"US","type":"education","lineage":["https://openalex.org/I24603500"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Aaron Weiss","raw_affiliation_strings":["University of Massachusetts at Amherst, USA"],"affiliations":[{"raw_affiliation_string":"University of Massachusetts at Amherst, USA","institution_ids":["https://openalex.org/I24603500"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5044042294","display_name":"Arjun Guha","orcid":"https://orcid.org/0000-0002-7493-3271"},"institutions":[{"id":"https://openalex.org/I24603500","display_name":"University of Massachusetts Amherst","ror":"https://ror.org/0072zz521","country_code":"US","type":"education","lineage":["https://openalex.org/I24603500"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Arjun Guha","raw_affiliation_strings":["University of Massachusetts at Amherst, USA"],"affiliations":[{"raw_affiliation_string":"University of Massachusetts at Amherst, USA","institution_ids":["https://openalex.org/I24603500"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5019573373"],"corresponding_institution_ids":["https://openalex.org/I24603500"],"apc_list":null,"apc_paid":null,"fwci":13.8115,"has_fulltext":false,"cited_by_count":52,"citation_normalized_percentile":{"value":0.98644461,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":96,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"416","last_page":"430"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9993000030517578,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T10260","display_name":"Software Engineering Research","score":0.9993000030517578,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T12127","display_name":"Software System Performance and Reliability","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9987000226974487,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/computer-science","display_name":"Computer science","score":0.8664120435714722},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5863653421401978},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.5258662700653076},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.5004301071166992},{"id":"https://openalex.org/keywords/domain-specific-language","display_name":"Domain-specific language","score":0.4795267581939697},{"id":"https://openalex.org/keywords/determinacy","display_name":"Determinacy","score":0.4776017367839813},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.14102914929389954}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8664120435714722},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5863653421401978},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.5258662700653076},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.5004301071166992},{"id":"https://openalex.org/C135257023","wikidata":"https://www.wikidata.org/wiki/Q691358","display_name":"Domain-specific language","level":2,"score":0.4795267581939697},{"id":"https://openalex.org/C58468513","wikidata":"https://www.wikidata.org/wiki/Q1201165","display_name":"Determinacy","level":2,"score":0.4776017367839813},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.14102914929389954},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2908080.2908083","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2908080.2908083","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","id":"https://metadata.un.org/sdg/9","score":0.6499999761581421}],"awards":[{"id":"https://openalex.org/G4947684487","display_name":"SHF: Medium: A Balance of Power: Programming and Reasoning for Software-Defined Networks","funder_award_id":"1408745","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G5029969201","display_name":"NeTS: Large: Collaborative Research:Programmable Inter-Domain Observation and Control","funder_award_id":"1413985","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G6549653609","display_name":null,"funder_award_id":"CCF-1408745","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":24,"referenced_works":["https://openalex.org/W1584993430","https://openalex.org/W1589725822","https://openalex.org/W1605226475","https://openalex.org/W1619756189","https://openalex.org/W1819247800","https://openalex.org/W1968796785","https://openalex.org/W1978749232","https://openalex.org/W2025018396","https://openalex.org/W2066787289","https://openalex.org/W2073961002","https://openalex.org/W2096403564","https://openalex.org/W2106281135","https://openalex.org/W2124789775","https://openalex.org/W2132251340","https://openalex.org/W2133406853","https://openalex.org/W2142194171","https://openalex.org/W2144776193","https://openalex.org/W2154822035","https://openalex.org/W2159567171","https://openalex.org/W2263636531","https://openalex.org/W2277037180","https://openalex.org/W2581716308","https://openalex.org/W3181441684","https://openalex.org/W4244157805"],"related_works":["https://openalex.org/W2161550557","https://openalex.org/W2788308474","https://openalex.org/W2148282566","https://openalex.org/W4387796988","https://openalex.org/W2065949834","https://openalex.org/W2150010249","https://openalex.org/W2303430181","https://openalex.org/W2071356121","https://openalex.org/W2924405342","https://openalex.org/W1595543499"],"abstract_inverted_index":{"Large-scale":[0],"data":[1],"centers":[2],"and":[3,55,110,144,173],"cloud":[4],"computing":[5,40],"have":[6,17],"turned":[7],"system":[8,34],"configuration":[9,26,35],"into":[10],"a":[11,65,73,86,118,133,141,156,170],"challenging":[12],"problem.":[13],"Several":[14],"widely-publicized":[15],"outages":[16],"been":[18],"blamed":[19],"not":[20],"on":[21,25],"software":[22],"bugs,":[23],"but":[24,82],"bugs.":[27],"To":[28,150],"cope,":[29],"thousands":[30,51],"of":[31,52,62,72,89],"organizations":[32],"use":[33,162],"languages":[36],"to":[37,108,165,169,190,202],"manage":[38],"their":[39],"infrastructure.":[41],"Of":[42],"these,":[43],"Puppet":[44,63,75,122,137,205],"is":[45,64,93,123],"the":[46,70,187],"most":[47],"widely":[48],"used":[49],"with":[50,121],"paying":[53],"customers":[54],"many":[56,96],"more":[57],"open-source":[58],"users.":[59],"The":[60],"heart":[61],"domain-specific":[66],"language":[67],"that":[68,105,117,124],"describes":[69],"state":[71],"system.":[74],"already":[76],"performs":[77],"some":[78],"basic":[79],"static":[80],"checks,":[81],"they":[83],"only":[84,99],"prevent":[85],"narrow":[87],"range":[88],"errors.":[90],"Furthermore,":[91],"testing":[92],"ineffective":[94],"because":[95],"errors":[97],"are":[98,106],"triggered":[100],"under":[101],"specific":[102],"machine":[103],"states":[104],"difficult":[107],"predict":[109],"reproduce.":[111],"With":[112],"several":[113,163,203],"examples,":[114],"we":[115,153,199],"show":[116],"key":[119],"problem":[120],"configurations":[125],"can":[126],"be":[127],"non-deterministic.":[128],"This":[129],"paper":[130],"presents":[131],"Rehearsal,":[132],"verification":[134],"tool":[135],"for":[136,148,159,180],"configurations.":[138,206],"Rehearsal":[139,184,201],"implements":[140],"sound,":[142],"complete,":[143],"scalable":[145],"determinacy":[146,188],"analysis":[147,189],"Puppet.":[149],"develop":[151],"it,":[152],"(1)":[154],"present":[155],"formal":[157],"semantics":[158],"Puppet,":[160],"(2)":[161],"analyses":[164],"shrink":[166],"our":[167],"models":[168],"tractable":[171],"size,":[172],"(3)":[174],"frame":[175],"determinism-checking":[176],"as":[177,196],"decidable":[178],"formulas":[179],"an":[181],"SMT":[182],"solver.":[183],"then":[185],"leverages":[186],"check":[191],"other":[192],"important":[193],"properties,":[194],"such":[195],"idempotency.":[197],"Finally,":[198],"apply":[200],"real-world":[204]},"counts_by_year":[{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":6},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":5},{"year":2021,"cited_by_count":6},{"year":2020,"cited_by_count":8},{"year":2019,"cited_by_count":7},{"year":2018,"cited_by_count":9},{"year":2017,"cited_by_count":4}],"updated_date":"2026-04-21T08:09:41.155169","created_date":"2025-10-10T00:00:00"}
