{"action":"created","issue":{"url":"https://api.github.com/repos/numairmansur/Error-Localization/issues/10","repository_url":"https://api.github.com/repos/numairmansur/Error-Localization","labels_url":"https://api.github.com/repos/numairmansur/Error-Localization/issues/10/labels{/name}","comments_url":"https://api.github.com/repos/numairmansur/Error-Localization/issues/10/comments","events_url":"https://api.github.com/repos/numairmansur/Error-Localization/issues/10/events","html_url":"https://github.com/numairmansur/Error-Localization/issues/10","id":229316079,"number":10,"title":"Potential Problem.","user":{"login":"numairmansur","id":4897599,"avatar_url":"https://avatars2.githubusercontent.com/u/4897599?v=3","gravatar_id":"","url":"https://api.github.com/users/numairmansur","html_url":"https://github.com/numairmansur","followers_url":"https://api.github.com/users/numairmansur/followers","following_url":"https://api.github.com/users/numairmansur/following{/other_user}","gists_url":"https://api.github.com/users/numairmansur/gists{/gist_id}","starred_url":"https://api.github.com/users/numairmansur/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/numairmansur/subscriptions","organizations_url":"https://api.github.com/users/numairmansur/orgs","repos_url":"https://api.github.com/users/numairmansur/repos","events_url":"https://api.github.com/users/numairmansur/events{/privacy}","received_events_url":"https://api.github.com/users/numairmansur/received_events","type":"User","site_admin":false},"labels":[{"id":614391006,"url":"https://api.github.com/repos/numairmansur/Error-Localization/labels/Under%20Active%20Discussion","name":"Under Active Discussion","color":"bfdadc","default":false}],"state":"open","locked":false,"assignee":{"login":"numairmansur","id":4897599,"avatar_url":"https://avatars2.githubusercontent.com/u/4897599?v=3","gravatar_id":"","url":"https://api.github.com/users/numairmansur","html_url":"https://github.com/numairmansur","followers_url":"https://api.github.com/users/numairmansur/followers","following_url":"https://api.github.com/users/numairmansur/following{/other_user}","gists_url":"https://api.github.com/users/numairmansur/gists{/gist_id}","starred_url":"https://api.github.com/users/numairmansur/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/numairmansur/subscriptions","organizations_url":"https://api.github.com/users/numairmansur/orgs","repos_url":"https://api.github.com/users/numairmansur/repos","events_url":"https://api.github.com/users/numairmansur/events{/privacy}","received_events_url":"https://api.github.com/users/numairmansur/received_events","type":"User","site_admin":false},"assignees":[{"login":"numairmansur","id":4897599,"avatar_url":"https://avatars2.githubusercontent.com/u/4897599?v=3","gravatar_id":"","url":"https://api.github.com/users/numairmansur","html_url":"https://github.com/numairmansur","followers_url":"https://api.github.com/users/numairmansur/followers","following_url":"https://api.github.com/users/numairmansur/following{/other_user}","gists_url":"https://api.github.com/users/numairmansur/gists{/gist_id}","starred_url":"https://api.github.com/users/numairmansur/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/numairmansur/subscriptions","organizations_url":"https://api.github.com/users/numairmansur/orgs","repos_url":"https://api.github.com/users/numairmansur/repos","events_url":"https://api.github.com/users/numairmansur/events{/privacy}","received_events_url":"https://api.github.com/users/numairmansur/received_events","type":"User","site_admin":false}],"milestone":null,"comments":30,"created_at":"2017-05-17T11:07:23Z","updated_at":"2017-06-18T15:01:13Z","closed_at":null,"body":"Consider the following program:\r\n```\r\nprocedure foo()\r\n{\r\n  var y: int;\r\n  var x: int; \r\n  var z: int; \r\n  x := 1;\r\n  y := 2;\r\n  z := 3;\r\n  havoc z;\r\n  assert(z > 10);\r\n}\r\n\r\n```\r\nWith the following error trace.\r\n` \"x := 1;\",  \"y := 2;\", \"z := 3;\" , \"havoc z;\" , \"assume !(z > 10);\" `\r\n\r\nBelow i show the error trace with it's weakest precondition list.\r\n```\r\nfalse             false               false               false             (z > 10)                       false\r\n        \"x := 1;\"         \"y := 2;\"          \"z := 3;\"           \"havoc z;\"             \"assume !(z > 10);\" \r\n\r\n```\r\n\r\n**Output on Ultimate**\r\n```\r\n[L9]         -  x := 1;\r\n       VAL      [x=1]\r\n[L10]        -  y := 2;\r\n       VAL      [x=1, y=2]\r\n[L11]        -  z := 3;\r\n       VAL      [x=1, y=2, z=3]\r\n[L12]        @  havoc z;\r\n       VAL      [x=1, y=2]\r\n[L13]        -  assert z > 10;\r\n       VAL      [x=1, y=2, z=0]\r\n```"},"comment":{"url":"https://api.github.com/repos/numairmansur/Error-Localization/issues/comments/309282739","html_url":"https://github.com/numairmansur/Error-Localization/issues/10#issuecomment-309282739","issue_url":"https://api.github.com/repos/numairmansur/Error-Localization/issues/10","id":309282739,"user":{"login":"schillic","id":9656686,"avatar_url":"https://avatars1.githubusercontent.com/u/9656686?v=3","gravatar_id":"","url":"https://api.github.com/users/schillic","html_url":"https://github.com/schillic","followers_url":"https://api.github.com/users/schillic/followers","following_url":"https://api.github.com/users/schillic/following{/other_user}","gists_url":"https://api.github.com/users/schillic/gists{/gist_id}","starred_url":"https://api.github.com/users/schillic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schillic/subscriptions","organizations_url":"https://api.github.com/users/schillic/orgs","repos_url":"https://api.github.com/users/schillic/repos","events_url":"https://api.github.com/users/schillic/events{/privacy}","received_events_url":"https://api.github.com/users/schillic/received_events","type":"User","site_admin":false},"created_at":"2017-06-18T15:01:13Z","updated_at":"2017-06-18T15:01:13Z","body":"And a generalization that also works for the havoc case:\r\n\r\nLet pi = \"st_1, ..., st_n\" be an error trace of length n where st_i is an assignment statement or a havoc statement that assigns a new value to variable x.\r\n\r\nThe statement at position i is relevant if there is an execution s_1, ..., s_n+1 of pi and some value v such that every execution of the trace \"x := v, st_i+1, ..., st_n\" starting in s_i is blocking. "}}
{"actor":{"display_login":"schillic"}}