During work on my 4k projects i have found that there is relationship between size (expressed in bytes ) of .class file (no signed and no MF specified) and size of compressed file (containing only one class and compressed on path javac->7z->proguard->JoGa->pack200->Kzip ) which can be expressed as:
y = size of compressed file
x = size of class file
(1) y=(x^P)*(e^R), where P=0,716 and R=1,532
Now we can define compression factor (CF) which is:
Here are diagrams
Now lets assume that R=2,14*P, where P I believe is factor which describes compression path. From diagrams above you can see that if P is decreasing CF is increasing.
If we someway can estimate value of P or approximate value of P based on its changes dependent of compression path we can more consciously impact on compression path e.g. adding more steps, removing some steps or repeating some steps.