less memory used in inverse() [less_memory_inverse]