This post nails it.
I'm convinced Stardock did not intend for the behavior it has now. Reading through Draginol's tutorial, the documentation: none of them state the truth explicitly, which is that even with infinite money you cannot have your labs and your factories producing at full capacity at the same time. This is stated nowhere in any official documentation I could find---most of it is preoccupied with explaining that buildings are fueled by money and won't produce otherwise. Some wiki's get it, but they assume it's a feature. I don't think it is: I think it's an ascended bug.
If you look at the sliders and play around a bit you can suss out the mathematical relationships embodied; somewhere deep in galciv2's code there's something like this:
0< military_slider_value <100
0< social_slider_value <100
0< labs_slider_value <100
military_slider_value+social_slider_value+labs_slider_value (must = ) 100 //(this would be appropriate if the resources controlled by the slider were fungible. They're not; while it's true that a BC is a BC is a BC, the slider also controls building usage. And a lab is not the same thing as a factory.
0 < spending_slider_value < 100
military_allocation = military_slider_value * spending_slider_value * factory_capacity
social_allocation = military_slider_value * spending_slider_value * factory_capacity
research_allocation = research_slider_value * spending*slider_value * labs_capacity
It's a crying shame because now that I've typed it all out I'm realizing how easy this would be to fix.
Here's what it ought to be:
0< military_slider_value <100
0< social_slider_value <100
0< labs_slider_value <100
military_slider_value+social_slider_value (must <= ) 100 //Note the omission of labs_slider_value, and note also the change from = to <=
0 < spending_slider_value < 100
military_allocation = military_slider_value * spending_slider_value * factory_capacity
social_allocation = military_slider_value * spending_slider_value * factory_capacity
research_allocation = research_slider_value * spending*slider_value * labs_capacity
All that needs to be fixed is to decouple the labs slider from the social/mil sliders. The social/mil sliders should stay coupled.