With binary outcome, treatment and instrument every unit belongs to one of sixteen response types: how its treatment responds to the instrument, crossed with how its outcome responds to treatment. The eight observed conditional probabilities are linear in the type shares, and the ATE is linear in them too, so the sharp bounds are the optimum of a linear program over the simplex. Monotonicity is NOT imposed: defiers keep their own share, and the program is what makes the bounds sharp rather than merely valid.
Details
Formula: min / max sum q_jk [y_k(1) - y_k(0)] subject to
\(sum over types consistent with (a, b, z) of q = P(y = a, D = b |
Z = z)\) for all a, b, z, and q >= 0.
References
Balke, A. and Pearl, J. (1997). Bounds on treatment effects from studies with imperfect compliance. Journal of the American Statistical Association 92(439), 1171-1176. doi:10.1080/01621459.1997.10474074 . The response-type parameterisation used here is the one described in Molinari, F. (2021), Handbook of Econometrics 7A (arXiv:2004.11751 p. 19 and note 10).
Examples
set.seed(1)
Bndlpm(y = rbinom(40, 1, 0.5), D = rbinom(40, 1, 0.5), Z = rbinom(40, 1, 0.5))
#> $lower
#> [1] -0.3636364
#>
#> $upper
#> [1] 0.3888889
#>
#> $width
#> [1] 0.7525253
#>
#> $estimate
#> [1] 0.01262626
#>
#> $feasible
#> [1] 1
#>
#> $n_constraints
#> [1] 8
#>
#> $n
#> [1] 40
#>
#> $method
#> [1] "Linear programming method for bounds"
#>
#> attr(,"class")
#> [1] "morie_rich_result" "list"
