Futzing around thinking of distribution trees. class UniformValue: min: float max: float UniformValue(1, 2) + UniformValue(0, 4) Now we're back in probability again. If we use uniform distributions, then summing them will sum their range, but the output won't be uniform any more ... it'll be uh ... (websearches ..) an Irwin-Hall distribution? regardless it's a function that can be looked up. So say we have an Irwin-Hall distribution from 0 to 6 with specific PDF and CDF. And suddenly we know that its value is 3. UniformValue(1, 2) + UniformValue(0, 4) == 3 I don't know probability, but there must be some way to give new distributions here. Basically the two values completely depend on each other. I guess it simplifies to: UniformValue(1,2) + Dependent_Value == 3 . Is this a ridiculous avenue? Or is this easily generalisable?