Proof of `The Integer Programs of the Clients' Reduction Are Fixed-Parameter Tractable`
groundedproofs/Lax117284Proofs/Machine/IlpFinal.lean · lax-117284
What this proof establishes
no assumptions
Assuming the claims on the left, the claim on the right holds — checked by the archive's pipeline. Proof code is not displayed here.
Description
The integer programs of the family are solved by a word RAM program that reads the word, with variables and constraints, and decides at once whether it is the program of one variable (the fixed word and the program of no client), which it solves by a division. Otherwise it finds the number of clients from , and enumerates all the numbers below , where and , by an odometer whose digits are the entries of a certificate: a digit for every variable, the two matrices of an integer left inverse of the difference vectors of the large variables, and a common denominator. For every certificate it decodes a candidate solution (sums of the small digits per type, the base of each type, the values of the extras by the integer left inverse, the values of the bases by what is left of the demand of the type) and tests it against the program stored in the word, row by row. The program is feasible if and only if some certificate is accepted, by the completeness of the certificates (the shifting lemma, the kernel bound of the family by Siegel's lemma, the bound on the number of extras) and the soundness of the test. Every number is at most a fixed power of the length of the word plus its largest entry, so the running time is a function of the number of variables alone times a constant.