Here is a model that compresses x to 72 bytes using "zpaq niscrc4_no_key.cfg x.zpaq x". The options n, i, s tell zpaq not to store the filename, comment, or checksum. c says compress. The config file rc4_no_key.cfg is RC4 with no key schedule used as a PRNG to generate 1 MB of pseudo-random data.
The preprocessor clear.bat converts any input to an empty file. The above config file will only work on this one particular file and no other.
(compresses 1 MB generated by RC4 with no key)
comp 0 0 0 8 1 (pm=8: M is a 256 byte buffer S with wraparound)
0 icm 5 (indirect order 0 model)
pcomp clear.bat ;
(rc4 b=i c=j r0=count)
a= 100 a*= 100 a*= 100 r=a 0 (r0=1000000)
do (empty key schedule M = S[i] = i, i = 0..255)
a=b a> 255 until
do (1000000 times)
b++ a=c a+=*b c=a (j += S[++i])
a=*b *c<>a *b=a (swap S[i], S[j])
a=b a+=c d=b b=a a=*b out b=d (output S[S[i]+S[j]])
a=r 0 a-- a> 0 r=a 0 while (count down r0)
Compressing a file like this would be a much harder problem if I only gave you the file and I had implemented the key schedule and used a secret key. You could only compress it if you guessed the key or were able to crack RC4. Otherwise it looks completely random.
As it was, I gave you the file already compressed. You could extract the RC4 code (and the key if I used one) from the archive with the command "zpaq tx x.zpaq". The t debugging option says to not postprocess. You would get a warning about a bad checksum (if one were stored) and the ZPAQL code for the PCOMP section would be appended to the beginning of the output. The COMP and HCOMP sections are stored uncompressed in the header of x.zpaq.
I originally created the file x with the command "zpaq prrc4_no_key.cfg nul: x". "pr" means to run the PCOMP section as a program with input nul: and output x. The code is called once for each byte of input with the input byte in A, and once at EOF with 0xffffffff in A.