def Prob(myBP):
if type(myBP) == sage.rings.integer.Integer:
if myBP%2 == 0:
return QQ(0)
else:
return QQ(1)
BPR = myBP.parent()
mystr=str(myBP.variables())
newstr=""
for l in mystr:
if l.isupper():
newstr=newstr+"1"
else:
newstr=newstr+"0"
NewGens=""
for ii in range(len(mystr)):
if newstr[ii] == "1":
NewGens=NewGens+mystr[ii].lower()
else:
NewGens=NewGens+mystr[ii].upper()
NewGens = NewGens[1:len(NewGens) - 1]
if len(myBP.variables()) == 1:
NewGens = NewGens.replace(',','')
NewGens.replace(', ',',')
ProbRing = PolynomialRing(QQ,len(myBP.variables()),NewGens,order='invlex')
ProbRing.inject_variables()
return ProbRecurse(myBP,BPR,ProbRing)