Quote:
	
	
		
			
				cleveland said: 
Here's roughly what I did: 
1) Constructed a vector A(i) of the explicit probabilities for each single drn outcome i.  This is pretty straightforward:  
A(1)=A(2)=...=A(5)=1/6 
A(6)=A(7)=...=A(10)=(1/6)^2 
Etc. 
			
		 | 
	
	
 I think this is already where I fail, because the rest is pretty much the same. I was jumping back and forth between modulo 5 and modulo 6 just because the whole thing is offset by 1 and the gaps didn't work out. Let's correct this now...
Let X-1 = 5a + b, 0 <= b < 5. (notice the -1!!) Then the probability that a DRN gives exactly X is p(DRN = X) = (1/6)^(a+1).
The probability that it is X or greater is:
Now, we have two ways of measuring all the (x,y) in IN x IN which sum is equal to or greater than X: Either we take all the (x,y) with x+y < X and subtract the probability of them showing up simultaneously from 1, thus inverting the set, like you did if I understood right, or measure the following (with a loose mathematical notation): 
Code:
  (1, >= X-1)
  (2, >= X-2)
  (3, >= X-3)
   ... etc.
  (X-1, >= 1)
  (>= X, *)
which should be equal to {(x,y) | x+y >= X}. I implemented both versions in Python again: 
Code:
#!/usr/bin/env python
# p(DRN) >= x
def p_1(x):
	if x < 1:
		return 1
	b = (x-1) % 5
	a = (x-1) / 5
	return (6-b)*pow((float(1)/6), a+1)
# p(DRN) == x
def p_2(x):
	if x < 1:
		return 0
	b = (x-1) % 5
	a = (x-1) / 5
	return pow((float(1)/6), a+1)
# p(2d6oe) >= x
def doubledrn(x):
	M = [(a,b) for a in range(1,x-1) for b in range(1,x-a)]
	s = 0.0
	for (x_1, x_2) in M:
		s += p_2(x_1)*p_2(x_2)
	return 1-s
# p(2d6oe) >= x (alternate version)
def doubledrn_2(x):
	s = p_1(x)
	for y in range(1,x):
		s += p_2(y)*p_1(x-y)
	return s
for x in range(2,20):
	print ">= %2d : %f" % (x, doubledrn(x))
	print ">= %2d : %f" % (x, doubledrn_2(x))
 and huzzah, they both give the same result, and it is: 
Code:
>=  2 : 1.000000
>=  3 : 0.972222
>=  4 : 0.916667
>=  5 : 0.833333
>=  6 : 0.722222
>=  7 : 0.583333
>=  8 : 0.462963
>=  9 : 0.361111
>= 10 : 0.277778
>= 11 : 0.212963
>= 12 : 0.166667
>= 13 : 0.127315
>= 14 : 0.094907
>= 15 : 0.069444
>= 16 : 0.050926
>= 17 : 0.039352
>= 18 : 0.029578
>= 19 : 0.021605
 
 