techniques for logical analysis