Interesting Esoterica

Branch Cuts for Complex Elementary Functions (or: Much Ado About Nothing's Sign Bit)

Article by W. Kahan
  • Published in 2011
  • Added on
Zero has a usable sign bit on some computers, but not on others. This accident of computer arithmetic influences the definition and use of familiar complex elementary functions like \(\sqrt\), arctan and arccosh whose domains are the whole complex plane with a slit or two drawn in it. The Principal Values of those functions are defined in terms of the logarithm function from which they inherit discontinuities across the slit(s). These discontinuities are crucial for applications to conformal maps with corners. The behaviour of those functions on their slits can be read off immediately from defining Principal Expressions introduced in this paper for use by analysts. Also introduced herein are programs that implement the functions fairly accurately despite roundoff and other numerical exigencies. Except at logarithmic branch points, those functions can all be continuous up to and onto their boundary slits when zero has a sign that behaves as specified by IEEE standards for floating-point arithmetic; but those functions must be discontinuous on one side of each slit when zero is unsigned. Thus does the sign of zero lay down a trail from computer hardware through programming language compilers, run-time support libraries and applications programmers to, finally, mathematical analysts.

Links

Other information

key
BranchCutsforComplexElementaryFunctionsorMuchAdoAboutNothingsSignBit
type
article
date_added
2026-03-14
date_published
2011-03-14

BibTeX entry

@article{BranchCutsforComplexElementaryFunctionsorMuchAdoAboutNothingsSignBit,
	key = {BranchCutsforComplexElementaryFunctionsorMuchAdoAboutNothingsSignBit},
	type = {article},
	title = {Branch Cuts for Complex Elementary Functions (or: Much Ado About Nothing's Sign Bit)},
	author = {W. Kahan},
	abstract = {Zero has a usable sign bit on some computers, but not on others. This accident of computer arithmetic influences the definition and use of familiar complex elementary functions like \(\sqrt\), arctan and arccosh whose domains are the whole complex plane with a slit or two drawn in it. The Principal Values of those functions are defined in terms of the logarithm function from which they inherit discontinuities across the slit(s). These discontinuities are crucial for applications to conformal maps with corners. The behaviour of those functions on their slits can be read off immediately from defining Principal Expressions introduced in this paper for use by analysts. Also introduced
herein are programs that implement the functions fairly accurately despite roundoff and other numerical exigencies. Except at logarithmic branch points, those functions can all be continuous up to and onto their boundary slits when zero has a sign that behaves as specified by IEEE standards for floating-point arithmetic; but those functions must be discontinuous on one side of each slit when zero is unsigned. Thus does the sign of zero lay down a trail from computer hardware through programming language compilers, run-time support libraries and applications programmers to, finally, mathematical analysts.},
	comment = {},
	date_added = {2026-03-14},
	date_published = {2011-03-14},
	urls = {https://people.freebsd.org/{\~{}}das/kahan86branch.pdf},
	collections = {attention-grabbing-titles,basically-computer-science},
	url = {https://people.freebsd.org/{\~{}}das/kahan86branch.pdf},
	year = 2011,
	urldate = {2026-03-14}
}