Pontos sensíveis ao contexto no final das fórmulas

Pontos sensíveis ao contexto no final das fórmulas

amsmathdefine \dotso que faz uma antecipação e usa pontos diferentes (centralizados verticalmente ou não, basicamente) dependendo do próximo token. VerComo os pontos mágicos funcionam no amsmath?

Porém, por causa disso (pelo menos é o meu entendimento), não funciona quando os pontos estãono finalda fórmula:

\documentclass{article}
\usepackage{amsmath}
\begin{document}

\[ x + \dots + x + \dots \]

\end{document}

mwe.jpg

Agora, não é grande coisa quando uso +porque posso usar diretamente \dotsb. No entanto, comandos personalizados também podem ser "reconhecedores de pontos":

\documentclass{article}
\usepackage{amsmath}
\begin{document}

\newcommand*\myop{\DOTSB\rightarrow}

\[ x \myop \dots \myop x \myop \dots \]

\end{document}

Neste caso eu gostaria que o último \dotsse ajustasse automaticamente dependendo da definição de \myop. Como isso pode ser feito?

Não espero necessariamente \dots"lembrar" o que aconteceu antes (embora fosse bom), seria bom dar algum tipo de dica repetindo o operador após os pontos:

\[ x \myop \dots \myop x \myop \dots \hint\myop \]

EDITAR: ou melhor ainda:

\[ x \myop \dots \myop x \myop \dotsfor{\myop} \]

Talvez uma macro antecipada olhando para o primeiro token de seu argumento pudesse ser usada? Embora não fosse apenas uma antecipação, o resto do argumento deveria ser descartado.

Responder1

isso não parece ser explicado em nenhuma documentação disponível, mas há éuma explicação ema alegria do tex(o manual do ams-tex), onde as variações de pontos foram definidas pela primeira vez. da página 156:

Assim, quando você usa \dotso modo matemático, o tipo específico de pontos a serem digitados é determinado pelo estilo e pelo próximo símbolo na fórmula. Infelizmente, há uma situação em que este esquema falha, nomeadamente quando há não équalquer próximo símbolo. Se você digitar [exemplos exibidos \dotsno final de uma fórmula], \dotsnão se pode esperar que saiba quais tipos de pontos você deseja - ele só pode olhar para frente e não tem como saber qual símbolo foi digitado antes dele - e \dotssimplesmente escolhe \dotso em todos esses casos. Portanto, quando uma fórmula termina com pontos, a coisa certa a fazer é informar ao AMS-TeX que tipo de pontos ele deve usar.

na época em que o ams-tex foi criado, esse problema foi pensado com cuidado e os casos extremos eram imprevisíveis demais para serem considerados.

acho que a abordagem de duas macros é sua melhor opção: \myope \myopdots(ou outro nome, possivelmente mais curto, para o segundo); fácil de encontrar em seu arquivo se você precisar alterar.

editar:conforme apontado por @Zarko em um comentário, \dotsm(para "pontos de multiplicação") seria apropriado, assim como \dotsb("pontos com operadores/relações binárias"). ambos resolvem \cdots.

informação relacionada