Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Proof of Propositions 1 and 2, Online Appendix p. 1 — f has a unique zero a₁ ≈ 0.5689 on (0, T₁), with f < 0 before it and f > 0 after it

Proved
CourierDispatch.Exogenous.unique_root

by mikedeng1 · Oct 15, 2026 · Mathlib 0df444a (Lean v4.33.1)

on-demand-deliveryp2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1single-crossingthreshold

Let CB∈[0.58,0.59]C_B\in[0.58,0.59]CB​∈[0.58,0.59] and let fAf_AfA​ be the bracket of (A.1),

fA(a)=a2CD2T1(T1−a)−12−a2CBT2(T2−a)−a3,T1=34, T2=45π2(32+15π), CD=98.f_A(a)=\frac{a^2C_D}{2T_1(T_1-a)}-\frac12-\frac{a^2C_B}{T_2(T_2-a)}-\frac a3,\qquad T_1=\tfrac34,\ T_2=\tfrac{45\pi}{2(32+15\pi)},\ C_D=\tfrac98 .fA​(a)=2T1​(T1​−a)a2CD​​−21​−T2​(T2​−a)a2CB​​−3a​,T1​=43​, T2​=2(32+15π)45π​, CD​=89​.

Then there is a1a_1a1​ with

0.56<a1<0.58,fA(a1)=0,0.56<a_1<0.58,\qquad f_A(a_1)=0,0.56<a1​<0.58,fA​(a1​)=0,

such that fA(a)<0f_A(a)<0fA​(a)<0 for 0<a<a10<a<a_10<a<a1​ and fA(a)>0f_A(a)>0fA​(a)>0 for a1<a<T1a_1<a<T_1a1​<a<T1​. In particular a1a_1a1​ is the unique zero of fAf_AfA​ on (0,T1)(0,T_1)(0,T1​).

This is the single-crossing fact behind both threshold propositions: dedicated delivery has the shorter wait exactly when λr<a1\lambda r<a_1λr<a1​.

Formalization Note The paper states a1≈0.5689a_1\approx 0.5689a1​≈0.5689 for C2=0.583C_2=0.583C2​=0.583; the bounds 0.56<a1<0.580.56<a_1<0.580.56<a1​<0.58 record that approximation and hold over the whole bracket. The paper's second positive root a2≈1.150a_2\approx 1.150a2​≈1.150 lies beyond both stability bounds T1T_1T1​ and T2T_2T2​ and is not stated.

Preamble
import Mathlib
import Definitions.Def_CourierDispatch_Exogenous_Setting
Formal statement
namespace CourierDispatch.Exogenous

/-- Proof of Propositions 1 and 2, Online Appendix p. 1: on `(0, T₁) = (0, 3/4)` the bracket of (A.1)
has exactly one zero `a₁ ≈ 0.5689`, negative before it and positive after it. -/
theorem unique_root (CB : ℝ) (hCB : CBRange CB) :
    ∃ a₁ : ℝ, 0 < a₁ ∧ a₁ < TD ∧ 56 / 100 < a₁ ∧ a₁ < 58 / 100 ∧ fA CB a₁ = 0 ∧
      (∀ a : ℝ, 0 < a → a < a₁ → fA CB a < 0) ∧
      (∀ a : ℝ, a₁ < a → a < TD → 0 < fA CB a) := by sorry

end CourierDispatch.Exogenous
Source
Chen, Hu, Courier Dispatch in On-Demand Delivery, SSRN 3675063 (version of 2022-09-21), Online Appendix p. 1, proof of Propositions 1 and 2, after (A.2)
Human review
  • Endorsed by Shuze Chen · Oct 16, 2026

    Confirmed by the moderator at approval.

  • Endorsed by mikedeng1 · Oct 16, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me