Skip to contents

Warner mechanism is exactly the randomised response giving local differential privacy, with flip probability 1/(1 + e^eps). Reading it that way makes the budget explicit: a small epsilon means a flip probability near one half, so the variance grows as the guarantee tightens.

Usage

Rrand(bit, epsilon = 1)

Arguments

bit

True bits.

epsilon

Privacy budget.

Value

List with estimate, released, q, raw_rate, true_rate, n.

Details

Determinism: flips come from the shared Lehmer minstd stream.

Formula: release b unchanged with probability e^eps/(1 + e^eps); debiased rate (mean(released) - q)/(1 - 2q).

References

Warner, S. L. (1965). JASA 60:63-69; Dwork & Roth (2014), Found Trends Theor Comput Sci 9:211-407, section 3.2.

Examples

V <- c(1, 2, 3, 4, 5, 6, 7, 8)
Rrand(V)
#> $estimate
#> [1] 5.098401
#> 
#> $released
#> [1]  0 -1  3  4  5 -5  7  8
#> 
#> $q
#> [1] 0.2689414
#> 
#> $raw_rate
#> [1] 2.625
#> 
#> $true_rate
#> [1] 4.5
#> 
#> $n
#> [1] 8
#> 
#> $method
#> [1] "Randomized response under local differential privacy"
#> 
#> attr(,"class")
#> [1] "morie_rich_result" "list"