sbi/simulators/linear_gaussian.py
Killed 20 out of 25 mutantsSurvived
Survived mutation testing. These mutants show holes in your test suite.Mutant 303
--- sbi/simulators/linear_gaussian.py
+++ sbi/simulators/linear_gaussian.py
@@ -10,7 +10,7 @@
from torch.distributions import Independent, MultivariateNormal, Uniform
-def diagonal_linear_gaussian(theta: Tensor, std=1.0) -> Tensor:
+def diagonal_linear_gaussian(theta: Tensor, std=2.0) -> Tensor:
"""
Returns samples drawn from Gaussian likelihood with diagonal covariance.
Mutant 304
--- sbi/simulators/linear_gaussian.py
+++ sbi/simulators/linear_gaussian.py
@@ -21,7 +21,7 @@
Returns: Simulated data.
"""
- return theta + std * torch.randn_like(theta)
+ return theta - std * torch.randn_like(theta)
def linear_gaussian(
Mutant 305
--- sbi/simulators/linear_gaussian.py
+++ sbi/simulators/linear_gaussian.py
@@ -21,7 +21,7 @@
Returns: Simulated data.
"""
- return theta + std * torch.randn_like(theta)
+ return theta + std / torch.randn_like(theta)
def linear_gaussian(
Mutant 310
--- sbi/simulators/linear_gaussian.py
+++ sbi/simulators/linear_gaussian.py
@@ -54,7 +54,7 @@
chol_factor = torch.cholesky(likelihood_cov)
- return likelihood_shift + theta + torch.mm(chol_factor, torch.randn_like(theta).T).T
+ return likelihood_shift + theta - torch.mm(chol_factor, torch.randn_like(theta).T).T
def true_posterior_linear_gaussian_mvn_prior(
Mutant 326
--- sbi/simulators/linear_gaussian.py
+++ sbi/simulators/linear_gaussian.py
@@ -208,7 +208,7 @@
inv_s1s2 = torch.inverse(s1 + s2)
# posterior mean = s2 * inv_s1pluss2 * mu1 + s1 * inv_s1pluss2 * mu2
- product_mean = torch.mv(torch.mm(s2, inv_s1s2), mu1) + torch.mv(
+ product_mean = torch.mv(torch.mm(s2, inv_s1s2), mu1) - torch.mv(
torch.mm(s1, inv_s1s2), mu2
)