{"id":3651,"date":"2015-06-16T09:00:00","date_gmt":"2015-06-16T09:00:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/msr_er\/2015\/06\/16\/z3-wins-2015-acm-sigplan-award\/"},"modified":"2020-03-28T02:53:14","modified_gmt":"2020-03-28T09:53:14","slug":"z3-wins-2015-acm-sigplan-award","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/z3-wins-2015-acm-sigplan-award\/","title":{"rendered":"Z3 wins 2015 ACM SIGPLAN Award"},"content":{"rendered":"<p>On Monday, June 15, Microsoft Research\u2019s Z3 theorem prover received the 2015 ACM SIGPLAN <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/www.sigplan.org\/Awards\/Software\/\" target=\"_blank\" rel=\"noopener noreferrer\">Programming Languages Software Award<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. This prestigious award honors an institution or individuals for \u201cdeveloping a software system that has had a lasting influence, reflected in contributions to concepts, in commercial acceptance, or both.\u201d The announcement took place during <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/conf.researchr.org\/home\/pldi2015\/\" target=\"_blank\" rel=\"noopener noreferrer\">PLDI 2015<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, the annual ACM SIGPLAN conference on Programming Language Design and Implementation.<\/p>\n<p>Z3\u2019s lead developers\u2014<a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-us\/people\/nbjorner\/\" target=\"_blank\" rel=\"noopener noreferrer\">Nikolaj Bjorner<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/leodemoura.github.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Leonardo de Moura<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-us\/people\/cwinter\" target=\"_blank\" rel=\"noopener noreferrer\">Christoph Wintersteiger<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, all of Microsoft Research\u2014were cited for creating a highly efficient theorem prover and tool in the SMT (Satisfiability Modulo Theories) class.<\/p>\n<div style=\"width: 610px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" title=\"Derek Dreyer, Chair of the Awards Committee, presents the Award to Christoph Wintersteiger, Leonardo de Moura and Nikolai Bjorner\" src=\"https:\/\/msdnshared.blob.core.windows.net\/media\/MSDNBlogsFS\/prod.evol.blogs.msdn.com\/CommunityServer.Blogs.Components.WeblogFiles\/00\/00\/01\/32\/81\/1222.Z3_winners.JPG\" alt=\"Derek Dreyer, Chair of the Awards Committee, presents the Award to Christoph Wintersteiger, Leonardo de Moura and Nikolai Bjorner\" width=\"600\" height=\"384\" \/><p class=\"wp-caption-text\">Derek Dreyer, Chair of the Awards Committee, presents the award to Christoph Wintersteiger, Leonardo de Moura, and Nikolai Bjorner<\/p><\/div>\n<p style=\"text-align: left;\">Z3 is a state-of-the art theorem prover that integrates specialized solvers for domains that are of relevance for program analysis, testing and verification. Z3 is a compelling integral component of such tools because these tools rely on reasoning about program states and transformations between states.<\/p>\n<p>At Microsoft, developers have used Z3 to solve more than a billion constraints produced by Sage, the world\u2019s first whitebox fuzzer for finding security vulnerabilities. Sage has saved the company millions of dollars that would have been spent fixing bugs in shipped products. Z3 also provides the basis for a cloud service security policy checker, the Pex test-case generation tool, a verifying C compiler and JavaScript malware detection, among others. Moreover, Z3\u2019s powerful and versatile technology has inspired an entire generation of practical tools, including Spec#, Dafny, VCC, Havoc, Boogie, Slam, Yogi, Hyper-V, Spec Explorer and Terminator, which can been tested out on <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/www.rise4fun.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Rise4Fun<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>.<\/p>\n<p>Many years in the making, Z3 now supports all major platforms (Windows, OSX, Linux and FreeBSD). Since the code was released in October 2012, Z3 has been downloaded more than 20,000 times. Users can also call Z3 procedurally by using a variety of APIs available in C, C++, Java, .Net, OCaml and Python. Z3 became open source under an MIT license in March 2015.<\/p>\n<p>With this release, Z3 has been adopted by an appreciative user community in a variety of tools for a wide range of uses, including general problem-solving, scheduling, optimization and software analysis. Being open source has definitely accelerated the development of the power of the system, in particular by accumulating contributions from the academic world, including theorists, tool-builders and users, for the benefit of all. Examples of tools in static analysis, verification and inference are Verifast, ScalaZ3, Why3, MetiTarski, SBV and ESC\/Java2.<\/p>\n<p>In the academic world, Z3 has spawned more than 30 technical publications and more than 2,200 citations. It also provides an important tool for introducing students to SMT and theorem proving.<\/p>\n<p>So congratulations to the Z3 team for this well-deserved recognition. You can try Z3 out in your own browser at <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/www.rise4fun.com\/Z3\" target=\"_blank\" rel=\"noopener noreferrer\">Rise4Fun<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and find out more on the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"https:\/\/github.com\/z3prover\/z3\/wiki\" target=\"_blank\" rel=\"noopener noreferrer\">project website<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>.<\/p>\n<p><em>\u2014<\/em><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-us\/people\/jbishop\/\" target=\"_blank\" rel=\"noopener noreferrer\"><em>Judith Bishop<\/em><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><em>, Director of Computer Science, Microsoft Research,\u00a0<a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" title=\"Tom Ball\" href=\"http:\/\/research.microsoft.com\/en-us\/people\/tball\/\">Tom Ball<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, Research Manager and Principal Researcher, Microsoft Research, and <\/em><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-us\/people\/zorn\/\" target=\"_blank\" rel=\"noopener noreferrer\"><em>Ben Zorn<\/em><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><em>, Research Manager and Principal Researcher, Microsoft Research<\/em>.<\/p>\n<p><strong>Learn more<\/strong><\/p>\n<ul>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"https:\/\/github.com\/Z3Prover\/z3\" target=\"_blank\" rel=\"noopener noreferrer\">Get the Z3 source code<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/www.sigplan.org\/Conferences\/PLDI\/\" target=\"_blank\" rel=\"noopener noreferrer\">ACM SIGPLAN PLDI<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>On Monday, June 15, Microsoft Research\u2019s Z3 theorem prover received the 2015 ACM SIGPLAN Programming Languages Software Award. This prestigious award honors an institution or individuals for \u201cdeveloping a software system that has had a lasting influence, reflected in contributions to concepts, in commercial acceptance, or both.\u201d The announcement took place during PLDI 2015, the [&hellip;]<\/p>\n","protected":false},"author":32627,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","msr-author-ordering":[],"msr_hide_image_in_river":0,"footnotes":""},"categories":[194488],"tags":[194575,193554,194794,196077,197032,186613,197884],"research-area":[13560],"msr-region":[],"msr-event-type":[],"msr-locale":[268875],"msr-post-option":[],"msr-impact-theme":[],"msr-promo-type":[],"msr-podcast-series":[],"class_list":["post-3651","post","type-post","status-publish","format-standard","hentry","category-program-languages-and-software-engineering","tag-acm-sigplan-pldi","tag-award","tag-ben-zorn","tag-judith-bishop","tag-rise4fun","tag-theorem-prover","tag-z3","msr-research-area-programming-languages-software-engineering","msr-locale-en_us"],"msr_event_details":{"start":"","end":"","location":""},"podcast_url":"","podcast_episode":"","msr_research_lab":[199565],"msr_impact_theme":[],"related-publications":[],"related-downloads":[],"related-videos":[],"related-academic-programs":[],"related-groups":[144812],"related-projects":[],"related-events":[],"related-researchers":[],"msr_type":"Post","byline":"","formattedDate":"June 16, 2015","formattedExcerpt":"On Monday, June 15, Microsoft Research\u2019s Z3 theorem prover received the 2015 ACM SIGPLAN Programming Languages Software Award. This prestigious award honors an institution or individuals for \u201cdeveloping a software system that has had a lasting influence, reflected in contributions to concepts, in commercial acceptance,&hellip;","locale":{"slug":"en_us","name":"English","native":"","english":"English"},"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/3651","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/users\/32627"}],"replies":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/comments?post=3651"}],"version-history":[{"count":3,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/3651\/revisions"}],"predecessor-version":[{"id":646563,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/3651\/revisions\/646563"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=3651"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/categories?post=3651"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/tags?post=3651"},{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=3651"},{"taxonomy":"msr-region","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-region?post=3651"},{"taxonomy":"msr-event-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-event-type?post=3651"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=3651"},{"taxonomy":"msr-post-option","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-post-option?post=3651"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=3651"},{"taxonomy":"msr-promo-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-promo-type?post=3651"},{"taxonomy":"msr-podcast-series","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-podcast-series?post=3651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}