{"id":"https://openalex.org/W2012567572","doi":"https://doi.org/10.1016/s1571-0661(04)80392-x","title":"Compiler Verification and Compiler Architecture","display_name":"Compiler Verification and Compiler Architecture","publication_year":2002,"publication_date":"2002-04-01","ids":{"openalex":"https://openalex.org/W2012567572","doi":"https://doi.org/10.1016/s1571-0661(04)80392-x","mag":"2012567572"},"language":"en","primary_location":{"id":"doi:10.1016/s1571-0661(04)80392-x","is_oa":true,"landing_page_url":"https://doi.org/10.1016/s1571-0661(04)80392-x","pdf_url":null,"source":{"id":"https://openalex.org/S50368787","display_name":"Electronic Notes in Theoretical Computer Science","issn_l":"1571-0661","issn":["1571-0661"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Electronic Notes in Theoretical Computer Science","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://doi.org/10.1016/s1571-0661(04)80392-x","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5103353356","display_name":"Gerhard Goos","orcid":null},"institutions":[{"id":"https://openalex.org/I102335020","display_name":"Karlsruhe Institute of Technology","ror":"https://ror.org/04t3en479","country_code":"DE","type":"education","lineage":["https://openalex.org/I102335020","https://openalex.org/I1305996414"]}],"countries":["DE"],"is_corresponding":true,"raw_author_name":"Gerhard Goos","raw_affiliation_strings":["Fakult\u00e4t f\u00fcr Informatik, Universit\u00e4t Karlsruhe","Fakult\u00e4t f\u00fcr Informatik, Universit\u00e4t Karlsruhe,"],"affiliations":[{"raw_affiliation_string":"Fakult\u00e4t f\u00fcr Informatik, Universit\u00e4t Karlsruhe","institution_ids":[]},{"raw_affiliation_string":"Fakult\u00e4t f\u00fcr Informatik, Universit\u00e4t Karlsruhe,","institution_ids":["https://openalex.org/I102335020"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5103353356"],"corresponding_institution_ids":["https://openalex.org/I102335020"],"apc_list":null,"apc_paid":null,"fwci":0.4169,"has_fulltext":false,"cited_by_count":5,"citation_normalized_percentile":{"value":0.67413896,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":"65","issue":"2","first_page":"1","last_page":"1"},"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.9976000189781189,"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.9976000189781189,"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/T10260","display_name":"Software Engineering Research","score":0.9927999973297119,"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/T10142","display_name":"Formal Methods in Verification","score":0.9919999837875366,"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.8979852199554443},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.8639464378356934},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.8384764194488525},{"id":"https://openalex.org/keywords/compiler-correctness","display_name":"Compiler correctness","score":0.7964895963668823},{"id":"https://openalex.org/keywords/compiler-construction","display_name":"Compiler construction","score":0.6296173930168152},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.6198301911354065},{"id":"https://openalex.org/keywords/abstract-syntax-tree","display_name":"Abstract syntax tree","score":0.5643899440765381},{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.49306032061576843},{"id":"https://openalex.org/keywords/interprocedural-optimization","display_name":"Interprocedural optimization","score":0.44895800948143005},{"id":"https://openalex.org/keywords/program-transformation","display_name":"Program transformation","score":0.4106099605560303},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.31118518114089966},{"id":"https://openalex.org/keywords/loop-optimization","display_name":"Loop optimization","score":0.25417131185531616}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8979852199554443},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.8639464378356934},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8384764194488525},{"id":"https://openalex.org/C68366613","wikidata":"https://www.wikidata.org/wiki/Q5156378","display_name":"Compiler correctness","level":3,"score":0.7964895963668823},{"id":"https://openalex.org/C9957790","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler construction","level":3,"score":0.6296173930168152},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.6198301911354065},{"id":"https://openalex.org/C58646249","wikidata":"https://www.wikidata.org/wiki/Q127380","display_name":"Abstract syntax tree","level":3,"score":0.5643899440765381},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.49306032061576843},{"id":"https://openalex.org/C111564260","wikidata":"https://www.wikidata.org/wiki/Q4288856","display_name":"Interprocedural optimization","level":5,"score":0.44895800948143005},{"id":"https://openalex.org/C2778361913","wikidata":"https://www.wikidata.org/wiki/Q7248437","display_name":"Program transformation","level":2,"score":0.4106099605560303},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.31118518114089966},{"id":"https://openalex.org/C29331672","wikidata":"https://www.wikidata.org/wiki/Q3354468","display_name":"Loop optimization","level":4,"score":0.25417131185531616}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1016/s1571-0661(04)80392-x","is_oa":true,"landing_page_url":"https://doi.org/10.1016/s1571-0661(04)80392-x","pdf_url":null,"source":{"id":"https://openalex.org/S50368787","display_name":"Electronic Notes in Theoretical Computer Science","issn_l":"1571-0661","issn":["1571-0661"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Electronic Notes in Theoretical Computer Science","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1016/s1571-0661(04)80392-x","is_oa":true,"landing_page_url":"https://doi.org/10.1016/s1571-0661(04)80392-x","pdf_url":null,"source":{"id":"https://openalex.org/S50368787","display_name":"Electronic Notes in Theoretical Computer Science","issn_l":"1571-0661","issn":["1571-0661"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Electronic Notes in Theoretical Computer Science","raw_type":"journal-article"},"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/4","display_name":"Quality Education","score":0.5199999809265137}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W2094199724","https://openalex.org/W3000589862","https://openalex.org/W2169584677","https://openalex.org/W4232954277","https://openalex.org/W4240253816","https://openalex.org/W2901567138","https://openalex.org/W2354057234","https://openalex.org/W2749133591","https://openalex.org/W2066503869","https://openalex.org/W4246454774"],"abstract_inverted_index":{"We":[0,12,101],"study":[1],"issues":[2],"in":[3,49,96,189,198],"verifying":[4,51,65],"compilers":[5],"for":[6,39,59,243,269],"modern":[7],"imperative":[8],"and":[9,46,71,174,228,248],"object-oriented":[10],"languages.":[11],"take":[13],"the":[14,20,23,56,61,72,82,91,107,122,125,130,134,147,166,194,201,222,258,264,274],"view":[15],"that":[16,37,220],"it":[17,27,239],"is":[18,33,55,127,165,192,233],"not":[19,161],"compiler":[21,42,70,86,156],"but":[22,197],"code":[24,282],"generated":[25],"by":[26,74,129,179,184],"which":[28,75,169,191],"must":[29,207],"be":[30,142,208,241],"correct.":[31,150],"It":[32],"this":[34,94,231,253],"subtle":[35],"difference":[36],"allows":[38],"reusing":[40],"standard":[41],"architecture,":[43],"construction":[44],"methods":[45],"tools":[47,73],"also":[48],"a":[50,69,85,97,114,155,235],"compiler.":[52],"Program":[53,79],"checking":[54,80,159],"main":[57],"technique":[58],"avoiding":[60],"cumbersome":[62],"task":[63],"of":[64,68,84,93,121,124,133,154,200,224,246,273],"most":[66],"parts":[67],"they":[76],"are":[77,279],"generated.":[78],"remaps":[81],"result":[83,126],"phase":[87,206],"to":[88,105,110,141,163,234],"its":[89,111],"origin,":[90],"input":[92,109],"phase,":[95],"provably":[98],"correct":[99],"manner.":[100],"then":[102],"only":[103,152],"have":[104],"compare":[106],"actual":[108],"regenerated":[112],"form,":[113],"basically":[115],"syntactic":[116],"process.":[117,136],"The":[118,137,151],"correctness":[119,131],"proof":[120,132],"generation":[123],"replaced":[128],"remapping":[135],"latter":[138],"turns":[139],"out":[140],"far":[143],"easier":[144],"than":[145],"proving":[146],"generating":[148],"process":[149],"part":[153],"where":[157],"program":[158,196],"does":[160],"seem":[162],"work":[164],"transformation":[167,205,232],"step":[168],"replaces":[170],"source":[171,247,275],"language":[172],"constructs":[173],"their":[175],"semantics,":[176],"given,":[177],"e.g.,":[178,188],"an":[180,185],"attributed":[181],"syntax":[182,259],"tree,":[183],"intermediate":[186,265],"representation,":[187],"SSA-form,":[190],"expressing":[193],"same":[195],"terms":[199],"target":[202,249],"machine.":[203],"This":[204],"directly":[209],"proven":[210],"using":[211],"Hoare":[212],"logic":[213],"and/or":[214],"theorem-provers.":[215],"However,":[216],"we":[217,255],"can":[218,240],"show":[219],"given":[221],"features":[223],"today's":[225],"programming":[226],"languages":[227],"hardware":[229],"architectures":[230],"large":[236],"extent":[237],"universal:":[238],"reused":[242],"any":[244],"pair":[245],"language.":[250,276],"To":[251],"achieve":[252],"goal":[254],"investigate":[256],"annotating":[257],"tree":[260],"as":[261,263],"well":[262],"representation":[266],"with":[267],"constraints":[268],"exhibiting":[270],"specific":[271],"properties":[272],"Such":[277],"annotations":[278],"necessary":[280],"during":[281],"optimization":[283],"anyway.":[284]},"counts_by_year":[{"year":2015,"cited_by_count":2},{"year":2013,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
