Ulrich Dirr <[log in to unmask]> writes: > I've looked into TeX.web where I found the following definitions: > in := set_conversion(7227)(100) > pc := set_conversion(12)(1) > cm := set_conversion(7227)(254) > mm := set_conversion(7227)(2540) > bp := set_conversion(7227)(7200) > dd := set_conversion(1238)(1157) > cc := set_conversion(14856)(1157) > > On occasion I need to trace TeX's page building via \tracingpages=2. > Assume you have a \textheight of 39 \baselineskip + \topskip, and one > \baselineskip is 13bp. Then \textheight is 507bp+10pt. No, it isn't. Disregarding the topskip (which has an exact representation): \dimen0=13bp \dimen0=39\dimen0 \showthe\dimen0 \dimen0=507bp \showthe\dimen0 This is TeXk, Version 3.141592 (Web2C 7.5.2) %&-line parsing enabled. (/usr/local/TeX/texmf/web2c/cp8bit.tcx) ** * *> 508.90073pt. <*> \showthe\dimen0 ? * *> 508.90125pt. <*> \showthe\dimen0 ? ! Emergency stop. <*> \showthe\dimen0 No pages of output. Transcript written on texput.log. > Maybe someone could explain this behavior to me? 507bp is calculated as 507*7227/7200, which is different from 39*(13*7227/7200), since we are talking about arithmetic without associative law. This is common in floating point arithmetic, and it is of course also relevant in TeX's fixed point arithmetic. Since units are implemented as scaling ratios rather than fixed values, you get the results you experience. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum