{"action":"created","issue":{"url":"https://api.github.com/repos/fplll/fplll/issues/349","repository_url":"https://api.github.com/repos/fplll/fplll","labels_url":"https://api.github.com/repos/fplll/fplll/issues/349/labels{/name}","comments_url":"https://api.github.com/repos/fplll/fplll/issues/349/comments","events_url":"https://api.github.com/repos/fplll/fplll/issues/349/events","html_url":"https://github.com/fplll/fplll/pull/349","id":295083249,"number":349,"title":"Possibly resolved the Gram bug","user":{"login":"kodebro","id":23637627,"avatar_url":"https://avatars0.githubusercontent.com/u/23637627?v=4","gravatar_id":"","url":"https://api.github.com/users/kodebro","html_url":"https://github.com/kodebro","followers_url":"https://api.github.com/users/kodebro/followers","following_url":"https://api.github.com/users/kodebro/following{/other_user}","gists_url":"https://api.github.com/users/kodebro/gists{/gist_id}","starred_url":"https://api.github.com/users/kodebro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kodebro/subscriptions","organizations_url":"https://api.github.com/users/kodebro/orgs","repos_url":"https://api.github.com/users/kodebro/repos","events_url":"https://api.github.com/users/kodebro/events{/privacy}","received_events_url":"https://api.github.com/users/kodebro/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-02-07T10:27:08Z","updated_at":"2018-02-08T14:23:25Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/fplll/fplll/pulls/349","html_url":"https://github.com/fplll/fplll/pull/349","diff_url":"https://github.com/fplll/fplll/pull/349.diff","patch_url":"https://github.com/fplll/fplll/pull/349.patch"},"body":"Resolved the Gram-matrix bug by replacing `n_known_rows` in the Gram-operations by the full dimension `d`. \r\n\r\nThis makes sense, because only a partial operation [up tp `n_known_rows`] on the Gram-matrix is not consistent and causes irregularities. In larger dimensions, this cause distortion of the positive-definiteness, causing severe errors during LLL-reduction.\r\n\r\nThis particular code also occurs in gso.cpp. We could also replace `n_known_rows` by `d` there. Is there a reason that it is `n_known_rows`? **Edit: yes. If `enable_int_gram` the exact Gram matrix is stored, but only up to `n_known_rows`, therefore that this code should stay in gso.cpp.**"},"comment":{"url":"https://api.github.com/repos/fplll/fplll/issues/comments/364126314","html_url":"https://github.com/fplll/fplll/pull/349#issuecomment-364126314","issue_url":"https://api.github.com/repos/fplll/fplll/issues/349","id":364126314,"user":{"login":"kodebro","id":23637627,"avatar_url":"https://avatars0.githubusercontent.com/u/23637627?v=4","gravatar_id":"","url":"https://api.github.com/users/kodebro","html_url":"https://github.com/kodebro","followers_url":"https://api.github.com/users/kodebro/followers","following_url":"https://api.github.com/users/kodebro/following{/other_user}","gists_url":"https://api.github.com/users/kodebro/gists{/gist_id}","starred_url":"https://api.github.com/users/kodebro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kodebro/subscriptions","organizations_url":"https://api.github.com/users/kodebro/orgs","repos_url":"https://api.github.com/users/kodebro/repos","events_url":"https://api.github.com/users/kodebro/events{/privacy}","received_events_url":"https://api.github.com/users/kodebro/received_events","type":"User","site_admin":false},"created_at":"2018-02-08T14:23:25Z","updated_at":"2018-02-08T14:23:25Z","author_association":"CONTRIBUTOR","body":"@malb `n_known_rows` is the number of rows that the GSO-module was able to gram-schmidt reduce; we saw examples of matrices with big coefficients where gram-schmidt stopped after a few rows [say, row 10 out of 100]. Then d = 100, but n_known_rows = 10. \r\nIn  small examples, the gram-schmidt succeeds up to the dimension `d`, so that `d` equals `n_known_rows`. Then the old code succeeds, because those two variables are equal.\r\nIn the case where we got `n_known_rows` < `d`, [so the gram-schmidt stopped somewhere], we got errors, because the Grammatrix was only partially modified."}}
{"actor":{"display_login":"kodebro"}}