code: def coerce(value):
          
          if isinstance(value, BoolCell):
              return value
          elif isinstance(value, Cell):
              raise CellConstructionFailure("Cannot convert %s to BoolCell" % \
                      type(value))
          elif value in [1, T]:
              return BoolCell(T)
          elif value in [0, -1, F]:
              return BoolCell(F)
          elif value in [None, U]:
              return BoolCell(U)
          else:
              raise CoercionFailure("Don't know how to coerce %d to Bool" % \
                      (value))
docs: Coerces a Bool, None, or int into Bit/Propositional form