{"id":"https://openalex.org/W2141729404","doi":"https://doi.org/10.1145/1806596.1806610","title":"Safe to the last instruction","display_name":"Safe to the last instruction","publication_year":2010,"publication_date":"2010-06-05","ids":{"openalex":"https://openalex.org/W2141729404","doi":"https://doi.org/10.1145/1806596.1806610","mag":"2141729404"},"language":"en","primary_location":{"id":"doi:10.1145/1806596.1806610","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1806596.1806610","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 31st ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"type":"conference-paper","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/A5028524705","display_name":"Jean Yang","orcid":"https://orcid.org/0000-0002-5271-2603"},"institutions":[{"id":"https://openalex.org/I63966007","display_name":"Massachusetts Institute of Technology","ror":"https://ror.org/042nb2s44","country_code":"US","type":"education","lineage":["https://openalex.org/I63966007"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Jean Yang","raw_affiliation_strings":["Massachusetts Institute of Technology, Boston, MA, USA","Massachusetts Institute of Technology, Boston, MA, USA#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Massachusetts Institute of Technology, Boston, MA, USA","institution_ids":["https://openalex.org/I63966007"]},{"raw_affiliation_string":"Massachusetts Institute of Technology, Boston, MA, USA#TAB#","institution_ids":["https://openalex.org/I63966007"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5016958899","display_name":"Chris Hawblitzel","orcid":"https://orcid.org/0000-0002-5676-0362"},"institutions":[{"id":"https://openalex.org/I1290206253","display_name":"Microsoft (United States)","ror":"https://ror.org/00d0nc645","country_code":"US","type":"company","lineage":["https://openalex.org/I1290206253"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Chris Hawblitzel","raw_affiliation_strings":["Microsoft Research, Redmond, WA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Microsoft Research, Redmond, WA, USA","institution_ids":["https://openalex.org/I1290206253"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":8.4464,"has_fulltext":false,"cited_by_count":129,"citation_normalized_percentile":{"value":0.9849665,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"99","last_page":"110"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11424","display_name":"Security and Verification in Computing","score":0.9998000264167786,"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/T11424","display_name":"Security and Verification in Computing","score":0.9998000264167786,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9983000159263611,"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.9980000257492065,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8449428081512451},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6656570434570312},{"id":"https://openalex.org/keywords/memory-safety","display_name":"Memory safety","score":0.6291511058807373},{"id":"https://openalex.org/keywords/hoare-logic","display_name":"Hoare logic","score":0.5869307518005371},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.5762832760810852},{"id":"https://openalex.org/keywords/kernel","display_name":"Kernel (algebra)","score":0.5447940826416016},{"id":"https://openalex.org/keywords/assembly-language","display_name":"Assembly language","score":0.5388334393501282},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.4850999116897583},{"id":"https://openalex.org/keywords/separation-logic","display_name":"Separation logic","score":0.42009907960891724},{"id":"https://openalex.org/keywords/memory-protection","display_name":"Memory protection","score":0.41792696714401245},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.3352842926979065},{"id":"https://openalex.org/keywords/memory-management","display_name":"Memory management","score":0.22512134909629822},{"id":"https://openalex.org/keywords/virtual-memory","display_name":"Virtual memory","score":0.2238858938217163},{"id":"https://openalex.org/keywords/overlay","display_name":"Overlay","score":0.13766497373580933}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8449428081512451},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6656570434570312},{"id":"https://openalex.org/C28180684","wikidata":"https://www.wikidata.org/wiki/Q4080983","display_name":"Memory safety","level":3,"score":0.6291511058807373},{"id":"https://openalex.org/C104949639","wikidata":"https://www.wikidata.org/wiki/Q1375924","display_name":"Hoare logic","level":3,"score":0.5869307518005371},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.5762832760810852},{"id":"https://openalex.org/C74193536","wikidata":"https://www.wikidata.org/wiki/Q574844","display_name":"Kernel (algebra)","level":2,"score":0.5447940826416016},{"id":"https://openalex.org/C50831359","wikidata":"https://www.wikidata.org/wiki/Q165436","display_name":"Assembly language","level":3,"score":0.5388334393501282},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.4850999116897583},{"id":"https://openalex.org/C173856430","wikidata":"https://www.wikidata.org/wiki/Q3257964","display_name":"Separation logic","level":2,"score":0.42009907960891724},{"id":"https://openalex.org/C18131444","wikidata":"https://www.wikidata.org/wiki/Q163585","display_name":"Memory protection","level":5,"score":0.41792696714401245},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.3352842926979065},{"id":"https://openalex.org/C176649486","wikidata":"https://www.wikidata.org/wiki/Q2308807","display_name":"Memory management","level":3,"score":0.22512134909629822},{"id":"https://openalex.org/C76399640","wikidata":"https://www.wikidata.org/wiki/Q189401","display_name":"Virtual memory","level":4,"score":0.2238858938217163},{"id":"https://openalex.org/C136085584","wikidata":"https://www.wikidata.org/wiki/Q910289","display_name":"Overlay","level":2,"score":0.13766497373580933},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","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/1806596.1806610","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1806596.1806610","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 31st ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":23,"referenced_works":["https://openalex.org/W1480909796","https://openalex.org/W1606177908","https://openalex.org/W1965760540","https://openalex.org/W2020136418","https://openalex.org/W2083469471","https://openalex.org/W2084715426","https://openalex.org/W2087832144","https://openalex.org/W2097166325","https://openalex.org/W2097889836","https://openalex.org/W2103960969","https://openalex.org/W2104963439","https://openalex.org/W2106115112","https://openalex.org/W2108923990","https://openalex.org/W2122142025","https://openalex.org/W2131238817","https://openalex.org/W2136310957","https://openalex.org/W2137186143","https://openalex.org/W2137484994","https://openalex.org/W2150401476","https://openalex.org/W2168075869","https://openalex.org/W2504100651","https://openalex.org/W3010549432","https://openalex.org/W6672532551"],"related_works":["https://openalex.org/W2096553703","https://openalex.org/W183428347","https://openalex.org/W4318145497","https://openalex.org/W1536810838","https://openalex.org/W2165970356","https://openalex.org/W2484072889","https://openalex.org/W3148010226","https://openalex.org/W2120897738","https://openalex.org/W3142658169","https://openalex.org/W2479659155"],"abstract_inverted_index":{"Typed":[0],"assembly":[1,51,112],"language":[2,52],"(TAL)":[3],"and":[4,22,43,61,86,98,122,130,155,169,192],"Hoare":[5,23],"logic":[6,24],"can":[7],"verify":[8,46],"the":[9,32,47,55,68,72,96,105,144,150,153,167,172,177,182],"absence":[10],"of":[11,14,31,34,49,67,77,95,104,143,152,171,179],"many":[12],"kinds":[13],"errors":[15],"in":[16,54,110,128,212],"low-level":[17,209],"code.":[18],"We":[19],"use":[20],"TAL":[21,147],"to":[25,84,132,176,188,203],"achieve":[26],"highly":[27],"automated,":[28],"static":[29],"verification":[30],"safety":[33,48,151,168],"a":[35,78,88,200,213],"new":[36],"operating":[37,56,184],"system":[38,69,185],"called":[39],"Verve.":[40],"Our":[41],"techniques":[42],"tools":[44],"mechanically":[45,186],"every":[50,65],"instruction":[53],"system,":[57,59],"run-time":[58],"drivers,":[60],"applications":[62,99],"(in":[63],"fact,":[64],"part":[66],"software":[70],"except":[71],"boot":[73],"loader).":[74],"Verve":[75,174],"consists":[76],"\"Nucleus\"":[79],"that":[80,90,100],"provides":[81],"primitive":[82],"access":[83],"hardware":[85],"memory,":[87],"kernel":[89,154],"builds":[91,134],"services":[92],"on":[93,102,141],"top":[94,103,142],"Nucleus,":[97,108],"run":[101],"kernel.":[106],"The":[107,125],"written":[109,127],"verified":[111,187],"language,":[113],"implements":[114],"allocation,":[115],"garbage":[116],"collection,":[117],"multiple":[118],"stacks,":[119],"interrupt":[120],"handling,":[121],"device":[123],"access.":[124],"kernel,":[126],"C#":[129],"compiled":[131],"TAL,":[133],"higher-level":[135],"services,":[136],"such":[137],"as":[138],"preemptive":[139],"threads,":[140],"Nucleus.":[145,173],"A":[146,157],"checker":[148],"verifies":[149,165],"applications.":[156],"Hoare-style":[158],"verifier":[159],"with":[160,208],"an":[161],"automated":[162],"theorem":[163],"prover":[164],"both":[166,190],"correctness":[170],"is,":[175],"best":[178],"our":[180],"knowledge,":[181],"first":[183],"guarantee":[189],"type":[191],"memory":[193],"safety.":[194],"More":[195],"generally,":[196],"Verve's":[197],"approach":[198],"demonstrates":[199],"practical":[201],"way":[202],"mix":[204],"high-level":[205],"typed":[206],"code":[207,211],"untyped":[210],"verifiably":[214],"safe":[215],"manner.":[216]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":3},{"year":2020,"cited_by_count":7},{"year":2019,"cited_by_count":7},{"year":2018,"cited_by_count":7},{"year":2017,"cited_by_count":22},{"year":2016,"cited_by_count":16},{"year":2015,"cited_by_count":14},{"year":2014,"cited_by_count":11},{"year":2013,"cited_by_count":13},{"year":2012,"cited_by_count":6}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
