7

Here is a screenshot of my document:

enter image description here

On the second line, there is an instance of "CNF." which totally looks like "CNE" to me (because the dot takes the place of the serif on the feet of an E).

I'm using the charter package and font. What should I do to bring the period a little bit further from the F?

MWE:

\documentclass[12pt]{article}
\usepackage{fullpage}
\usepackage{charter}
\usepackage[charter]{mathdesign}

\begin{document}
\noindent
This clausification follows from a straightforward conversion of the formula $(s \leftrightarrow x \oplus y \oplus c_{in}) \land (c_{out} \leftrightarrow ((x \oplus y) \land c_{in}) \lor (x \land y))$ to CNF. We see that we need $32$ extra variables and $32 \times 14 = 448$ clauses to encode a $32$-bit adder circuit using this method. This is almost certainly better than the circuit encoding, which requires both more variables and more clauses.
\end{document}

Edit: About the formula, I know...

Vegard
  • 2,651

1 Answers1

3

This appears to be a problem with the mathdesign package. If you re-load the Charter font after mathdesign has already loaded the kerning will be correct:

\documentclass[12pt]{article}
\usepackage{fullpage}
\usepackage[charter]{mathdesign}
\usepackage{charter}

\begin{document}
\noindent
This clausification follows from a straightforward conversion of the formula $(s \leftrightarrow x \oplus y \oplus c_{in}) \land (c_{out} \leftrightarrow ((x \oplus y) \land c_{in}) \lor (x \land y))$ to CNF. We see that we need $32$ extra variables and $32 \times 14 = 448$ clauses to encode a $32$-bit adder circuit using this method. This is almost certainly better than the circuit encoding, which requires both more variables and more clauses.
\end{document}

(Looking at the mathdesign documentation, I think that in a perfect world you would only need to include \usepackage[charter]{mathdesign} to get all the fonts loaded correctly. I assume that mathdesign is just making some small mistake in its handling of Charter, and that you can undo this mistake by re-loading the Charter package afterwards.)

DGrady
  • 532
  • It works here, but I notice that the text is generally broken differently. So is the problem truly fixed by this, or is it just fixed because something else changed the line breaking and released some of the "pressure" on the F and the . to go close together? – Vegard Oct 31 '12 at 19:06
  • @Vegard It looks to me that the only reason the text is broken differently in your example is that there is now slightly more space between the F and . I do not think the space between these two characters has much stretch, because you can try changing it to to extra space CNF., for example, and the kerning problem remains, unless you switch the package load order. – DGrady Oct 31 '12 at 19:11