Talk:Shannon–Fano coding

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing (Rated Start-class)
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 ???  This article has not yet received a rating on the project's importance scale.

Untitled[edit] has a paragraph identical to p2 of this article.

Either copied this, and failed to cite Wikipedia as a source, or this article copied from (which probably is not fair use, as it is not quoted). Or the author is the same in both cases.

It was probably copied from there... Evil saltine 15:07, 12 Sep 2003 (UTC)

Especially as the Wikipedia description of Shannon-Fano coding is entirely incorrect. I'm going to correct it;

Should the text "although according to this author it bloody well should be" be part of the article? It shows one person's bias for or against a particular idea, which really doesn't belong in an encyclopedia.

Towards the end of the article, it said:-

... However, arithmetic coding has not obsoleted Huffman the way that Huffman obsoletes Shannon-Fano, both because arithmetic coding is more computationally expensive and because it is covered by multiple patents. However, range encoding is equally efficient, and is not plagued by patent issues.

(Emphasis mine.) I've deleted that last line, as this rumour that range coding is free from arithmetic coding related patents does seem quite dubious. This is because range coding and arithmetic coding are actually the same thing. They're just different interpretations, different ways of understanding, the same thing. The claim about range coding being free from arithmetic coding patents therefore seems likely to be ill-founded, though it does seem to be quite a persistent rumour.

I came across this article in relation to related changes I've made to the arithmetic coding and range encoding articles, which I've similarly edited to correct (or at least clarify) the relationship between arithmetic and range coding.

--Simon G Best 19:18, 21 July 2006 (UTC)

main article needs a chronology[edit]

When, exactly, did the Shannon-Fano coding come to be called that, and not something else? Are there any months and dates that can be assigned to the discovery of the Shannon-Fano coding scheme? If the discovery cannot itself be dated, when was the Shannon-Fano coding scheme first published in hardcopy form? If it was never published in hardcopy form, when was it first disseminated electronically?

Done Calbaer 14:26, 14 August 2006 (UTC)

Changed bit about optimality[edit]

The original article claimed that Shannon-Fano coding is "suboptimal"; I explained a bit better in what sense it is and in what sense it isn't suboptimal.

Usage in IMPLODE...?[edit]

Shannon-Fano coding is used in the IMPLODE compression method, which is part of the ZIP file format.

Can anyone actually confirm this? APPNOTE.TXT talks about the codes as Shannon-Fano codes, but as far as I can see, the specs don't put any limitation on what algorithm is used to generate the code lengths when the file is actually compressed. As far as I can tell they could easily be created using the Huffman algorithm, or any arbitrary algorithm— optimal or otherwise. CountingPine (talk) 00:56, 17 January 2009 (UTC)

If I understand correctly, the compressed format used to store the trees would only reconstruct the Shannon-Fano trees exactly, and not an arbitrary algorithm such as Huffman's. Balabiot (talk) 13:02, 24 November 2009 (UTC)

Huffman algorithm[edit]

This article is about Shannon–Fano coding, Huffman coding has its own article, so I think it shouldn't be described here in depth. Because of this, I'm going to undo the edit by again. If somebody disagrees, please, discuss here first. Svick (talk) 17:25, 2 March 2010 (UTC)


Yes I know Huffman coding has its own article but doesn't show comparison between Shannon–Fano and Huffman coding with same example. —Preceding unsigned comment added by (talk) 06:58, 3 March 2010 (UTC)


Ok, so I didn't read down this far before making an edit. I've just described the same thing in different words and also added what seems to be a missing piece in the huffman algorithm. Obviously feel free to drop it if it offends thee, but I feel that the article doesn't explain the difference properly without running through the example in words when it is already there in pictures.

Thickycat (talk) 17:26, 26 July 2010 (UTC)

Polar codes[edit]

User:Hermel removed the IP's insertion of a new section on Andrew Polar's codes with WP:NOTABILITY as the reason, but that policy only applies to article topics, not to inclusion. The IP put it back and I removed it again. I think it's a matter of WP:V and/or WP:RS, as the only source was an WP:EL to some web page. We'd probably need a secondary document talking about it before we'd want to include it in wikipedia, especially as it's so new and apparently not in a refereed journal yet. Dicklyon (talk) 04:57, 20 September 2010 (UTC)

It is correct that notability doesn't apply, and it is also correct that WP:V applies. As I just mentioned of on the reliable sources notice board, "LTCB definitely does not qualify as a reliable source--it falls squarely under self-published sources. If you want to add info about polar codes, you need citations in reliable sources. The field of error coding, error fixing, etc. is widely discussed in a number of academic journals; if a citation cannot be found in an academic source, it's highly unlikely that the subject is important enough to merit inclusion in any article." As a side note, if such a reference is found and added, we cannot have the direct linking to external sites like was in the previous version, as a violation of WP:EL. User:Qwyrxian talk 00:32, 22 September 2010 (UTC)