Documentation

AMMLib.FeeVersion.Additivity

noncomputable def SX.fee.z (φ x y r0 : ℝ>0) :
Equations
Instances For
    noncomputable def SX.fee.z_extended (φ x y r0 r1 : ℝ>0) :
    Equations
    Instances For
      theorem SX.fee.z_toReal (φ x y r0 : ℝ>0) :
      (z φ x y r0) = (x + y) * (r0 + φ * x) * (r0 + x + φ * y) / ((r0 + φ * x + φ * y) * (x ^ 2 + r0 * x + φ * x * y + r0 * y))
      theorem SX.fee.z_eq_z_extended (φ x y r0 r1 : ℝ>0) :
      z φ x y r0 = z_extended φ x y r0 r1
      Equations
      Instances For
        theorem SX.fee.z_factor_gt_1 (φ : ℝ>0) {x y r0 : ℝ>0} ( : φ < 1) :
        z φ x y r0 > 1
        noncomputable def SX.fee.εφ (φ : ℝ>0) {sx : SX} {s : Γ} {a : A} {t0 t1 : T} {x₀ x₁ : ℝ>0} (sw0 : Swap sx s a t0 t1 x₀) (sw1 : Swap sx sw0.apply a t0 t1 x₁) ( : φ < 1) (o : Tℝ>0) (h_supply : s.mints.supply t0 t1 > 0) (h_mint : (s.mints.get a).get t0 t1 < s.mints.supply t0 t1) :
        Equations
        Instances For
          noncomputable def SX.fee.εφ_toReal (φ : ℝ>0) {sx : SX} {s : Γ} {a : A} {t0 t1 : T} {x₀ x₁ r0 r1 α : ℝ>0} (sw0 : Swap sx s a t0 t1 x₀) (sw1 : Swap sx sw0.apply a t0 t1 x₁) ( : φ < 1) (hr0 : r0 = s.amms.r0 t0 t1 ) (hr1 : r1 = s.amms.r1 t0 t1 ) ( : α = sx x₀ r0 r1) (o : Tℝ>0) (h_supply : s.mints.supply t0 t1 > 0) (h_mint : (s.mints.get a).get t0 t1 < s.mints.supply t0 t1) :
          (εφ φ sw0 sw1 o h_supply h_mint) = (o t1) * ((z φ x₀ x₁ r0) - 1) * (x₀ * α + sw1.y) * (Swap.fee.frac_gain_Rpos s h_supply h_mint)
          Equations
          • =
          Instances For
            theorem sub_eq_iff_add_eq (a b c : ) (h : a - b = c) :
            a = b + c
            theorem SX.fee.additive_gain (φ : ℝ>0) {sx : SX} {s : Γ} {a : A} {t0 t1 : T} {x₀ x₁ : ℝ>0} (sw0 : Swap sx s a t0 t1 x₀) (sw1 : Swap sx sw0.apply a t0 t1 x₁) (sw2 : Swap sx s a t0 t1 (x₀ + x₁)) (addi : extended_additivity φ sx) (out_b : sx.outputbound) (h_supply : s.mints.supply t0 t1 > 0) (h_mint : (s.mints.get a).get t0 t1 < s.mints.supply t0 t1) ( : φ < 1) (o : Tℝ>0) :
            a.gain o s sw2.apply = a.gain o s sw0.apply + a.gain o sw0.apply sw1.apply + (εφ φ sw0 sw1 o h_supply h_mint)