индекс изменяется при изменении столбца. Вычисляемый столбец может содержать сколь-угодно сложную конструкцию, включая select из другой таблицы. Как отслеживать изменение вычисляемого столбца в этом случае?
Я уже два раза писал сюда что в индекс по выражению тоже можно впихнуть подзапрос и что оно компилится и потом не работает, так что никаких принципиальных отличий не вижу. Не уверен что это починили.
может я ортодокс, но использующих execute statement более одного раза я автоматически зачисляю в ...
Вот! Поэтому я и говорю про курсорные переменные. Никакого EXECUTE STATEMENT.

