For object-oriented databases we propose a new technique for optimizing queries containing method invocations. This technique is based on the definition of inverse methods and query rewriting. It can be viewed as providing computed inverted access structures like (secondary) indexes provide stored inverted access structures. This technique can be applied to methods which can be fully specified as functions and to the usual comparison operations in queries. We introduce an extension to ODMG-93 [1] to define inverse methods and present the optimization algorithm for homogeneous as well as for heterogeneous collections. The application of this technique can reduce the cost of query-evaluation by orders of magnitude.