{"id":115911,"date":"2020-11-15T14:25:38","date_gmt":"2020-11-15T22:25:38","guid":{"rendered":"https:\/\/lifeboat.com\/blog\/2020\/11\/new-method-ensures-complex-programs-are-bug-free-without-testing"},"modified":"2020-11-15T14:25:38","modified_gmt":"2020-11-15T22:25:38","slug":"new-method-ensures-complex-programs-are-bug-free-without-testing","status":"publish","type":"post","link":"https:\/\/lifeboat.com\/blog\/2020\/11\/new-method-ensures-complex-programs-are-bug-free-without-testing","title":{"rendered":"New method ensures complex programs are bug-free without testing"},"content":{"rendered":"<p><a class=\"aligncenter blog-photo\" href=\"https:\/\/lifeboat.com\/blog.images\/new-method-ensures-complex-programs-are-bug-free-without-testing.jpg\"><\/a><\/p>\n<p>A team of researchers have devised a way to verify that a class of complex programs is bug-free without the need for traditional software testing. Called Armada, the system makes use of a technique called formal verification to prove whether a piece of software will output what it\u2019s supposed to. It targets software that runs using concurrent execution, a widespread method for boosting performance, which has long been a particularly challenging feature to apply this technique to.<\/p>\n<p>The <a href=\"https:\/\/techxplore.com\/tags\/collaborative+effort\/\" rel=\"tag\" class=\"\">collaborative effort<\/a> between the University of Michigan, Microsoft Research, and Carnegie Mellon was recognized at ACM\u2019s Programming Language Design and Implementation (PDLI 2020) with a Distinguished Paper Award.<\/p>\n<p>Concurrent programs are known for their complexity, but have been a vital tool for increasing performance after the raw speed of processors began to plateau. Through a variety of different methods, the technique boils down to running multiple instructions in a <a href=\"https:\/\/techxplore.com\/tags\/program\/\" rel=\"tag\" class=\"\">program<\/a> simultaneously. A common example of this is making use of multiple cores of a CPU at once.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A team of researchers have devised a way to verify that a class of complex programs is bug-free without the need for traditional software testing. Called Armada, the system makes use of a technique called formal verification to prove whether a piece of software will output what it\u2019s supposed to. It targets software that runs [\u2026]<\/p>\n","protected":false},"author":513,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34],"tags":[],"class_list":["post-115911","post","type-post","status-publish","format-standard","hentry","category-cybercrime-malcode"],"_links":{"self":[{"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/posts\/115911","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/users\/513"}],"replies":[{"embeddable":true,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/comments?post=115911"}],"version-history":[{"count":0,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/posts\/115911\/revisions"}],"wp:attachment":[{"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/media?parent=115911"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/categories?post=115911"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/tags?post=115911"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}