{"id":"https://openalex.org/W4387773881","doi":"https://doi.org/10.1145/3623506.3623574","title":"Thorium: A Language for Bounded Verification of Dynamic Reactive Objects","display_name":"Thorium: A Language for Bounded Verification of Dynamic Reactive Objects","publication_year":2023,"publication_date":"2023-10-19","ids":{"openalex":"https://openalex.org/W4387773881","doi":"https://doi.org/10.1145/3623506.3623574"},"language":"en","primary_location":{"id":"doi:10.1145/3623506.3623574","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3623506.3623574","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3623506.3623574","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 10th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3623506.3623574","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5082318518","display_name":"Kevin Baldor","orcid":null},"institutions":[{"id":"https://openalex.org/I1290463931","display_name":"Southwest Research Institute","ror":"https://ror.org/03tghng59","country_code":"US","type":"nonprofit","lineage":["https://openalex.org/I1290463931"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Kevin Baldor","raw_affiliation_strings":["University of Texas at San Antonio, San Antonio, USA / Southwest Research Institute, San Antonio, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Texas at San Antonio, San Antonio, USA / Southwest Research Institute, San Antonio, USA","institution_ids":["https://openalex.org/I1290463931"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5101558050","display_name":"Xiaoyin Wang","orcid":"https://orcid.org/0000-0002-9079-5534"},"institutions":[{"id":"https://openalex.org/I45438204","display_name":"The University of Texas at San Antonio","ror":"https://ror.org/01kd65564","country_code":"US","type":"education","lineage":["https://openalex.org/I45438204"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Xiaoyin Wang","raw_affiliation_strings":["University of Texas at San Antonio, San Antonio, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Texas at San Antonio, San Antonio, USA","institution_ids":["https://openalex.org/I45438204"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5103041668","display_name":"Jianwei Niu","orcid":"https://orcid.org/0000-0002-5667-3285"},"institutions":[{"id":"https://openalex.org/I45438204","display_name":"The University of Texas at San Antonio","ror":"https://ror.org/01kd65564","country_code":"US","type":"education","lineage":["https://openalex.org/I45438204"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Jianwei Niu","raw_affiliation_strings":["University of Texas at San Antonio, San Antonio, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Texas at San Antonio, San Antonio, USA","institution_ids":["https://openalex.org/I45438204"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"13"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9994999766349792,"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"}},"topics":[{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9994999766349792,"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/T10126","display_name":"Logic, programming, and type systems","score":0.998199999332428,"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/T11424","display_name":"Security and Verification in Computing","score":0.9980000257492065,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8210039138793945},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7745106220245361},{"id":"https://openalex.org/keywords/subroutine","display_name":"Subroutine","score":0.5022687911987305},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.4811509847640991},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.45765507221221924},{"id":"https://openalex.org/keywords/reactive-programming","display_name":"Reactive programming","score":0.439377099275589},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.43008822202682495},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.42370322346687317},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.42087432742118835},{"id":"https://openalex.org/keywords/data-flow-diagram","display_name":"Data flow diagram","score":0.4201204478740692},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.21330276131629944},{"id":"https://openalex.org/keywords/inductive-programming","display_name":"Inductive programming","score":0.14000087976455688}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8210039138793945},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7745106220245361},{"id":"https://openalex.org/C96147967","wikidata":"https://www.wikidata.org/wiki/Q190686","display_name":"Subroutine","level":2,"score":0.5022687911987305},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.4811509847640991},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.45765507221221924},{"id":"https://openalex.org/C150762246","wikidata":"https://www.wikidata.org/wiki/Q4354073","display_name":"Reactive programming","level":4,"score":0.439377099275589},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.43008822202682495},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.42370322346687317},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.42087432742118835},{"id":"https://openalex.org/C489000","wikidata":"https://www.wikidata.org/wiki/Q747385","display_name":"Data flow diagram","level":2,"score":0.4201204478740692},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.21330276131629944},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.14000087976455688}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3623506.3623574","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3623506.3623574","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3623506.3623574","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 10th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/3623506.3623574","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3623506.3623574","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3623506.3623574","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 10th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems","raw_type":"proceedings-article"},"sustainable_development_goals":[{"score":0.5899999737739563,"display_name":"Industry, innovation and infrastructure","id":"https://metadata.un.org/sdg/9"}],"awards":[{"id":"https://openalex.org/G2257890507","display_name":"CREST Center for Security and Privacy Enhanced Cloud Computing (C-SPECC)","funder_award_id":"1736209","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G3431183365","display_name":"Collaborative Research: SHF: Small: Reuse and Migration of GUI Tests","funder_award_id":"2007718","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":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4387773881.pdf","grobid_xml":"https://content.openalex.org/works/W4387773881.grobid-xml"},"referenced_works_count":18,"referenced_works":["https://openalex.org/W1895387792","https://openalex.org/W1982590499","https://openalex.org/W1984478483","https://openalex.org/W1995969393","https://openalex.org/W2057361103","https://openalex.org/W2063918115","https://openalex.org/W2081449537","https://openalex.org/W2081938726","https://openalex.org/W2099529102","https://openalex.org/W2100500718","https://openalex.org/W2166659009","https://openalex.org/W2168485266","https://openalex.org/W2590125333","https://openalex.org/W2742288415","https://openalex.org/W2997671293","https://openalex.org/W3013794464","https://openalex.org/W3118236360","https://openalex.org/W4238639031"],"related_works":["https://openalex.org/W4378364622","https://openalex.org/W2096936728","https://openalex.org/W4236134058","https://openalex.org/W76619263","https://openalex.org/W2095925360","https://openalex.org/W1549956274","https://openalex.org/W4246377515","https://openalex.org/W3004782279","https://openalex.org/W1966091859","https://openalex.org/W2286281461"],"abstract_inverted_index":{"Developing":[0],"reliable":[1],"reactive":[2,112],"software":[3,11,23,196,215],"is":[4,21,73],"notoriously":[5],"difficult":[6],"\u2013":[7,102,106],"particularly":[8],"when":[9],"that":[10,24,39,46,59,68,122,138,150,201,232,235,252],"reacts":[12],"by":[13,162],"changing":[14],"its":[15,49,239],"behavior.":[16],"Some":[17],"of":[18,45,51,70,76,79,91,109,135,146,166,174,206,248,262,268],"this":[19],"difficulty":[20],"inherent;":[22],"must":[25],"respond":[26],"to":[27,34,63,96,128,132,142,195,217,254],"external":[28],"events":[29],"as":[30,265],"they":[31],"arrive":[32],"tends":[33,127],"end":[35],"up":[36],"in":[37,55,85],"states":[38,249],"are":[40,94],"dependent":[41],"on":[42],"the":[43,71,77,80,107,116,124,133,136,143,147,163,172,175,204,209,259,263],"value":[44],"input":[47],"and":[48,89,103,169,171,212,250,271],"order":[50],"arrival.":[52],"This":[53,153],"results":[54],"complicated":[56],"corner":[57],"cases":[58],"can":[60,233],"be":[61,129],"challenging":[62],"recognize.":[64],"However,":[65],"we":[66,220],"find":[67],"some":[69],"complexity":[72],"an":[74,119],"accident":[75],"features":[78,193,225],"programming":[81,93],"languages":[82,167],"widely":[83],"used":[84],"industry.":[86],"The":[87],"loops":[88],"subroutines":[90],"structured":[92],"well-suited":[95],"data":[97,110,125,148,207],"transformation,":[98],"but":[99],"poorly":[100],"capture":[101],"sometimes":[104],"obscure":[105],"flow":[108,126,149,205],"through":[111,188,208],"programs":[113],"developed":[114],"using":[115],"inversion-of-control":[117],"paradigm;":[118],"event":[120,137],"handler":[121],"modifies":[123],"declared":[130],"closer":[131],"definition":[134,145],"activates":[139],"it":[140,151],"than":[141],"initial":[144],"modifies.":[152],"paper":[154],"approaches":[155],"both":[156],"challenges":[157],"with":[158,181,197],"a":[159,182,198,227,236,243,246,255,266],"language":[160,192,224],"inspired":[161],"declarative":[164,183],"modules":[165],"SIGNAL":[168],"Lustre":[170],"semantics":[173],"SodiumFRP":[176],"Functional":[177],"Reactive":[178],"Programming":[179],"library":[180],"mechanism":[184],"for":[185],"self":[186],"modification":[187],"module":[189],"substitution.":[190],"These":[191],"lead":[194,253],"code":[199],"structure":[200],"closely":[202],"matches":[203],"running":[210],"program":[211],"thus":[213],"makes":[214],"easier":[216],"understand.":[218],"Further,":[219],"demonstrate":[221],"how":[222],"those":[223],"enable":[226],"bounded":[228],"model":[229,269],"checking":[230],"approach":[231],"verify":[234],"reactor":[237],"meets":[238],"requirements":[240],"or":[241],"present":[242],"counterexample":[244],"trace,":[245],"series":[247],"inputs":[251],"violation.":[256],"We":[257],"analyze":[258],"runtime":[260],"performance":[261],"verifier":[264],"function":[267],"size":[270],"trace":[272],"length.":[273]},"counts_by_year":[],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
