{"action":"opened","issue":{"url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/202","repository_url":"https://api.github.com/repos/JuliaOpt/Optim.jl","labels_url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/202/labels{/name}","comments_url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/202/comments","events_url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/202/events","html_url":"https://github.com/JuliaOpt/Optim.jl/issues/202","id":156056637,"number":202,"title":"More Preconditioning","user":{"login":"cortner","id":7688515,"avatar_url":"https://avatars.githubusercontent.com/u/7688515?v=3","gravatar_id":"","url":"https://api.github.com/users/cortner","html_url":"https://github.com/cortner","followers_url":"https://api.github.com/users/cortner/followers","following_url":"https://api.github.com/users/cortner/following{/other_user}","gists_url":"https://api.github.com/users/cortner/gists{/gist_id}","starred_url":"https://api.github.com/users/cortner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cortner/subscriptions","organizations_url":"https://api.github.com/users/cortner/orgs","repos_url":"https://api.github.com/users/cortner/repos","events_url":"https://api.github.com/users/cortner/events{/privacy}","received_events_url":"https://api.github.com/users/cortner/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-05-20T21:43:12Z","updated_at":"2016-05-20T21:43:12Z","closed_at":null,"body":"@pkofod : This follows on from #188 \r\n\r\nI promised to report back here when there is some sort of consensus what happens with preconditioning in iterative linear algebra. In the end the outcome is very simple: Any potential preconditioner type must overload \r\n```\r\n   Base.A_ldiv_B!  \r\n   Base.A_mul_B!\r\n```\r\nor alternatively,\r\n```\r\n  Base.\\\r\n  Base.*\r\n```\r\n\r\n`Base.A_ldiv_B! ` would replace `precondfwd!`. Further, I would remove specialised implementations for inner products and simply use `vecdot` applied to preconditioned vectors. \r\n\r\nIf there is no resistance, then I can make the modifications."}}
{"actor":{"display_login":"cortner"}}