<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1458" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>I realized I omitted something important -- 
sorry.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>This process should not be regarded as lossless; 
but lossless compressor's can readily be constructed using this 
method.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Here is how:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Be compressing a buffer containing an imperfect 
representation of the client data; XOR that imperfect buffer to the actual 
client buffer;  </FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Send the map (compress it first!) of the XOR'ed 
differences.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Of course everything you want to send costs (in 
space) and the budget cannot exceed the size of the original input 
buffer.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<BLOCKQUOTE dir=ltr 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=julesg@newebmail.com href="mailto:julesg@newebmail.com">Jules 
  Gilbert</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=discuss@blu.org 
  href="mailto:discuss@blu.org">discuss@blu.org</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Sunday, August 15, 2004 10:52 
  PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> a few facts</DIV>
  <DIV><BR></DIV>
  <DIV><FONT face=Arial size=2>I did do one demo at MIT in 1996; </FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Also while I am not willing to bring floppies in 
  and do a public demo; I have offered to show certain BLU folks a demo, 
  off-line from a meeting, to video tape the demo, and then to show the video 
  tape at a BLU meeting.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>I don't know yet whether the people I am talking 
  to will agree to this -- and won't know until next week or later, (at least 
  this is my best information at this moment.)</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Also, you guys should simply build the model I 
  described.  IT COMPRESS'ES.  It's not powerful and it's not 
  efficient, but it works.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Let me try and show you why, because apparently 
  some participants here have a little trouble understanding basic vector 
  algebra.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>First, the client vector (the original buffer) is 
  random;  that won't produce much of value when curve-fit.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Now, building the monotonic vector merely 
  transforms the X-component (completely random,) to the Y-component, because 
  now the randomness is tied to the Y attribute.  Graph it if you don't get 
  this.  Of course each term used in the curve fit doesn't do much, because 
  the coefficients 'lock' on the largest non-linearity;</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>This is why, after the subtraction of the 
  approximation, the residue line has one major discontinuity for 
  each term.  Remember, we are not trying to reduce a 1GB to 1byte here, 
  each curve fit (and subsequent subtraction) simply reduces the magnitude of 
  the residue remaining to be compressed.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>I am sorry to observe these dynamics; I was 
  hoping for someone to come forward and say, I built it and I have the 
  following issues -- or -- I observed ...  </FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Here's a little more info; maybe this will help 
  get the right person going...</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>The subtractive operation can be replaced by an 
  XOR;  That's less intuitive and doesn't process the left-most three-bit 
  column field as well, but it does substanially improve the remaining 
  right-columns;  Also, doing this to say 128 cells, each 1 bit 
  wide;</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>And by applying this process to each vector 
  concurrently, then making a new vector from the residue of each Y'th row 
  produces data with much better characteristics;</FONT></DIV>
  <DIV> </DIV>
  <DIV> </DIV>
  <DIV><FONT face=Arial size=2>Today my best perpetual compressor's don't use 
  floating point, but (except for the Y[zero] row of course, where no 
  improvement can be obtained,) building a "cross-hatch" vector 
  set has big advantages.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>I am pretty busy these days, (and I don't do 
  compression work any more -- the fighting is just ugly, not why I went into 
  programming at all) but if someone is interested in this stuff, please email 
  me.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>--jg</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV> </DIV></BLOCKQUOTE></BODY></HTML>