{"id":"https://openalex.org/W2565944248","doi":"https://doi.org/10.29007/v2m3","title":"Well-founded Functions and Extreme Predicates in Dafny: A Tutorial","display_name":"Well-founded Functions and Extreme Predicates in Dafny: A Tutorial","publication_year":2018,"publication_date":"2018-01-23","ids":{"openalex":"https://openalex.org/W2565944248","doi":"https://doi.org/10.29007/v2m3","mag":"2565944248"},"language":"en","primary_location":{"id":"doi:10.29007/v2m3","is_oa":true,"landing_page_url":"https://doi.org/10.29007/v2m3","pdf_url":"https://easychair.org/publications/open/vHsB","source":{"id":"https://openalex.org/S4220651395","display_name":"EPiC series in computing","issn_l":"2398-7340","issn":["2398-7340"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"EPiC Series in Computing","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://easychair.org/publications/open/vHsB","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5030991503","display_name":"Rustan Leino","orcid":null},"institutions":[{"id":"https://openalex.org/I4210164937","display_name":"Microsoft Research (United Kingdom)","ror":"https://ror.org/05k87vq12","country_code":"GB","type":"company","lineage":["https://openalex.org/I1290206253","https://openalex.org/I4210164937"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Rustan Leino","raw_affiliation_strings":["Microsoft Research"],"affiliations":[{"raw_affiliation_string":"Microsoft Research","institution_ids":["https://openalex.org/I4210164937"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5030991503"],"corresponding_institution_ids":["https://openalex.org/I4210164937"],"apc_list":null,"apc_paid":null,"fwci":0.3258,"has_fulltext":true,"cited_by_count":2,"citation_normalized_percentile":{"value":0.64984544,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":"40","issue":null,"first_page":"52","last_page":"36"},"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.9998999834060669,"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.9998999834060669,"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.9994000196456909,"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/T11010","display_name":"Logic, Reasoning, and Knowledge","score":0.9975000023841858,"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.7062382698059082},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6202570796012878},{"id":"https://openalex.org/keywords/partial-function","display_name":"Partial function","score":0.5071349143981934},{"id":"https://openalex.org/keywords/function","display_name":"Function (biology)","score":0.48572593927383423},{"id":"https://openalex.org/keywords/coinduction","display_name":"Coinduction","score":0.4635912775993347},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4364128112792969},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.41179513931274414},{"id":"https://openalex.org/keywords/relation","display_name":"Relation (database)","score":0.41159096360206604},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.2572997212409973},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.24956798553466797},{"id":"https://openalex.org/keywords/mathematical-proof","display_name":"Mathematical proof","score":0.17852246761322021}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7062382698059082},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6202570796012878},{"id":"https://openalex.org/C182359184","wikidata":"https://www.wikidata.org/wiki/Q1756942","display_name":"Partial function","level":2,"score":0.5071349143981934},{"id":"https://openalex.org/C14036430","wikidata":"https://www.wikidata.org/wiki/Q3736076","display_name":"Function (biology)","level":2,"score":0.48572593927383423},{"id":"https://openalex.org/C40220748","wikidata":"https://www.wikidata.org/wiki/Q4227156","display_name":"Coinduction","level":3,"score":0.4635912775993347},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4364128112792969},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.41179513931274414},{"id":"https://openalex.org/C25343380","wikidata":"https://www.wikidata.org/wiki/Q277521","display_name":"Relation (database)","level":2,"score":0.41159096360206604},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.2572997212409973},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.24956798553466797},{"id":"https://openalex.org/C108710211","wikidata":"https://www.wikidata.org/wiki/Q11538","display_name":"Mathematical proof","level":2,"score":0.17852246761322021},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C78458016","wikidata":"https://www.wikidata.org/wiki/Q840400","display_name":"Evolutionary biology","level":1,"score":0.0},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.29007/v2m3","is_oa":true,"landing_page_url":"https://doi.org/10.29007/v2m3","pdf_url":"https://easychair.org/publications/open/vHsB","source":{"id":"https://openalex.org/S4220651395","display_name":"EPiC series in computing","issn_l":"2398-7340","issn":["2398-7340"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"EPiC Series in Computing","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.29007/v2m3","is_oa":true,"landing_page_url":"https://doi.org/10.29007/v2m3","pdf_url":"https://easychair.org/publications/open/vHsB","source":{"id":"https://openalex.org/S4220651395","display_name":"EPiC series in computing","issn_l":"2398-7340","issn":["2398-7340"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"EPiC Series in Computing","raw_type":"proceedings-article"},"sustainable_development_goals":[{"display_name":"Quality Education","score":0.6899999976158142,"id":"https://metadata.un.org/sdg/4"}],"awards":[],"funders":[{"id":"https://openalex.org/F4320320283","display_name":"Imperial College London","ror":"https://ror.org/041kmwe10"}],"has_content":{"pdf":true,"grobid_xml":false},"content_urls":{"pdf":"https://content.openalex.org/works/W2565944248.pdf"},"referenced_works_count":33,"referenced_works":["https://openalex.org/W2288352","https://openalex.org/W34093435","https://openalex.org/W266135116","https://openalex.org/W1485127463","https://openalex.org/W1511668635","https://openalex.org/W1518939492","https://openalex.org/W1558175043","https://openalex.org/W1588723084","https://openalex.org/W1597068544","https://openalex.org/W1831545713","https://openalex.org/W1949275316","https://openalex.org/W1982866418","https://openalex.org/W2046213250","https://openalex.org/W2097704387","https://openalex.org/W2103953153","https://openalex.org/W2106192381","https://openalex.org/W2115721647","https://openalex.org/W2130427425","https://openalex.org/W2137865376","https://openalex.org/W2147778310","https://openalex.org/W2153763119","https://openalex.org/W2154005761","https://openalex.org/W2183062003","https://openalex.org/W2194869982","https://openalex.org/W2395850853","https://openalex.org/W2520382536","https://openalex.org/W2914354623","https://openalex.org/W3146075203","https://openalex.org/W4240226860","https://openalex.org/W4246799966","https://openalex.org/W4300649716","https://openalex.org/W4302049037","https://openalex.org/W6635592456"],"related_works":["https://openalex.org/W1523149969","https://openalex.org/W4246799966","https://openalex.org/W1680684178","https://openalex.org/W2530227870","https://openalex.org/W2737623643","https://openalex.org/W2158409018","https://openalex.org/W2908075982","https://openalex.org/W2128992690","https://openalex.org/W1864217700","https://openalex.org/W1802255488"],"abstract_inverted_index":{"A":[0,38],"recursive":[1,9],"function":[2,20,40],"is":[3,21,27],"well":[4],"defined":[5,44],"if":[6],"its":[7,136],"every":[8],"call":[10],"corresponds":[11],"a":[12,19,36,50,56,71,86,138],"decrease":[13],"in":[14,28,106,115,152],"some":[15,62],"well-founded":[16],"order.":[17],"Such":[18,64],"said":[22],"to":[23,34,49,69,148],"be":[24,43],"_terminating_":[25],"and":[26,79,98,109,119,127],"many":[29,85],"applications":[30],"the":[31,82,104],"standard":[32],"way":[33],"define":[35],"function.":[37],"boolean":[39],"can":[41],"also":[42],"as":[45,55],"an":[46,153],"extreme":[47,99,123],"solution":[48],"recurrence":[51],"relation,":[52],"that":[53],"is,":[54],"least":[57],"or":[58,75],"greatest":[59],"fixpoint":[60],"of":[61,73,84],"functor.":[63],"_extreme":[65],"predicates_":[66],"are":[67,80,129],"useful":[68],"encode":[70],"set":[72],"inductive":[74],"coinductive":[76],"inference":[77],"rules":[78],"at":[81,135],"core":[83,137],"constructive":[87],"logic.":[88],"The":[89],"verification-aware":[90],"programming":[91],"language":[92],"Dafny":[93,116],"supports":[94],"both":[95],"terminating":[96],"functions":[97],"predicates.":[100,124],"This":[101],"tutorial":[102],"describes":[103,111],"difference":[105],"general":[107],"terms,":[108],"then":[110],"novel":[112],"syntactic":[113],"support":[114],"for":[117],"defining":[118],"proving":[120],"lemmas":[121],"with":[122],"Various":[125],"examples":[126],"considerations":[128],"given.":[130],"Although":[131],"Dafny's":[132,142],"verifier":[133],"has":[134],"first-order":[139],"SMT":[140],"solver,":[141],"logical":[143],"encoding":[144],"makes":[145],"it":[146],"possible":[147],"reason":[149],"about":[150],"fixpoints":[151],"automated":[154],"way.":[155]},"counts_by_year":[{"year":2021,"cited_by_count":1},{"year":2018,"cited_by_count":1}],"updated_date":"2026-01-15T23:16:33.117629","created_date":"2025-10-10T00:00:00"}
