{"action":"opened","issue":{"url":"https://api.github.com/repos/opencog/opencog/issues/1181","labels_url":"https://api.github.com/repos/opencog/opencog/issues/1181/labels{/name}","comments_url":"https://api.github.com/repos/opencog/opencog/issues/1181/comments","events_url":"https://api.github.com/repos/opencog/opencog/issues/1181/events","html_url":"https://github.com/opencog/opencog/issues/1181","id":53520324,"number":1181,"title":"ExecutionLink should be ExecutionOutputLink in pattern matcher","user":{"login":"ngeiswei","id":819225,"avatar_url":"https://avatars.githubusercontent.com/u/819225?v=3","gravatar_id":"","url":"https://api.github.com/users/ngeiswei","html_url":"https://github.com/ngeiswei","followers_url":"https://api.github.com/users/ngeiswei/followers","following_url":"https://api.github.com/users/ngeiswei/following{/other_user}","gists_url":"https://api.github.com/users/ngeiswei/gists{/gist_id}","starred_url":"https://api.github.com/users/ngeiswei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ngeiswei/subscriptions","organizations_url":"https://api.github.com/users/ngeiswei/orgs","repos_url":"https://api.github.com/users/ngeiswei/repos","events_url":"https://api.github.com/users/ngeiswei/events{/privacy}","received_events_url":"https://api.github.com/users/ngeiswei/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-01-06T14:36:18Z","updated_at":"2015-01-06T14:36:18Z","closed_at":null,"body":"It's not a practical issue, just an inconsistence, but I'd rather fix it now than later before this inconsistence turns into something broken in practice.\r\n\r\nAccording to\r\n\r\nhttp://wiki.opencog.org/w/ExecutionLink\r\nhttp://wiki.opencog.org/w/ExecutionOutputLink\r\n\r\nthe ExecutionLink should be ExecutionOutputLink in the expression passed to the pattern matcher. \r\n\r\nSo for instance\r\n```\r\n    BindLink\r\n        ListLink $A\r\n        ImplicationLink\r\n            $A\r\n            ExecutionLink\r\n                GroundedSchemaNode \"scm: pln-formula-not\"\r\n                ListLink $A\r\n```\r\nshould be\r\n```\r\n    BindLink\r\n        ListLink $A\r\n        ImplicationLink\r\n            $A\r\n            ExecutionOutputLink\r\n                GroundedSchemaNode \"scm: pln-formula-not\"\r\n                ListLink $A\r\n```\r\n\r\nAs you may notice ExecutionLink gets is supposed to point to the output of the function (third argument in the outcoming set), unless it has no output, only side effect. Whereas ExecutionOutputLink denotes the output itself. I think in the case of the pattern matcher, it's really the output of the function that is denoted, so we should use ExecutionOutputLink.\r\n\r\nIf you agree this is right I can operate the change, just let me know we're in agreement.\r\n"}}