sbi/simulators/linear_gaussian.py

Killed 21 out of 25 mutants

Survived

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 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
     )