<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.1.3" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: Bijective BWT</title>
	<link>http://www.c10n.info/archives/721</link>
	<description>Your daily update on the most recent compression techniques, algorithms, patents, products, tools and events.</description>
	<pubDate>Sun, 06 Jul 2008 18:51:38 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.1.3</generator>

	<item>
		<title>By: Matt Mahoney</title>
		<link>http://www.c10n.info/archives/721#comment-217886</link>
		<author>Matt Mahoney</author>
		<pubDate>Wed, 16 Jan 2008 22:24:25 +0000</pubDate>
		<guid>http://www.c10n.info/archives/721#comment-217886</guid>
					<description>Briefly, a normal BWT is inverted by constructing a linked list and traversing it from the start location, which is transmitted separately.  This linked list consists of one cycle.  A bijective BWT has multiple cycles, each of which starts with the first element.</description>
		<content:encoded><![CDATA[<p>Briefly, a normal BWT is inverted by constructing a linked list and traversing it from the start location, which is transmitted separately.  This linked list consists of one cycle.  A bijective BWT has multiple cycles, each of which starts with the first element.</p>
]]></content:encoded>
				</item>
	<item>
		<title>By: David A. Scott</title>
		<link>http://www.c10n.info/archives/721#comment-217917</link>
		<author>David A. Scott</author>
		<pubDate>Thu, 17 Jan 2008 00:18:38 +0000</pubDate>
		<guid>http://www.c10n.info/archives/721#comment-217917</guid>
					<description>Less briefly, Usually a normal BWT consists of one cycle if one uses a special EOF character it's always one cycle if one does not it will either be one cycle or several identical cycles. Example ABC goes to CAB:2 one cyle and a single index. There is more than one way to define the index I placed on the start character in range of 1 to 3. However the file ABCABCABC goes to in normal BWT to CCCAAABB:index of 4 or 5 or 6. 

Actually both examples above are rare. In fact both examples above have same BWTS transform as the normal BWT transform except no index. In fact for every valid BWT transform if you pick the correct index you have a valid BWTS transform that doesn't need an index.

For a typical file that is not made of identical repeats if you rotate it you get the same BWT transform all that changes is the index. If you use a BWTS at one rotation it matches the BWT at the other rotations it will have multiple cycles not all identical. The resultant transform don't exist in the BWT output space so there is no reverse BWT regardless of index for the other files. In a typical case if a random file is N bytes long only one rotation of the file is able to be reversed in normal BWT. Sometimes no rotation leads to an inverse sometimes more than one. However in BWTS each has a unique inverse. The fact that its bijective and uses all the output space gives us a shot at someday beating or tying PPM style compressors.

One point even though the BWTS usually has several cycles for the most part when sorted together it still produces long repeated strings. Example I could have a hundred cycles each containing the sub string "the dog is blue"  the letters will srill sort together.

Hope This Helps
David A. Scott
P.S. one more point
if you keep doing a BWTS on a file you do not vist all the permutations however if you do it enough you eventually get back to the starting file.</description>
		<content:encoded><![CDATA[<p>Less briefly, Usually a normal BWT consists of one cycle if one uses a special EOF character it&#8217;s always one cycle if one does not it will either be one cycle or several identical cycles. Example ABC goes to CAB:2 one cyle and a single index. There is more than one way to define the index I placed on the start character in range of 1 to 3. However the file ABCABCABC goes to in normal BWT to CCCAAABB:index of 4 or 5 or 6. </p>
<p>Actually both examples above are rare. In fact both examples above have same BWTS transform as the normal BWT transform except no index. In fact for every valid BWT transform if you pick the correct index you have a valid BWTS transform that doesn&#8217;t need an index.</p>
<p>For a typical file that is not made of identical repeats if you rotate it you get the same BWT transform all that changes is the index. If you use a BWTS at one rotation it matches the BWT at the other rotations it will have multiple cycles not all identical. The resultant transform don&#8217;t exist in the BWT output space so there is no reverse BWT regardless of index for the other files. In a typical case if a random file is N bytes long only one rotation of the file is able to be reversed in normal BWT. Sometimes no rotation leads to an inverse sometimes more than one. However in BWTS each has a unique inverse. The fact that its bijective and uses all the output space gives us a shot at someday beating or tying PPM style compressors.</p>
<p>One point even though the BWTS usually has several cycles for the most part when sorted together it still produces long repeated strings. Example I could have a hundred cycles each containing the sub string &#8220;the dog is blue&#8221;  the letters will srill sort together.</p>
<p>Hope This Helps<br />
David A. Scott<br />
P.S. one more point<br />
if you keep doing a BWTS on a file you do not vist all the permutations however if you do it enough you eventually get back to the starting file.</p>
]]></content:encoded>
				</item>
</channel>
</rss>
