We prove, under a computational complexity hypothesis, that it is consistent with the true universal theory of p-time algorithms that a specific p-time function extending n bits to m >= n(2) bits violates the dual weak pigeonhole principle: Every string y is an element of {0, 1}(m) equals the value of the function for some x is an element of{0, 1}(n). The function is the truth-table function assigning to a circuit the table of the function it computes and the hypothesis is that every language in P has circuits of a fixed polynomial size n(d).