Problem: with some types of initialization, we get different smoothed_state_cov from statsmodel's results.
Statsmodels has 4 types of Kalman smoothers, each working slighly differently. It appeared that the issue is with the matrix inversion operation, but rounding up input matrices didn't help all too much (I could reproduce the issue with filterpy library).
None of 4 Kalman smoothers work exactly like the one used in simdkalman. There's also a python implementation of kalman smoother in here https://github.com/statsmodels/statsmodels/blob/v0.11.1/statsmodels/tsa/statespace/_pykalman_smoother.py
but it yields different results as well (it uses precomputed predicted state).
Need to continue investigating...
https://github.com/statsmodels/statsmodels/blob/v0.11.1/statsmodels/tsa/statespace/kalman_smoother.py
https://github.com/statsmodels/statsmodels/blob/v0.11.1/statsmodels/tsa/statespace/_smoothers/_alternative.pyx.in
https://github.com/statsmodels/statsmodels/blob/v0.11.1/statsmodels/tsa/statespace/_smoothers/_classical.pyx.in