Unnest () e ordem de classificação paralelas no PostgreSQL

Eu entendo que usando

SELECT unnest(ARRAY[5,3,9]) as id

sem umORDER BY , a ordem do conjunto de resultados não é garantida. Eu poderia, por exemplo, obter:

id
--
3
5
9

Mas e a seguinte solicitação:

SELECT
  unnest(ARRAY[5,3,9]) as id,
  unnest(ARRAY(select generate_series(1, array_length(ARRAY[5,3,9], 1)))) as idx
ORDER BY idx ASC

É garantido que os 2unnest() chamadas (que têm o mesmo tamanho) se desenrolam em paralelo e que o índiceidx de fato corresponderá à posição do item na matriz?

Estou usando o PostgreSQL 9.3.3.

questionAnswers(2)

yourAnswerToTheQuestion