Recebo o erro "número faltante, tratado como zero" sem nenhum motivo que eu possa ver

Recebo o erro "número faltante, tratado como zero" sem nenhum motivo que eu possa ver

O seguinte código de teste

\documentclass[11pt,a4paper]{article}

\begin{document}
\section{Introduction}

[DWP (1981), Heim \& Kratzer (1990)] \\ [[`vi is mortal']]g= 1 iff [[`mortal']] g([[vi]]g) \\ [[`mortal'] ]g([[vi]]g) iff $\lambda$x.mortal(x)(g(vi))

\end{document}

gera esta mensagem de erro:

! Missing number, treated as zero.
<to be read again> 
[
l.6 ... Heim \& Kratzer (1990)] \\ [[`vi is mortal']
                                                  ]g= 1 iff [[`mortal']] g([...

? 

Eu não tenho ideia do porquê. Alguém tem alguma ideia?

Responder1

O problema é causado pelo padrão de entrada \\ [...], que corresponde ao uso de \\[<dimen>]. Por razões históricas, na sintaxe \\[<dimen>], espaços são permitidos (também conhecidos como ignorados) antes de [.

Você pode usar \\\relaxcomo solução alternativa.

\documentclass[11pt,a4paper]{article}

\begin{document}
\section{Introduction}

[DWP (1981), Heim \& Kratzer (1990)] \\\relax
[[`vi is mortal']]g= 1 iff [[`mortal']] g([[vi]]g) \\\relax
[[`mortal'] ]g([[vi]]g) iff $\lambda$x.mortal(x)(g(vi))

\end{document}

PS: você pode precisar de alguns ambientes literais ou pacotes de algoritmos para compor o pseudocódigo.

informação relacionada