Arraste os pontos. O fecho é recalculado com o predicado exato, e a saída sai no formato do paper: menor índice primeiro, anti-horário, ciclo fechado. Repare no que muda e no que não muda — mexer num ponto interior não muda a saída, e trocar dois rótulos muda a saída sem mexer na geometria.
Aqui o ponto P1 é posto sobre a reta P3–P2, a uma distância controlada. O predicado exato decide em aritmética inteira de precisão arbitrária; o predicado em double decide com o determinante calculado em ponto flutuante. Desça a distância e veja onde os dois deixam de concordar.
O artigo mede isto em duas colunas, e não numa: a expressão do determinante pode ser fundida pelo compilador num fma, e a versão fundida erra menos. Aqui só a separada aparece — o JavaScript não funde, e prometer as duas seria prometer o que este arquivo não faz.
O botão embaralha os rótulos sem mexer nos pontos. A geometria não muda; a saída, às vezes, muda. Os três contadores sobem até parar em 720, 90 e 1 — e o quociente das duas primeiras é 2h.
A camada de vocabulário fixo custa V(d+1); a cabeça de ponteiro, d(2d+1). O ponteiro só é mais barato quando V ≥ 2d. E à direita, o zero estrutural: a chance de o fecho de n pontos caber nos V primeiros índices, calculada em inteiros grandes.