let bitwise_op_positive_big_int op x y =
assert (ge_big_int x zero_big_int);
assert (ge_big_int y zero_big_int);
let g =
let f u v = assert(is_int_big_int u) ;
assert(is_int_big_int v) ;
let r = op (int_of_big_int u) (int_of_big_int v)
in big_int_of_int (r)
in map2_base base16bits f
in let r = map2_base base g x y
in assert (ge_big_int r zero_big_int);
r