I’m not talking about the spirit of the problem, I’m talking about the actual program corresponding to the derivation in this article. I’m not super familiar with the field though, so I could be wrong.
The math you’re doing here implies that if 0 ≈ K(A) then 0 ≈ K(A) + K(A) = 2K(A), so constant multipliers seem to be allowed in your approximations.
Ok after going through the proof of the chain rule, here is my sense for what is going on. Please correct me if I am mistaken.
An approximately-shortest program outputting is very similar to an approximately-shortest program that outputs just using as an intermediate output. This means that, given , there are few programs that output for some that have a length approximately , so has a small index in the enumeration of . This means that .
We get by searching for programs with an appropriate K-complexity bound that output triples , and we describe the triple we want using an efficient enumeration scheme. The length of this program is close to for the reason outlined above. This is split into producing and by splitting up the enumeration, effectively currying the program.
However I don’t think this necessarily means that there is an approximately-shortest program producing from both and in a meaningful way. One approximately-shortest program is given by generating from , keeping , and then searching for via program enumeration. For some given , it’s possible that all approximately-shortest programs are of this form.