Last Updated Sept 17, 1999.
Errors Contributed by Nelson H. F. Beebe

This file records errata and comments for the book

@String{pub-SV                  = "Spring{\-}er-Ver{\-}lag"}
@String{pub-SV:adr              = "Berlin, Germany~/ Heidelberg,
                                  Germany~/ London, UK~/ etc."}

  author =       "David Salomon",
  title =        "Data Compression: The Complete Reference",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  year =         "1998",
  ISBN =         "0-387-98280-9",
  LCCN =         "QA76.9.D33S25 1997",
  acknowledgement = ack-nhfb,
  pages =        "xx + 427",
  price =        "US\$39.95",
  bibdate =      "Wed Nov 08 16:46:55 1995",

In the following, negative line numbers count from the bottom of the
page. Line numbers exclude figures, tables, shadow boxes, and gray

p. 2, l. 5 in gray box:
	portuguese -> Portuguese

p. 4, l. -1 in shadow box:
	sometimes -> sometime

p. 4, l. 5:
	the their -> their

p. 16, l. 17:
	Thus after ->
	Thus, after

p. 16, l. 18:
	The alphabet is modified ->
	the alphabet is modified

p. 24, l. -12:
	$P_i$ percent ->
	a fraction $P_i$

p. 46, l. -13:
	this guarantees ->
	This guarantees
		[and remove leading indentation.]

p. 62, l. -4:
	(Comit{\'e} ... , or ...) ->
	(Comit\'e Consultatif International T\'el\'egraphique et
	T\'el\'ephonique, or ...)

p. 103, l. 4:
	techinque ->

p. 103, l. 7:
	have developed ->

p. 105, l. 6:
	possibe ->

p. 107, l. -2:
	All modern computers use the ASCII codes ...

		[This is no longer correct.  Windows NT, AT&T Plan 9,
		and Lucent Inferno all use Unicode, a 16-bit character
		set.  Also, there are plenty of IBM (and Amdahl,
		Fujitsu, and Siemens) mainframe computers using

p. 147, l. 2:
	In the UNIX world, {\tt compress} is used virtually
	exclusively to compress data.

		[This statement is now inaccurate.  In the last couple
		of years, this situation has changed significantly,
		and it is likely that Internet archives contain more
		GNU {\tt gzip}ped files than {\tt compress}ed files.
		Two motivations for the change have been a patent
		claim on {\tt compress} [see below], and the superior
		compression and speed of {\tt gzip}.]

p. 147, l. -4:
	as file ->
	as the file

p. 149, l. 1:
	notices ->
	notices a

p. 153, l. 6:
	Shannon-Fano tree ->
	Shannon-Fano trees

p. 158, l. 2:
	Errors caused ->
	Errors are caused

p. 171, l. 17:
	coefficients.  the DCT ->
	coefficients.  The DCT

p. 173, l. -19:
	Operations on fixed-point numbers ... are considerably faster
	than floating-point operations.

		[This is not true on some high-performance computers,
		such as CDC 6400, CDC 7600, and Cray systems.  Sun
		SPARC before Version 8, and HP PA-RISC 1.0 and 1.1,
		has no integer multiply or divide, so the choice is
		between floating-point hardware, or arithmetic in
		software: hardware usually wins.  It would be more
		accurate to qualify this statement with "On many
		machines, operations on fixed-point ...".]

p. 230, l. 12:
	Which proves ->
	This proves

p. 231, l. 5:
	has already been ->
	was already

p. 279, l. -7 .. -5:
	It also cannot handle accents, ... than text.

		[While this was formerly true, recent releases of some
		OCR packages, such as Xexox Techbridge, {\em do\/}
		handle accents.  Adobe Capture goes even further,
		because it represents a page as a collection of
		recognized glyphs, and unrecognized bitmaps; it is
		thus capable of producing a PDF file which, when
		printed or viewed, may be almost indistinguishable
		from the original.  To date, Capture is the only
		product I know of that has this capability, but others
		will surely follow.]

p. 295, l. 12:
	million words ... 1Mbyte ->
	two hundred thousand words ... 1Mbyte

		[The colophon at the end of the book illustrates this
		with precise data from the book itself.  It is a handy
		rule-of-thumb that 1 book == 1 MByte of text, e.g., 60
		chars/line * 45 lines/page * 400 pages = 1080000

p. 296, l. -6:
	telehone ->

p. 337, l. 16:
	carry a conversation ->
	carry on a conversation

p. 349, l. 7:
	reult ->

It would be nice if a future edition included portable implementations
in C or C++ of all of the compression methods described in the book,
included in a CD-ROM with the book, plus performance data for each
algorithm on the document corpuses (corpi?) noted at the beginning of
the book.  I realize that this is a tall order, and very likely beyond
the ability of a single individual to collect.  However, the lessons
ELLPACK, ... from the numerical analysis community show that it can be
exceedingly useful to have a well-tested portable library of
implementations of standard algorithms available.

I would also have liked to have seen a discussion of the important
issue of the Unisys patent on the LZW algorithm, which requires users
of that algorithm (including UNIX compress and CompuServe GIF) to pay
royalties.  This has significant implications for the World-Wide Web,
where use of GIF format images is still widespread.  This could lead
into a discussion of the compression techniques used in PNG files [PNG
was developed expressly to replace GIF, and avoid patent claims]; see

@String{j-DDJ                   = "Dr. Dobb's Journal of Software Tools"}

  author =       "Lee Daniel Crocker",
  title =        "{PNG}: The {Portable Network Graphic} Format",
  journal =      j-DDJ,
  volume =       "20",
  number =       "7",
  pages =        "36, 38, 40, 42, 44",
  month =        jul,
  year =         "1995",
  CODEN =        "DDJOEB",
  ISSN =         "1044-789X",
  bibdate =      "Tue Sep 03 09:16:51 1996",
  bibsource =    ", UnCover
                 database, Compendex database",
  abstract =     "PNG, originally designed as an alternative to GIF, is
                 a graphics file format that's simple, portable, and
                 available free-of-charge in source-code form for
                 reading and writing.",
  acknowledgement = ack-nhfb,
  classification = "C6130B (Graphics techniques); C6130E (Data
                 interchange); 723.5; 723.1; 722.3; 723.2; 741.1;
  journalabr =   "Dr Dobb's J Software Tools Prof Program",
  keywords =     "Algorithms; Color computer graphics; Color image
                 processing; Color matching; Computer graphics; Computer
                 networks; Computer programming; Computer software;
                 Computer software portability; GIF; Graphics file
                 format; Graphics Interchange File; Graphics interchange
                 file; Huffman coding; Image coding; Image compression;
                 Interfaces (COMPUTER); PNG; Portable network graphic;
                 Portable Network Graphic format; Standards;
                 Transparency information",
  pagecount =    "5",
  thesaurus =    "Computer graphics; Electronic data interchange;
                 Software portability; Software standards",

A search for "+GIF +Unisys +patent +grandfather" at turned up these references:

1. LZW compression issues
     Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread
     Index] LZW compression issues. To: [email protected]. Subject: LZW
     [Preview] - size
     17K - 4-Aug-97 - English - Translate

2. Re: LZW compression and patents
     Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread
     Index] Re: LZW compression and patents. To: [email protected].
     Subject: Re: LZW...
     [Preview] - size
     8K - 4-Aug-97 - English - Translate

3. WWW Business Yellow Pages
     World Business On the Web: A Directory by Category. By the University
     of Houston College of Business Administration. Computer Software :
     Development and...
     [Preview] - size 720K -
     2-Dec-97 - English - Translate

4. The Winsock Client Listing
     ISSUES. The Unisys / CompuServe / GIF Mess. A story. In 1987 CompuServe
     first introduced the GIF format as an efficient means of storing and
     [Preview] - size 6K -
     5-Jan-96 - English - Translate

5. No Title
     AAAAAAAAAaaaaaaaaaaaaaaaccccccccckkkkkk!!!!!!!!! You brute! Knock
     before entering a ladies room! %% Look out! Behind you! %%
      *** System..
     [Preview] -
     size 4997K - 14-Oct-94 - English - Translate

6. No Title
     NEWS **** NEWS -- Items of Interest to Legal Professionals ****
     Document 1 of 348 from Set 1 on May 8, 1997 08 May 97 -- Air Force Link
     web site wins top..
     [Preview] - size 1345K - 8-May-97 -
     English - Translate

7. cp05w.htm
     Chapter 5: Examining WWW Browsers. Examining Browser Types. Features to
     Look for in a Browser. HTML 3.2 Support. Netscape Extensions. Netscape
     [Preview] - size 68K - 3-Sep-96 -
     English - Translate

     nbsp; HOOVER HISTORIES - VOLUME 5.   HOOVER HISTORIES Copyright 1988,
     1997 by Henry Hoover Volume 5, Number 1 ================== Another year
     [Preview] - size 158K -
     18-Sep-97 - English - Translate

9. TechInvestor - Company News 569463
     Search CMPnet: Advanced Search.  Sections  News   Stocks/Finance   Web
     Development   Product Reviews ...
     [Preview] - size 232K
     - 10-Jan-98 - English - Translate

10. TechInvestor - Company News 569463
     Search CMPnet: Advanced Search.  Free E-mail  Sign Up Now   Sections
      News   Stocks/Finance   Web...
     [Preview] - size 237K
     - 24-Jan-98 - English - Translate

11. TechInvestor - Company News 569463
     Search CMPnet: Advanced Search.  Sections  News   Stocks/Finance   Web
     Development   Product Reviews ...
     [Preview] - size 230K -
     24-Dec-97 - English - Translate

12. No Title
     ʡ�æ׍� ���׉� ����צ� ��� ������ E-mail ����� ���׉��: [email protected]
     �Ë ��ùމ��� ��զ�� �� ������ � ���׉���, ��������� �� �����
     [email protected] ����զ �..
     [Preview] - size 4210K
     - 24-Dec-97 - English - Translate

13. No Title
     ����Ӓ�� �•�• ���˒Ӓ ��� ��ó�� E-mail ����� �•�•�: [email protected]
     �Ν ���ۗ��˝ ���Ә� �� ������ � �•�•��, ��ԕ����� �� �����
     [email protected] ��Ҹ�� �..
     [Preview] -
     size 4210K - 25-Dec-97 - English - Translate

14. 11829
     comp.lang.perl.misc:11829] Re: ANNOUNCE: GIFgraph 0.9. "> tail ./
     Subject: Re: ANNOUNCE: GIFgraph 0.9 From: Martien Verbruggen
     - size 6K - 21-Dec-97 - English - Translate

15. Barking Spider - Taglines
     Barking Spider. Taglines. Warning: Dates in Calendar are closer than
     they appear. Daddy, why doesn't this magnet pick up this floppy disk?
     Give me...
     [Preview] - size 101K - 25-Nov-97
     - English - Translate

16. Barking Spider - Taglines
     Warning: Dates in Calendar are closer than they appear. Daddy, why
     doesn't this magnet pick up this floppy disk? We are born naked, wet
     and hungry. Then...
     [Preview] -
     size 108K - 30-Nov-97 - English - Translate

17. Some Taglines
     TAGLINES. 1. Warning: Dates in Calendar are closer than they appear. 2.
     Daddy, why doesn't this magnet pick up this floppy disk? 3. Give me
     ambiguity or...
     [Preview] - size 109K -
     14-Dec-95 - English - Translate

The attached HTML text below was originally available at

but that URL no longer exists.  A search at for "illegal to use CompuServe's GIF
format" turned up 20+ locations, of which the first few are

1. Graphics File Formats (Part 1 of 4): General Graphics Format Questions
     Begin of part 1. Archive-name: graphics/fileformats-faq/part1
     Posting-Frequency: monthly Last-modified: 20Jan97 Graphics File Formats
     FAQ (Part 1 of 4):...
     [Preview] - size
     92K - 22-Jan-97 - English - Translate

2. Graphics File Formats FAQ (Part 1 of 4): General Graphics Format
     This is an USENET Frequently Asked Questions with answers from
     news.answers. This is the FAQ list for poster. [email protected]. Graphics
     File Formats FAQ (Part.
     [Preview] - size
     89K - 30-Aug-96 - English - Translate

3. Graphic File Formats FAQ
     The path to this OLC Stock Answer is: 6. Answers about Software
     Packages 3. Graphics 16. Graphic File Formats FAQ. Navigate: [HOME]
     [TOP] [Search OLC]...
     - size 229K - 25-Dec-97 - English - Translate

4. No Title
     - size 95K - 6-Aug-97 - English - Translate
     [Preview] -
     size 93K - 20-Jan-97 - English - Translate

5. No Title
     From [email protected] Mon May 19 19:39:25 1994 Newsgroups:,comp.answers,news.answers Path:...
     [Preview] -
     size 91K - 28-Jan-98 - English - Translate

6. Graphics File Formats FAQ
     This document contains the full FAQ (4 parts of 4). From: [email protected]
     Newsgroups:,comp.answers,news.answers Subject:
     Graphics File...
     [Preview] -
     size 295K - 20-Jan-97 - English - Translate

7. Graphics File Formats FAQ (Part 1 of 4): General Graphics Format
     This document answers many of the most frequently asked
     - size 101K - 21-Aug-97 - English - Translate

8. Graphics File Formats (FAQ 1/4)
     Graphics File Formats (FAQ 1/4): General Graphics Format Questions.
     Archive-name: graphics/fileformats-faq/part1 Posting-Frequency: monthly
     [Preview] -
     size 92K - 18-Mar-97 - English - Translate

9. No Title
     X-NEWS: 182 Relay-Version: ANU News -
     V6.1B10 04/18/95 OpenVMS VAX V5.5-1; site Path:...
     [Preview] - size
     216K - 23-Aug-95 - English - Translate

>> ...
>> Graphics File Formats FAQ (Part 1 of 4): General Graphics Format Questions - 1. Is it now illegal to use CompuServe's GIF format?

1. Is it now illegal to use CompuServe's GIF format?

>> It is not illegal to own, transmit, or receive GIF files (provided that no
>> unlicensed compression and/or decompression of the files occurs). You must
>> realize, however, that GIF files are not the issue. The issue is, in fact,
>> the LZW data compression algorithm.
>> In 1984, while working for Sperry Corporation, Terry Welch modified the
>> Lempel-Ziv 78 (LZ78) compression algorithm for greater efficiency for
>> implementation in high-performance disk controllers. The result was the LZW
>> algorithm. The world was informed of the existence of LZW by the following
>> journal article, published by Mr. Welch after he left the employment of
>> Sperry:
>>   Welch, T. A., "A Technique for High Performance Data Compression,"
>>   IEEE Computer, Volume 17, Number 6, June 1984.
>> In 1985, Sperry Corporation was granted a patent (4,558,302) for the Welch
>> invention and implementation of the LZW data compression algorithm. Since
>> that time, this LZW patent has been publicly available for all to see in the
>> US Patent Office and many public libraries, and is available through many
>> on-line services.
>> In 1987, CompuServe Corporation created the GIF (Graphical Interchange
>> Format) file format to be used for the storage and on-line retrieval of
>> bitmapped graphical data. The GIF specification required the use the LZW
>> algorithm to compress the data stored in each GIF file. It is very possible
>> that CompuServe did not check the patent files to determine whether the GIF
>> format infringed on any patents. Such a check would have found the Welch LZW
>> patent, which was then owned by Unisys as a result of their having purchased
>> Sperry in 1986. At that time, Unisys also did not know that LZW was the
>> method of compression used by the very popular GIF file format.
>> In 1988, Aldus Corporation released Revision 5 the TIFF file format. This
>> revision added a new feature giving TIFF the ability to store RGB bitmapped
>> data using either a raw format, or a compressed format using the LZW
>> algorithm. (Although the LZW algorithm used by TIFF is considered to be
>> "broken", it is still covered by the Unisys patent). Since 1991, in
>> accordance with their agreement with Unisys, Aldus has been required to place
>> a notice regarding the Unisys patent and its applicability to TIFF, in Aldus
>> documentation. The 1992 release of Revision 6 of the TIFF specification
>> includes this notice of the Unisys patent regarding LZW. The TIFF Revision 6
>> specification also recommends against using LZW to compress RGB bitmaps
>> stored using the TIFF format.
>> In 1990, Unisys licensed Adobe for the use of the Unisys LZW patent for
>> PostScript.
>> In 1991, Unisys licensed Aldus for the use of the Unisys LZW patent in TIFF.
>> In 1994, Unisys and CompuServe came to an understanding whereby the use of
>> the LZW algorithm would be licensed for the application of the GIF file
>> format in software.
>> In 1995, America Online Services and Prodigy Services Company also entered
>> license agreements with Unisys for the utilization of LZW.  Published
>> information indicates that Unisys' licensing policies are as follows:
>>  1) Unisys considers all software created or modified before January 1, 1995
>>     that supports the GIF and/or TIFF-LZW formats to be inadvertently
>>     infringing upon its patent; Unisys will therefore not require a license
>>     for GIF software products delivered before January 1, 1995. Unisys will
>>     therefore not pursue legal actions against such pre-1995 software
>>     products.
>>  2) However, Unisys expects developers of commercial or for-profit software
>>     to obtain a GIF-LZW license agreement from Unisys if, after December 31,
>>     1994, the developer creates new software or updates or modifies existing
>>     software, or issues a new release of software that supports the GIF file
>>     format.
>>  3) Unisys does not require licensing of non-commercial, not-for-profit
>>     software applications that support the GIF file format.
>>  4) With respect to TIFF, if a license is entered before July 1, 1995, there
>>     will be no liability for pre-1995 software with respect to that software's
>>     support of TIFF which uses LZW.
>> Unisys has drafted licenses for several different applications of the LZW
>> algorithm. The two license agreements of most interest in this FAQ are
>> applicable to software supporting the GIF file format alone and the agreement
>> applicable to software supporting both GIF and the TIFF file format's LZW
>> compression feature.
>> Realizing that you have many questions about GIF-LZW and TIFF-LZW licensing,
>> the remainder of this section is arranged in a Question/Answer format to help
>> convey information about this subject more clearly.
>> Q: Just what is this all about?
>> A: Unisys has asserted its claim to the ownership of the LZW compression and
>>    decompression algorithm. If you wish to implement LZW in a software or
>>    firmware application, you must arrange to pay a small royalty to Unisys
>>    for every software package that you sell. You do this by applying to
>>    Unisys for an LZW license agreement for your software.
>> Q: What file formats are effected?
>> A: GIF, TIFF, PDF, and PostScript Level II. All of these formats use, or
>>    can use, LZW compression. For example, a TIFF or PostScript Level II file
>>    may or may not use the LZW algorithm to compress the data it contains.
>>    GIF files, and most PDF files, always store bitmap data that is compressed
>>    using LZW.
>> Q: How does this agreement affect my use of GIF and TIFF files?
>> A: It does not affect the ownership, transmission, or reception of GIF and
>>    TIFF-LZW files themselves. Only the software that performs compression
>>    and/or decompression of GIF may be effected in any way by license
>>    agreements. You are free to store and transport GIF and TIFF-LZW files
>>    without fear of legalities or cost from the Unisys licenses provided that
>>    any compression and/or decompression on GIF files is performed by licensed
>>    software, or by software products delivered prior to 1995.
>> Q: Which agreement do I need?
>> A: If your software supports only GIF then you need the GIF-LZW agreement.
>>    If it supports TIFF-LZW or both GIF and TIFF-LZW then you need the TIFF-LZW
>>    and GIF-LZW agreement.
>> Q: My software supports TIFF-LZW, but not GIF.
>> A: You still need to obtain the TIFF-LZW and GIF-LZW agreement.
>> Q: So if my software only supports non-LZW versions of TIFF and PS Level II
>>    I don't need to worry about obtaining a license agreement?
>> A: That is correct. Only software that is capable of using the LZW
>>    algorithm requires an agreement. This includes all software that supports
>>    the GIF file format.
>> Q: What about file compression programs such as compress, PKZIP, zoo, and
>>    lha? Don't they use LZW too?
>> A: Most file compression programs use the LZ77 algorithm for compressing
>>    text. The LZ77 compression algorithms (and several of its derivatives)
>>    predates LZW by several years and is covered by its own series of patents.
>>    The predecessor to LZW, LZ78, is used primarily for compressing binary
>>    data and bitmaps. Any software that uses the LZ77 and/or LZ78 algorithms
>>    without the LZW improvement is not affected by the Unisys LZW patent.
>>    Of the mentioned software packages, the Unix compress utility does use LZW
>>    and therefore requires a license.
>> Q: Doesn't IBM also hold a patent on LZW?
>> A: IBM was granted a patent (4,814,746) for use of LZW in disk drive
>>    technology. This patent does not award ownership of LZW to IBM.
>> Q: Is there a chance that the Unisys patent is actually invalid?
>> A: In 1994, the U.S Patent Office reexamined the Welch patent and, on
>>    January 4th of that year, not only confirmed the patentability of the
>>    original 181 patent claims, but also confirmed that 51 claims added
>>    during the reexamination were also patentable.
>> Q: But you can't patent a mathematical abstraction. Doesn't this also
>>    include algorithms implemented as computer software?
>> A: A patent grants the exclusive rights, title, or license to produce,
>>    use, or sell an invention or process. One or more algorithms may be
>>    applied using software to create an invention. It is this invention
>>    whose use is restricted by the patent and not the algorithm(s) involved.
>>    In the case of software, it seems that it is not very easy to separate
>>    the algorithm(s) from the invention itself. Use of the algorithm(s) would
>>    seem to imply use of the invention as well.
>> Q: I use LZW in my programs, but not for GIF or TIFF graphics. What should
>>    I do?
>> A: If you are not a business, and the programs are for your own personal
>>    non-commercial or not-for-profit use, Unisys does not require you to
>>    obtain a license. If they are used as part of a business and/or you sell
>>    the programs for commercial or for-profit purposes, then you must contact
>>    the Welch Patent Licensing Department at Unisys and explain your
>>    circumstances. They will have a license agreement for your application of
>>    their LZW algorithm.
>> Q: Where can I apply for a GIF-LZW, TIFF-LZW and GIF-LZW, PDF, PostScript
>>    Level II, or any other LZW license?
>> A: You can write to:
>>      Welch Patent Licensing Department
>>      Unisys Corporation
>>      Mail Stop C1SW19
>>      P.O. Box 500
>>      Blue Bell, PA 19424 USA
>>    Or fax:    215.986.3090
>>    Or email:  [email protected]
>>    General licensing information may also be obtained from the home page of
>>    the Unisys Web Server:
>> Q: How much does a license cost?
>> A: For a GIF-LZW license there is a $25US non-refundable registration fee to
>>    start. You will then pay 0.45% of the selling price of your software per
>>    unit sold per calendar quarter with a minimum of $0.10US and a maximum
>>    $10US per unit. For a TIFF-LZW and GIF-LZW license, the non-refundable
>>    registration fee is $50US and you will pay 0.65% of the selling price of
>>    your software per unit sold per calendar quarter, with a minimum of
>>    $0.20US and a maximum of $25US per unit. The license agreement contains
>>    various other terms and conditions, such as those which define the field
>>    of use.
>> Q: Do I need a separate license for each GIF-using software product I sell?
>> A: If you sell three products that all use the GIF format, for example, then
>>    you will need only one license. License fees must be paid for each product
>>    sold.
>> Q: Do I need to obtain a new license if I release a new version of my
>>    software?
>> A: No. However, a license fee is required for each update, improvement, or
>>    enhancement of your software that is sold.
>> Q: What if I give my software away?
>> A: If you distribute for free your product directly to end-users for their
>>    personal use and your distributing the software is non-commercial and
>>    not-for-profit use and you receive no financial gain (such as Shareware
>>    donations, royalties for CD-ROM distributions, or as advertising to
>>    attract for-profit business), then you do not need a license.
>> Q: But what about Shareware donations?
>> A: Each Shareware "payment" you receive is considered the selling price of
>>    that unit. Whatever a user pays to you for your GIF-using software is
>>    required to be included in your quarterly license fee payment to Unisys.
>>    However, minimum license fees per unit must be always paid.
>> Q: My Shareware GIF software is being sold for-profit on a CD-ROM, but I do
>>    not make any profit from its sale. Can I get in trouble? Do I need a
>>    license?
>> A: The person/business that is selling your program for profit on their CD-ROM
>>    is responsible for obtaining the proper license. You would only need a
>>    license if you received any payments from the CD-ROM vendor or from users
>>    of your Shareware.
>> Q: I do not live in the United States and my software is not available there.
>>    Do I still need to obtain a license agreement?
>> A: Yes, you do. The Unisys patent has many foreign counterparts and the
>>    legalities of using LZW apply to most other countries in addition the US.
>> Q: What will happen to me if I continue to revise my GIF-using software,
>>    sell it for profit, and yet not bother to obtain a license?
>> A: Most likely, when your unlicensed program is discovered by Unisys,
>>    you will be notified of your need to obtain a license for your product.
>>    If you then fail to obtain the proper license, Unisys may seek an
>>    injunction against your product including damages. You could also be
>>    charged with willful infringement, which could result in treble damages.
>> Q: On what Usenet newsgroups is this LZW agreement being discussed?
>> A: You will find threads appearing on and other related
>>    graphical newsgroups. The official newsgroup where much discussion
>>    takes place is alt.gif-agreement. You might also find information on
>>    the,, and comp.patents newsgroups.
>> Q: Where can I get a copy of the Unisys patent?
>> A: Copies of patents may be found in public libraries or be obtained directly
>>    from the U.S. Patent Office. The patent is also available at many Internet
>>    sites, including:
>> Q: What are my alternatives to GIF and TIFF-LZW file formats?
>> A: The most popular alternative is JPEG compression and the JFIF file format.
>>    JFIF-JPEG files are smaller and store far more colors than GIF files.
>>    Another newer alternative is the PNG format, which is currently under
>>    development (see the section "PNG - Portable Network Graphics" in Part 3
>>    of this FAQ). PNG is unencumbered by patent licenses and has much
>>    potential and promise in replacing GIF. But, most software that supports
>>    PNG will likely have been written after January 1, 1995, so make sure that
>>    your GIF-to-PNG conversion program has the proper Unisys license.
>> Q: This agreement is bogus! I refuse to ever use GIF again!
>> A: As an end-user you are free never to read, write, or archive another
>>    LZW-encoded file as long as you live. As a developer you are only
>>    free of the legal implications of the Unisys patent if you remove any
>>    LZW code from your programs, including those shipped to your customers
>>    after 1994.
>> Q: Wait! I have more questions!
>> A: Contact the Welch Patent Licensing Department at the aforementioned
>>    addresses. I (the author of this FAQ) am not an employee nor legal
>>    representative of Unisys. You can also find this information on the
>>    Unisys web page:
>>    And in the following InfoWorld article:
>>    "Graphics file format patent Unisys seeks royalties from GIF developers",
>>    Karen Rodriguez, InfoWorld, Jan 09, 1995 (Vol.17, Issue 02, p3)
>> Disclaimer: The information in this FAQ regarding the Unisys LZW licensing
>> agreement has been presented in an attempt to allow the reader to understand
>> some of the legalities they may face by the use of the LZW algorithm. The
>> author has rendered this explanation and example questions using the most
>> accurate information available to him at the date of this FAQ. In no regard
>> should this text be considered an official publication of Unisys Corporation
>> or a legal representation of the policies of Unisys, or in any way obligating
>> Unisys to enter into a license agreement based upon the terms,
>> interpretations, and/or answers to question provided in this text.
>> Parent document is top of "Graphics File Formats FAQ (Part 1 of 4): General Graphics Format Questions"
>> Previous document is "0. Can a graphics file be copyrighted?"
>> Next document is "V. Graphics Formats Misnomers, Misgivings, and Miscellany"
>> ... ------------------ ------------------- ---------------- Errors Contributed by Emilio Millan > p. viii: "J 923 0.0013" was omitted from the right side of the table. > > p. 2: "Portuguese" should be capitalized. > > p. 5: The word "abandoning" should probably have been encoded as > "7ing", and "abate" as "5". Also, on p. 35, on the very last line, "next" should probably be "shortly" or the like. On p. 26, "code1" should probably be "Code1." On p. 105, "possibe" should be "possible." ------------------ ------------------- ---------------- Comments from Hans Hagen (1) 1,2,3,4,\framed{5},6,7 : I suggest you lower the framed numbers so the baselines of the numbers align (several places). (2) The braille table: looks like there is stretch in the second row. Now the dotted stuff is not consistently spaced. ------------------ ------------------- ---------------- A comment from Haruhiko Okumura As a friend of Haruyasu Yoshizaki (the author of LHA) and co-designer of LHA, I would like to comment on a minor point. On pages 156 and 410, you mention "ICE" as Yoshizaki's work. As far as I know, it's a faked version of either LHarc or LHA, presumably made by someone who thought the English message "melting..." cute. Anyway, I haven't seen the program. ------------------ ------------------- ---------------- Errors found by Paul D. Amer p. 25, lines+2 & +4: smallest -> largest p. 350, In Figure F.2b, the .5 and -.5 amplitudes should be 1/3 and -1/3, respectively? p. 387, Exercise answer 4.5: The 12 below the underbraced sequence of zeros should be 13. The same error can be found on p. 180 and it also affects the answer to Ex. 4.8, where the word "twelve" should be changed to "thirteen" and the number 12 should be changed to 13 twice. ------------------ ------------------- ---------------- Errors found by the author p. 27, line +4: The length of the unary code for the integer n is n bits. [instead of (log base 2 n)+1]. p. 33, line -2 (display equation), the sum of (1/log2 n) -> the sum of 1/n. p. 48, line -2, heap shrinks by one positions (Figure 2.21c). -> ... (Figure 2.21b). p. 80, line -9 (above exercise 2.30) add the sentence: This should have been a 21-bit number but the numbers in Table~\ref{tb:arith.code5} have limited precision and are not exactly right. p. 111, line -17: reptition->repetition p. 124, line+7. 256 (si) -> 264 (as), 105 (i), p. 125, Table 3.16: 270-(space)es, 271-sil, 272-ly -> 270-(space)ea, 271-asi, 272 il, 273-ly... Also insert entry "ea(space)" between entries 280-(space)se and 281-(space)si p. 143, line +7: H=((C>>15)^C)&0xFFFF) -> H=((C>>15)^C)&0xFFFF p. 143, line +21: H=((I>>15)^I)&0xFFF) -> H=((I>>15)^I)&0xFFF p. 146, eliminate the 3-line paragraph following Table 3.26. p. 150, line -18: Change: ...may have a minimum file size of 5Kbytes, so 100 small block of, say,... To: ...may have a minimum block size of 5Kbytes, so 100 small files of, say,... p. 153, line -6: multiple Shannon-Fano tree -> multiple Shannon-Fano trees p. 253, line -13 ...permutation L selected by the decoder -> ...permutation L selected by the encoder p. 270, top line of table 5.16 should have 0000 as the run of zeros (column 2) and 1 0001 as nonzero group (column 3). p. 277, line +1 ...string is from A are added to the P -> ...string is from A are added to the A- p. 283, line +2 the 14-bit part -> the 13-bit part p. 285, line -6 two 6-bit numbers 19 and 23 -> two 6-bit numbers 14 and 23 p. 288, line +6. State 2 has "a", "b", and "c" -> State 2 has "a", "b", and "c" p. 296, line +3, a circle is not -> the circle is not p. 327: The following text is missing at the top of the page: The rules are applied successively, creating parts that get more and more complex, thereby transforming the simple axiom closer to the final, complex goal. The rules are called {\it rewriting} or {\it production}\attention\ rules, and are an extension of Chomsky's^[Chomsky, Noam] work on formal grammars... p. 347, line -17, the second codeword -> the third codeword p. 359, line -21, logically AND -> logically OR p. 383, line+6. (266: alfa) -> (266: fa), (267: alfa) ------------------ ------------------- ---------------- Errors found by Mark Doyle p. 67. The definition of a_2 is missing from the notes. p 124. par+2. The letter "a" of "easily" has been left out of the analysis of the example. It should also appear in location 270 of Table 3.16 (the dictionary) on page 125. p128. line-7, dict[pointer].parent contains 1 -> contains 2. p132. Table 3.19. Column S' should be shifted down one row. p212. line 5. beighbors -> neighbors p222. line 18. a (smaller version of) -> (a smaller version of) p287. line -1 should be: State 1 accumulates 200 counts for "a", 100 counts for "b" p288. line +6 should be: State 2 has "a" and "c" coming... p295. line+11 should be: A large book, consisting of a million characters... p297, line-6 should be: in a large sound file, the samples may sometimes have a flat distribution. Such a file will therefore not respond well to Huffman coding (See exercise 2.14). ------------------ ------------------- ---------------- Errors found by Maxime Zakharov p217, line+1 type color=(W,B,G); noderecord {White, Black, Gray} -> type color=(W,B,G); node=record {White, Black, Gray} p242, line -12: r * [ SUM a_i - 1/n * (SUM a_i)^2 ] = ... should be: r * [ SUM a_i^2 - 1/n * (SUM a_i)^2 ] = ... p242, line -11: r = ... \over { SUM a_i - 1/n (SUM a_i)^2 } = ... \over { n * SUM a_i - (SUM a_i)^2 } should be: r = ... \over { SUM a_i^2 - 1/n (SUM a_i)^2 } = ... \over { n * SUM a_i^2 - (SUM a_i)^2 } ------------------ ------------------- ---------------- Errors found by Guy Blelloch p40, line 17: The claim made in this paragraph is wrong, as the following example shows Huffman -\log_2 P_i ceil .01 000 6.644 7 .30 001 1.737 2 VIOLATED .34 01 1.556 2 .35 1 1.515 2 ------------------ ------------------- ---------------- Errors found by Vijayakumaran Saravanan p172, line -8: "64 cosine functions" should be "32 cosine functions" "The road to wisdom? Well, its plain and simple to express; Its err, and err, and err again, but less, and less, and less." -- Piet Hein, Grooks.