search_inference implements `factor`

as follows:

```
def factor(name, value):
"""
Like factor in webPPL, adds a scalar weight to the log-probability of the trace
"""
value = value if torch.is_tensor(value) else torch.tensor(value)
d = dist.Bernoulli(logits=value)
pyro.sample(name, d, obs=torch.ones(value.size()))
```

An example use is demonstrated in RSA implicature definition of `literal_listener`

.

I can’t understand how does sampling with `obs`

conditions the model in the given context.