liquidity = Math.min(amount0.mul(_totalSupply) / _reserve0, amount1.mul(_totalSupply) / _reserve1);
这个为什么要取最小值
amount0 101 reserve0 1000
amount0 20 reserve0 200
total 200000
101 200000 / 1000 = 20200 20 200000 / 200 = 20000
当取 数字更大的时,会导致 用户凭空多获得了 代币。 取其中较小的数字,是保护 pool 和其他人的的利益.