Skip to content
This repository was archived by the owner on Feb 9, 2025. It is now read-only.

Further questions about left/right-multiply in issue #14 #15

Closed
longlongman opened this issue Jan 31, 2023 · 4 comments
Closed

Further questions about left/right-multiply in issue #14 #15

longlongman opened this issue Jan 31, 2023 · 4 comments

Comments

@longlongman
Copy link

Thanks for your quick reply #14 (comment).

It is still confusing to me. I also take the column vectors as the base vectors. In this case, R E is more intuitive to me (we first get E around I and transform it with R ).

Moreover, E R = ( E R E 1 ) E IG S O ( 3 ) ( E R E 1 , σ 2 ) , it seems that R E and E R do different things, because E R E 1 = R is not always true.

@luost26
Copy link
Owner

luost26 commented Jan 31, 2023

E R = ( E R E 1 ) E IG S O ( 3 ) ( E R E 1 , σ 2 ) is not correct.

Let's assume left-multiply applies. E R I G ( R , σ 2 ) is a shorthand for another random variable Y I G ( R , σ 2 ) , where Y = E R and E I G ( I , σ 2 ) .

Given E I G ( I , σ 2 ) , the distribution of Z = E R E 1 E = E R is still I G ( R , σ 2 ) .

@longlongman
Copy link
Author

Because E R R E ( R E ) T , I am not sure whether it is safe to say Z = E R IG ( R , σ 2 ) when we only know Y = R E IG ( R , σ 2 ) .

Moreover, if Z = E R = E R E 1 E IG ( R , σ 2 ) holds, then how can we sample a random value from IG ( E R E 1 , σ 2 ) .

@luost26
Copy link
Owner

luost26 commented Jan 31, 2023

Thank you for your time. I've checked the code and found R is a column-vector rotation matrix (so R E applies instead of E R where R is row-vector rot. mat.). I think R E is correct and it is a mistake in the code.
Though numerically this leads to minor biases, I do think fixing it might improve the performance.

@longlongman
Copy link
Author

Thank you for the great open-source project. I have learned a lot from your code.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants