We have implemented a similarity search with `pg_trgm` in a PostgreSQL 13 database using a gist index with `searchable_column`. The table and index have the following setup:

```sql
CREATE TABLE things (
    id uuid PRIMARY KEY,
    searchable_column text
);

CREATE INDEX search_index ON things
USING GIST (searchable_column gist_trgm_ops);
```

This setup is very fast event with large record sets using queries like:

```sql
SELECT *
FROM things
WHERE searchable_column %> 'search term'
ORDER BY searchable_column <->> 'search term'
```

However, as there are a lot of rows in the table, pagination is necessary. Furthermore, pagination needs a deterministic ordering for the records. This is a problem as if there are a lot of records with the same word similarity score, sorting can take a very long time when using queries like:

```sql
SELECT *
FROM things
WHERE searchable_column %> 'search term'
ORDER BY searchable_column <->> 'search term', id
```

We tried to fix this by using a `btree_gist` but it does not work if the `btree` part is after the `gist` part:

```sql
CREATE INDEX search_index ON things
USING GIST (searchable_column gist_trgm_ops, id);
```

Is there a way to make sorting fast in this query or another way to make the ordering deterministic?