#28878: WTF-PAD: Improve deterministic randomness in tests
-------------------------------------------------+-------------------------
 Reporter:  asn                                  |          Owner:  (none)
     Type:  defect                               |         Status:  new
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  unspecified
Component:  Core Tor/Tor                         |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  wtf-pad, tor-relay, tor-cell,        |  Actual Points:
  padding, tor-tests                             |
Parent ID:  #28637                               |         Points:
 Reviewer:                                       |        Sponsor:
-------------------------------------------------+-------------------------

Comment (by asn):

 {{{
 < Riastradh> asn: How to increment a counter in a machine-independent way:
 unsigned i, t = 1; for (i = 0; i < arraycount(ctr); i++) { t = ctr[i] + 1;
 ctr[i] = t
              & 0xff; t >>= 8; }
 < Riastradh> (You can assert(t == 0) at the end, but there's really no
 need if arraycount(ctr) >= 8 and ctr starts at zero.)
 < Riastradh> asn: Tiny nit in the comments: change `set the expected log-
 probability' to `set the log-probability of the null hypothesis' or `set
 logP to the
              logarithm of the expected frequency under the null
 hypothesis'.
 < Riastradh> asn: In particular, log E[X] generally not E[log X].  E.g.,
 if P(0) = 1/2, P(1) = 1/4, P(2) = P(3) = 1/8, then log E[P(x)] = log 11/32
 ~= -1.07, but
              E[log P(x)] ~= -1.21.
 < Riastradh> asn: How to paint a 32-bike shed:  for (i = 0; i < 32; i++) {
 paintf("%02x", shed[i]); }
 < Riastradh> asn: Correction to my off-the-cuff IRC code: not { t = ctr[i]
 + 1; ...} but { t = ctr[i] + t; ... }, or just { t += ctr[i]; ... }.
 }}}

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28878#comment:2>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs

Reply via email to