Subject:  Re C++, Linet study probabilities......
Date:     Sun, 14 Jun 1998 003316 -0500 (CDT)
From:     "Roy L. Beavers" <rbeavers@llion.org>
To:       emfguru@hotmail.com
--------------------------------------------------


---------- Forwarded message ----------
Date: Sun, 14 Jun 1998 05:10:00 +0200
From: Christoph Reuss 
To: "Roy L. Beavers" 
Cc: Edward Maxey 
Subject: Re:  C++ "Linet" study probabilities......

Edward Maxey wrote:
> Several months ago results from a BASIC study showing that the
> probability of 60 Hz EMFs being causal to childhood leukemia (the Linet
> study) was 200,000  to one.  Recently questions have come up about the
> integrity of the random number function in MICROSOFT's BASIC.
> Accordingly the program was written in C++ using the "rand" function.
> This function "uses a multiplicative congruential random number generator"
> with a period of  2^32.  It is available on UNIX and is defined in ANSI C.
[snip]
>      ***This run showed a 5,408 to one probability that EMFs are causal
>         to childhood acute lymphoblastic leukemia.***

Computation Theory tells us that no discrete algorithm run on a  finite
state machine (without external true random sources) can provide _true_
random numbers, but only pseudo-random numbers  (whether in BASIC or in
C++).  And even if the numbers produced by the BASIC or C++ 'random'-
generator were truly random, one instance (one 'run') of your program
would only provide one possible outcome of the random experiment, and to
calculate the true probability would require an infinite number of runs.
Thus, these programs can only provide approximations of the true probability.

That's why we prefer theoretical calculation in simple statistical problems
such as your "heads and baskets" example:
The probability of 267 or less heads appearing after a basket of 624 coins
was overturned  is:

      P [H<=267]  =  1/2^624  *  SUM(k=0..267) ( 624! / (624-k)! / k! )
                  =  0.0001795451715
                  =  1 / 5569.629033

Thus, the actual odds are 5,570 to one.  Your C++ program came pretty close
with 5,408. :-)

But the problem with epidemiological studies like the Linet study is  not
to calculate probabilities according to known simple statistical models, but
to find those complex statistical models that 'model' (fit) the even more
complex reality best.  (And to model this reality ***correctly***, not
misleadingly like the Linet study did !!).  In other words, the problem
is not to find the correct mapping "model-->result" (that's easy), but
to find the correct mapping "reality-->model".  No BASIC and no C++ program
can do this for us either...

Cheerio,
Chris


___________________________________________________________________________
"The history of cancer research has been a history of curing [?? causing!!]
cancer in the mouse.  We have cured mice of cancer for decades -- and it
simply didn't work in humans." -- Dr. Richard Klausner, NCI director (1998)





Archive provided courtesy of WaveGuide, http://www.wave-guide.org
Reprinted with permission of Roy Beavers, http://www.feb.se/EMF-L/EMF-L.html