functor (O : Oracle.S) -> S