Qu'est-ce qu'un index basé sur une expression (Expression Index / Functional Index) dans PostgreSQL ? Quelles sont les charges supplémentaires sur les opérations d'écriture (INSERT/UPDATE) qu'il entraîne et pourquoi le planificateur peut refuser de l'utiliser si les types de données dans l'expression de la requête ne correspondent pas ?