{"id":"https://openalex.org/W3185067705","doi":"https://doi.org/10.1007/978-3-030-81688-9_37","title":"Functional Correctness of C Implementations of Dijkstra\u2019s, Kruskal\u2019s, and Prim\u2019s Algorithms","display_name":"Functional Correctness of C Implementations of Dijkstra\u2019s, Kruskal\u2019s, and Prim\u2019s Algorithms","publication_year":2021,"publication_date":"2021-01-01","ids":{"openalex":"https://openalex.org/W3185067705","doi":"https://doi.org/10.1007/978-3-030-81688-9_37","mag":"3185067705"},"language":"en","primary_location":{"id":"doi:10.1007/978-3-030-81688-9_37","is_oa":true,"landing_page_url":"https://doi.org/10.1007/978-3-030-81688-9_37","pdf_url":"https://link.springer.com/content/pdf/10.1007/978-3-030-81688-9_37.pdf","source":{"id":"https://openalex.org/S106296714","display_name":"Lecture notes in computer science","issn_l":"0302-9743","issn":["0302-9743","1611-3349"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"book series"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Lecture Notes in Computer Science","raw_type":"book-chapter"},"type":"book-chapter","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://link.springer.com/content/pdf/10.1007/978-3-030-81688-9_37.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5054567870","display_name":"Anshuman Mohan","orcid":"https://orcid.org/0000-0002-6803-9767"},"institutions":[{"id":"https://openalex.org/I165932596","display_name":"National University of Singapore","ror":"https://ror.org/01tgyzw49","country_code":"SG","type":"education","lineage":["https://openalex.org/I165932596"]}],"countries":["SG"],"is_corresponding":true,"raw_author_name":"Anshuman Mohan","raw_affiliation_strings":["School of Computing, National University of Singapore, Singapore, Republic of Singapore"],"affiliations":[{"raw_affiliation_string":"School of Computing, National University of Singapore, Singapore, Republic of Singapore","institution_ids":["https://openalex.org/I165932596"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5060181791","display_name":"Wei Xiang Leow","orcid":null},"institutions":[{"id":"https://openalex.org/I165932596","display_name":"National University of Singapore","ror":"https://ror.org/01tgyzw49","country_code":"SG","type":"education","lineage":["https://openalex.org/I165932596"]}],"countries":["SG"],"is_corresponding":false,"raw_author_name":"Wei Xiang Leow","raw_affiliation_strings":["School of Computing, National University of Singapore, Singapore, Republic of Singapore"],"affiliations":[{"raw_affiliation_string":"School of Computing, National University of Singapore, Singapore, Republic of Singapore","institution_ids":["https://openalex.org/I165932596"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5068282643","display_name":"Aquinas Hobor","orcid":null},"institutions":[{"id":"https://openalex.org/I165932596","display_name":"National University of Singapore","ror":"https://ror.org/01tgyzw49","country_code":"SG","type":"education","lineage":["https://openalex.org/I165932596"]}],"countries":["SG"],"is_corresponding":false,"raw_author_name":"Aquinas Hobor","raw_affiliation_strings":["School of Computing, National University of Singapore, Singapore, Republic of Singapore"],"affiliations":[{"raw_affiliation_string":"School of Computing, National University of Singapore, Singapore, Republic of Singapore","institution_ids":["https://openalex.org/I165932596"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5054567870"],"corresponding_institution_ids":["https://openalex.org/I165932596"],"apc_list":{"value":5000,"currency":"EUR","value_usd":5392},"apc_paid":{"value":5000,"currency":"EUR","value_usd":5392},"fwci":3.8161,"has_fulltext":true,"cited_by_count":10,"citation_normalized_percentile":{"value":0.94652632,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"801","last_page":"826"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9990000128746033,"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.9990000128746033,"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.9988999962806702,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9879999756813049,"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/correctness","display_name":"Correctness","score":0.7895410060882568},{"id":"https://openalex.org/keywords/dijkstras-algorithm","display_name":"Dijkstra's algorithm","score":0.7309550642967224},{"id":"https://openalex.org/keywords/heap","display_name":"Heap (data structure)","score":0.7115217447280884},{"id":"https://openalex.org/keywords/kruskals-algorithm","display_name":"Kruskal's algorithm","score":0.7062161564826965},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.664361298084259},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.5223948955535889},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4142838716506958},{"id":"https://openalex.org/keywords/graph","display_name":"Graph","score":0.4085659384727478},{"id":"https://openalex.org/keywords/shortest-path-problem","display_name":"Shortest path problem","score":0.29602646827697754},{"id":"https://openalex.org/keywords/minimum-spanning-tree","display_name":"Minimum spanning tree","score":0.20520848035812378}],"concepts":[{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.7895410060882568},{"id":"https://openalex.org/C173870130","wikidata":"https://www.wikidata.org/wiki/Q8548","display_name":"Dijkstra's algorithm","level":4,"score":0.7309550642967224},{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.7115217447280884},{"id":"https://openalex.org/C63645285","wikidata":"https://www.wikidata.org/wiki/Q797860","display_name":"Kruskal's algorithm","level":3,"score":0.7062161564826965},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.664361298084259},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.5223948955535889},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4142838716506958},{"id":"https://openalex.org/C132525143","wikidata":"https://www.wikidata.org/wiki/Q141488","display_name":"Graph","level":2,"score":0.4085659384727478},{"id":"https://openalex.org/C22590252","wikidata":"https://www.wikidata.org/wiki/Q1058754","display_name":"Shortest path problem","level":3,"score":0.29602646827697754},{"id":"https://openalex.org/C13743678","wikidata":"https://www.wikidata.org/wiki/Q240464","display_name":"Minimum spanning tree","level":2,"score":0.20520848035812378}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1007/978-3-030-81688-9_37","is_oa":true,"landing_page_url":"https://doi.org/10.1007/978-3-030-81688-9_37","pdf_url":"https://link.springer.com/content/pdf/10.1007/978-3-030-81688-9_37.pdf","source":{"id":"https://openalex.org/S106296714","display_name":"Lecture notes in computer science","issn_l":"0302-9743","issn":["0302-9743","1611-3349"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"book series"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Lecture Notes in Computer Science","raw_type":"book-chapter"},{"id":"pmh:oai:scholarbank.nus.edu.sg:10635/233875","is_oa":true,"landing_page_url":"https://scholarbank.nus.edu.sg/handle/10635/233875","pdf_url":null,"source":{"id":"https://openalex.org/S7407052290","display_name":"National University of Singapore","issn_l":null,"issn":[],"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Scopus OA2021","raw_type":"Conference Paper"}],"best_oa_location":{"id":"doi:10.1007/978-3-030-81688-9_37","is_oa":true,"landing_page_url":"https://doi.org/10.1007/978-3-030-81688-9_37","pdf_url":"https://link.springer.com/content/pdf/10.1007/978-3-030-81688-9_37.pdf","source":{"id":"https://openalex.org/S106296714","display_name":"Lecture notes in computer science","issn_l":"0302-9743","issn":["0302-9743","1611-3349"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"book series"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Lecture Notes in Computer Science","raw_type":"book-chapter"},"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/15","display_name":"Life in Land","score":0.6499999761581421}],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3185067705.pdf","grobid_xml":"https://content.openalex.org/works/W3185067705.grobid-xml"},"referenced_works_count":68,"referenced_works":["https://openalex.org/W26556108","https://openalex.org/W75321019","https://openalex.org/W88647010","https://openalex.org/W91886818","https://openalex.org/W564852913","https://openalex.org/W777621473","https://openalex.org/W1480909796","https://openalex.org/W1495368328","https://openalex.org/W1499965630","https://openalex.org/W1562865234","https://openalex.org/W1577404745","https://openalex.org/W1578075389","https://openalex.org/W1588132240","https://openalex.org/W1603416030","https://openalex.org/W1606177908","https://openalex.org/W1965680834","https://openalex.org/W1967019306","https://openalex.org/W1974454942","https://openalex.org/W1989483469","https://openalex.org/W2010194128","https://openalex.org/W2017927472","https://openalex.org/W2025273237","https://openalex.org/W2044116584","https://openalex.org/W2045388381","https://openalex.org/W2051283794","https://openalex.org/W2060072995","https://openalex.org/W2079614594","https://openalex.org/W2098959411","https://openalex.org/W2102966114","https://openalex.org/W2129695855","https://openalex.org/W2130427425","https://openalex.org/W2137628566","https://openalex.org/W2155155782","https://openalex.org/W2167358697","https://openalex.org/W2169528473","https://openalex.org/W2294722445","https://openalex.org/W2340006107","https://openalex.org/W2477881860","https://openalex.org/W2521096248","https://openalex.org/W2528607668","https://openalex.org/W2542095453","https://openalex.org/W2562833768","https://openalex.org/W2565255124","https://openalex.org/W2735902709","https://openalex.org/W2757243080","https://openalex.org/W2775427311","https://openalex.org/W2780286008","https://openalex.org/W2892302641","https://openalex.org/W2898431794","https://openalex.org/W2899389232","https://openalex.org/W2950302512","https://openalex.org/W2972031508","https://openalex.org/W2978301562","https://openalex.org/W2978964079","https://openalex.org/W2979271225","https://openalex.org/W2979969121","https://openalex.org/W2989671578","https://openalex.org/W3023197541","https://openalex.org/W3038320931","https://openalex.org/W3103408594","https://openalex.org/W3104549103","https://openalex.org/W3127480495","https://openalex.org/W4240200084","https://openalex.org/W4246191294","https://openalex.org/W4247464325","https://openalex.org/W4302771278","https://openalex.org/W6704052874","https://openalex.org/W6912426056"],"related_works":["https://openalex.org/W3008339103","https://openalex.org/W2404647514","https://openalex.org/W1667647204","https://openalex.org/W3158777280","https://openalex.org/W4247536566","https://openalex.org/W2391048224","https://openalex.org/W2349449209","https://openalex.org/W4387229742","https://openalex.org/W1817053572","https://openalex.org/W2356887624"],"abstract_inverted_index":{"Abstract":[0],"We":[1,23,53,100],"develop":[2],"machine-checked":[3],"verifications":[4,67],"of":[5,10,13,18,43,122,136],"the":[6,14,91,103,144,151,155,167],"full":[7],"functional":[8],"correctness":[9],"C":[11],"implementations":[12],"eponymous":[15],"graph":[16,112,146,153],"algorithms":[17],"Dijkstra,":[19],"Kruskal,":[20],"and":[21,39,50,63,95,150,177],"Prim.":[22],"extend":[24],"Wang":[25],"et":[26],"al.":[27],"\u2019s":[28],"CertiGraph":[29],"platform":[30],"to":[31,84,169,180,183],"reason":[32],"about":[33,140],"labels":[34],"on":[35,80],"edges,":[36],"undirected":[37,145],"graphs,":[38],"common":[40,104],"spatial":[41],"representations":[42],"edge-labeled":[44],"graphs":[45,142],"such":[46],"as":[47],"adjacency":[48],"matrices":[49],"edge":[51,81],"lists.":[52],"certify":[54],"binary":[55,160],"heaps,":[56],"including":[57,76],"Floyd\u2019s":[58],"bottom-up":[59],"heap":[60,161,168],"construction,":[61,149],"heapsort,":[62],"increase/decrease":[64],"priority.":[65],"Our":[66,134,159],"uncover":[68],"subtle":[69,174],"overflows":[70],"implicit":[71],"in":[72],"standard":[73,119],"textbook":[74,120],"code,":[75],"a":[77,97,110,118,173],"nontrivial":[78],"bound":[79],"weights":[82],"necessary":[83],"execute":[85],"Dijkstra\u2019s":[86],"algorithm;":[87],"we":[88,115],"show":[89],"that":[90,102,106,117],"intuitive":[92],"guess":[93],"fails":[94],"provide":[96],"workable":[98],"refinement.":[99],"observe":[101],"notion":[105],"Prim\u2019s":[107,123],"algorithm":[108,124,138],"requires":[109],"connected":[111],"is":[113],"wrong:":[114],"verify":[116],"implementation":[121],"can":[125],"compute":[126],"minimum":[127],"spanning":[128],"forests":[129],"without":[130],"finding":[131],"components":[132],"first.":[133],"verification":[135,162],"Kruskal\u2019s":[137],"reasons":[139],"two":[141],"simultaneously:":[143],"undergoing":[147],"MSF":[148],"directed":[152],"representing":[154],"forest":[156],"inside":[157],"union-find.":[158],"exposes":[163],"precise":[164],"bounds":[165],"for":[166],"operate":[170],"correctly,":[171],"avoids":[172],"overflow":[175],"error,":[176],"shows":[178],"how":[179],"recycle":[181],"keys":[182],"avoid":[184],"overflow.":[185]},"counts_by_year":[{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":2}],"updated_date":"2026-03-17T17:19:04.345684","created_date":"2025-10-10T00:00:00"}
