Documentation

AMMLib.Transaction.Redeem

structure Redeem (s : Γ) (a : A) (t0 t1 : T) (v : ℝ>0) :
Instances For
    theorem Redeem.nodrain_toNNReal {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (d : Redeem s a t0 t1 v) :
    v < s.mints.supply t0 t1
    noncomputable def Redeem.gain0 {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (d : Redeem s a t0 t1 v) :
    Equations
    Instances For
      theorem Redeem.gain0_lt_r0 {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (r : Redeem s a t0 t1 v) :
      r.gain0 < s.amms.r0 t0 t1
      noncomputable def Redeem.gain1 {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (d : Redeem s a t0 t1 v) :
      Equations
      Instances For
        theorem Redeem.gain1_lt_r1 {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (r : Redeem s a t0 t1 v) :
        r.gain1 < s.amms.r1 t0 t1
        noncomputable def Redeem.apply {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (r : Redeem s a t0 t1 v) :
        Equations
        Instances For
          @[simp]
          theorem Redeem.atoms {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (r : Redeem s a t0 t1 v) :
          r.apply.atoms = (s.atoms.add a t0 r.gain0).add a t1 r.gain1
          @[simp]
          theorem Redeem.mints {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (r : Redeem s a t0 t1 v) :
          r.apply.mints = s.mints.sub a t0 t1 v
          @[simp]
          theorem Redeem.amms {s : Γ} {t0 t1 : T} {a : A} {v : ℝ>0} (r : Redeem s a t0 t1 v) :
          r.apply.amms = (s.amms.sub_r0 t0 t1 r.gain0 ).sub_r1 t0 t1 r.gain1